[LNT] r263560 - [profile] Add perf and cPerf, for importing Linux Perf profiles
James Molloy via llvm-commits
llvm-commits at lists.llvm.org
Thu May 5 03:51:44 PDT 2016
Thanks Chris!
> On 29 Apr 2016, at 23:23, Chris Matthews via llvm-commits <llvm-commits at lists.llvm.org> wrote:
>
> and r268123 to fix it on my other machine!
>
>> On Apr 29, 2016, at 2:58 PM, Chris Matthews <chris.matthews at apple.com> wrote:
>>
>> I fixed this with r268118. Overriding the (bad) default compiler choice did the trick.
>>
>>
>>> On Apr 7, 2016, at 11:58 PM, Kristof Beyls via llvm-commits <llvm-commits at lists.llvm.org> wrote:
>>>
>>> I'm just guessing, but I think it's strange that the python setup invoked gcc rather than clang on OSX.
>>> The module seems to be written in c++11, so you'd need a recent version of gcc to compile it, and I'm not sure if that's available on OSX?
>>>
>>>> On 7 Apr 2016, at 21:05, Chris Matthews <chris.matthews at apple.com> wrote:
>>>>
>>>> James, when I do a setup.py install on OSX, I get a compile error:
>>>>
>>>> building 'lnt.testing.profile.cPerf' extension
>>>> creating build/temp.macosx-10.5-x86_64-2.7
>>>> creating build/temp.macosx-10.5-x86_64-2.7/lnt
>>>> creating build/temp.macosx-10.5-x86_64-2.7/lnt/testing
>>>> creating build/temp.macosx-10.5-x86_64-2.7/lnt/testing/profile
>>>> gcc -fno-strict-aliasing -I/Users/pwb/anaconda/include -arch x86_64 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I/Users/pwb/anaconda/include/python2.7 -c lnt/testing/profile/cPerf.cpp -o build/temp.macosx-10.5-x86_64-2.7/lnt/testing/profile/cPerf.o -std=c++11
>>>> lnt/testing/profile/cPerf.cpp:133:14: error: no member named 'logic_error' in
>>>> namespace 'std'
>>>> throw std::logic_error(Str);
>>>> ~~~~~^
>>>> lnt/testing/profile/cPerf.cpp:302:13: error: no member named 'back' in
>>>> 'std::basic_string<char>'
>>>> if (S.back() == '\n')
>>>> ~ ^
>>>> lnt/testing/profile/cPerf.cpp:303:11: error: no member named 'pop_back' in
>>>> 'std::basic_string<char>'
>>>> S.pop_back();
>>>> ~ ^
>>>> lnt/testing/profile/cPerf.cpp:550:21: error: no member named 'prev' in namespace 'std'
>>>> auto MapID = std::prev(CurrentMaps.upper_bound(PC))->second;
>>>> ~~~~~^
>>>> lnt/testing/profile/cPerf.cpp:756:17: error: no type named 'logic_error' in namespace
>>>> 'std'
>>>> } catch (std::logic_error &E) {
>>>> ~~~~~^
>>>> lnt/testing/profile/cPerf.cpp:759:17: error: no type named 'runtime_error' in
>>>> namespace 'std'
>>>> } catch (std::runtime_error &E) {
>>>> ~~~~~^
>>>> warning: exception of type int & will be caught by earlier handler
>>>> note: for type int &
>>>> 1 warning and 6 errors generated.
>>>> error: command 'gcc' failed with exit status 1
>>>>
>>>>
>>>>> On Mar 16, 2016, at 10:39 AM, Kristof Beyls via llvm-commits <llvm-commits at lists.llvm.org> wrote:
>>>>>
>>>>>
>>>>>
>>>>> On 15/03/2016 17:52, "llvm-commits on behalf of James Molloy via
>>>>> llvm-commits" <llvm-commits-bounces at lists.llvm.org on behalf of
>>>>> llvm-commits at lists.llvm.org> wrote:
>>>>>
>>>>>> +//
>>>>>> +// for each mmap:
>>>>>> +// if the mmap's event total is < 1% of the total in all counters,
>>>>>> +// then discard the mmap.
>>>>>
>>>>> Even though it's explained in the commit message, I think this comment
>>>>> should explain why some samples are being discarded.
>>>>>
>>>>>
>>>>>>
>>>>>> +// The output of this module (cPerf.importPerf) is a dictionary in
>>>>>> (almost)
>>>>>> +// ProfileV1 form. The only difference is that all counters are absolute.
>>>>>
>>>>> I don't know what ProfileV1 is. Maybe there should be a pointer to what
>>>>> ProfileV1 is?
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> llvm-commits mailing list
>>>>> llvm-commits at lists.llvm.org
>>>>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>>>>
>>>
>>> _______________________________________________
>>> llvm-commits mailing list
>>> llvm-commits at lists.llvm.org
>>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
More information about the llvm-commits
mailing list