This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
[Bug translator/2438] Can't resolve $fd argument for sys_readv and sys_writev on ppc64
- From: "guij at cn dot ibm dot com" <sourceware-bugzilla at sourceware dot org>
- To: systemtap at sources dot redhat dot com
- Date: 9 May 2006 01:48:40 -0000
- Subject: [Bug translator/2438] Can't resolve $fd argument for sys_readv and sys_writev on ppc64
- References: <20060309040316.2438.hien@us.ibm.com>
- Reply-to: sourceware-bugzilla at sourceware dot org
------- Additional Comments From guij at cn dot ibm dot com 2006-05-09 01:48 -------
(In reply to comment #4)
> (In reply to comment #3)
> > It seems such case cannot be avoided completely. In powerpc, first
> > arguments are always passed in registers, and there's no reason
> > for the compiler to refuse to put a modification instruction at the
> > probe address.
> You mean, there is no need to look for a prologue end? Yes, we would
> prefer not to, but that requires correct location list information from
> the compiler to cover the function.
>
No, I don't mean there is no need to look for a prologue end. I just want
to say the first instruction (X) after the prologue may probably modify
the argument register, thus the location list entry will be inavailable.
Since our prehandler is executed before (X), thus we can use its preceding
one (X-4) to ask for the location list entry.
In the code of sys_readv, I think 0xc0000000000b3f50 is (X-4) the prologue end
and 0xc0000000000b3f54 is (pc) the first instruction after the prologue as
follow. Sorry if I am wrong with something.
c0000000000b3f44 <.sys_readv>:
c0000000000b3f44: 7c 08 02 a6 mflr r0
c0000000000b3f48: fb 81 ff e0 std r28,-32(r1)
c0000000000b3f4c: fb a1 ff e8 std r29,-24(r1)
c0000000000b3f50: 7c 9c 23 78 mr r28,r4
c0000000000b3f54: 78 63 00 20 clrldi r3,r3,32
c0000000000b3f58: 7c bd 2b 78 mr r29,r5
...
--
http://sourceware.org/bugzilla/show_bug.cgi?id=2438
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.