[Bug translator/19500] .callee test failures
dsmith at redhat dot com
sourceware-bugzilla@sourceware.org
Fri Feb 19 19:44:00 GMT 2016
https://sourceware.org/bugzilla/show_bug.cgi?id=19500
--- Comment #1 from David Smith <dsmith at redhat dot com> ---
This appears to be the result of s390x's odd debuginfo. On x86_64, you'll see
something like this (from 'eu-readelf --debug-dump libreloc.so'):
====
...
[ 2d] subprogram
external (flag_present) Yes
name (string) "bar"
...
[ 79] subprogram
external (flag_present) Yes
name (string) "foo"
...
GNU_all_call_sites (flag_present) Yes
...
[ bb] GNU_call_site
low_pc (addr) +0x00000000000006e2 <foo+0x12>
abstract_origin (ref4) [ 2d]
...
====
This means that foo() has one callee, bar(), which we can see since foo() has 1
GNU_call_site attribute, whose abstract_origin is 2d (which maps to bar()).
On s390x, we see the following (from 'eu-readelf --debug-dump libreloc.so'):
====
...
[ 2d] subprogram
external (flag_present) Yes
name (string) "bar"
...
[ 7b] subprogram
external (flag_present) Yes
name (string) "foo"
...
GNU_all_call_sites (flag_present) Yes
[ bd] GNU_call_site
low_pc (addr) +0x000000000000073a <foo+0x22>
...
====
On s390x, we've got a GNU_call_site attribute, but it doesn't have an
abstract_origin attribute to tell us which function was called.
I've sent an email to a gcc developer and we'll see if he can shine any light
on this.
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the Systemtap
mailing list