Hi Wolff,
Thanks so much for your testing. I also wish this feature could be
upstreamed.
I will send a v4 series soon. In v4, It removes the options
"--inline-line" and "--inline-name".
It just uses a new option "--inline" to print the inline function
information. The policy is if the inline function name can be resolved
then print the function name otherwise it prints the source line number.
For example:
perf report --stdio --inline
It prints:
0.69% 0.00% inline ld-2.23.so [.] dl_main
|
---dl_main
|
--0.56%--_dl_relocate_object
|
---_dl_relocate_object (inline)
elf_dynamic_do_Rela (inline)
Thanks
Jin Yao
On 3/3/2017 5:42 AM, Milian Wolff wrote:
On Dienstag, 21. Februar 2017 01:28:17 CET Jin, Yao wrote:
Hi,
Any comments for this patch series?
Sorry for the delay. I just tested it again.
Overall, this is a clear improvement, so I'm all for getting this
functionality in.
But from a usability point of view, I still have the some of the issues that I
have raised in the past:
a) --inline should be a boolean setting that enables inline resolution on
demand
b) the other callgraph settings and formatting should be used for inlined
frames, i.e.
- instead of `perf report --inline-name`
it should be: `perf report --inline -g function`
and since `-g function` is the default, it would be the same as:
`perf report --inline`
- instead of `perf report --inline-line -g address`
it should be: `perf report --inline -g address`
Again: As a user of `perf report`, I do not care whether a frame is an inlined
one or a non-inlined one - both should be grouped and displayed the same way.
I.e. this is unusable (imo):
~~~~~~~~~~~~~~~~~~~~~~~~~
perf report --inline-line --stdio
99.81% 35.99% cpp-inlining cpp-inlining [.] main
|
|--63.82%--main
|
---/home/milian/projects/kdab/rnd/hotspot/tests/test-
clients/cpp-inlining/main.cpp:39 (inline)
/usr/include/c++/6.3.1/complex:664 (inline)
| |
| |--63.19%--hypot
| | |
| | --58.04%--__hypot_finite
| |
| --0.62%--cabs
~~~~~~~~~~~~~~~~~~~~~~~~~
Dito for this:
~~~~~~~~~~~~~~~~~~~~~~~~~
perf report --stdio --inline-name -g address --stdio
99.81% 35.99% cpp-inlining cpp-inlining [.] main
|
|--63.82%--main complex:655
|
---main (inline)
std::norm<double> (inline)
~~~~~~~~~~~~~~~~~~~~~~~~~
But, again, even with these gripes, I think it's a very useful feature and I
would like to see it integrated upstream. From my POV, you can add
Tested-by: Milian Wolff <milian.wo...@kdab.com>
to all patches in this series.
Many thanks!