This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
[Bug translator/12138] sdt_misc.exp fails most ptr types on i686
- From: "jistone at redhat dot com" <sourceware-bugzilla at sourceware dot org>
- To: systemtap at sources dot redhat dot com
- Date: Wed, 20 Oct 2010 01:32:12 +0000
- Subject: [Bug translator/12138] sdt_misc.exp fails most ptr types on i686
- Auto-submitted: auto-generated
- References: <bug-12138-1110@http.sourceware.org/bugzilla/>
http://sourceware.org/bugzilla/show_bug.cgi?id=12138
--- Comment #3 from Josh Stone <jistone at redhat dot com> 2010-10-20 01:32:09 UTC ---
(In reply to comment #1)
> The test isn't very helpful about diagnostics, but I'll pick the first FAIL:
>
> From sdt_types.c:
> char *ptr_char_var = &char_var;
> STAP_PROBE2(provider,ptr_char_var,ptr_char_var,&char_var);
Roland helped me figure out that .note.stapsdt gets:
.asciz "ptr_char_var"
.asciz "4@124(%esp) 4@%eax"
> printf("%p %p\n", $arg1, $arg2)
The translator does:
$arg1: user_int((%{ /* unprivileged */ /* pure */u_fetch_register(4) %}) +
(124))
$arg2: %{ /* unprivileged */ /* pure */u_fetch_register(0) %}
So the trip through user_int() extends the sign. We could add user_uint(), if
there's enough info for the SDT-translator to know it should be unsigned. I
think that's indicated by "4@..." instead of "-4@..."?
--
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.