This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] When using -fprofile-generate=/some/path mangle absolute path of file (PR lto/85759).


PING^1

On 05/16/2018 01:53 PM, Martin Liška wrote:
> On 12/21/2017 10:13 AM, Martin Liška wrote:
>> On 12/20/2017 06:45 PM, Jakub Jelinek wrote:
>>> Another thing is that the "/" in there is wrong, so
>>>   const char dir_separator_str[] = { DIR_SEPARATOR, '\0' };
>>>   char *b = concat (profile_data_prefix, dir_separator_str, pwd, NULL);
>>> needs to be used instead.
>>
>> This looks much nicer, I forgot about DIR_SEPARATOR.
>>
>>> Does profile_data_prefix have any dir separators stripped from the end?
>>
>> That's easy to achieve..
>>
>>> Is pwd guaranteed to be relative in this case?
>>
>> .. however this is absolute path, which would be problematic on a DOC based FS.
>> Maybe we should do the same path mangling as we do for purpose of gcov:
>>
>> https://github.com/gcc-mirror/gcc/blob/master/gcc/gcov.c#L2424
> 
> Hi.
> 
> I decided to implement that. Which means for:
> 
> $ gcc -fprofile-generate=/tmp/myfolder empty.c -O2 && ./a.out 
> 
> we get following file:
> /tmp/myfolder/#home#marxin#Programming#testcases#tmp#empty.gcda
> 
> That guarantees we have a unique file path. As seen in the PR it
> can produce a funny ICE.
> 
> I've been testing the patch.
> Ready after it finishes tests?
> 
> Martin
> 
>>
>> What do you think about it?
>> Regarding the string manipulation: I'm not an expert, but work with string in C
>> is for me always a pain :)
>>
>> Martin
>>
> 


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]