PERFORCE change 152342 for review

Peter Wemm peter at FreeBSD.org
Sat Nov 1 19:41:35 PDT 2008


http://perforce.freebsd.org/chv.cgi?CH=152342

Change 152342 by peter at peter_overcee on 2008/11/02 02:41:09

	Oops.  In the error case, return sres.err, not sres.res in %EAX/RAX.
	(Fallout from the AIX port restructuring changes)

Affected files ...

.. //depot/projects/valgrind/coregrind/m_syswrap/syswrap-main.c#11 edit

Differences ...

==== //depot/projects/valgrind/coregrind/m_syswrap/syswrap-main.c#11 (text+ko) ====

@@ -647,22 +647,24 @@
 #elif defined(VGP_x86_freebsd)
    VexGuestX86State* gst = (VexGuestX86State*)gst_vanilla;
    vg_assert(canonical->what == SsComplete);
-   gst->guest_EAX = canonical->sres.res;
-   gst->guest_EDX = canonical->sres.res2;
    if (canonical->sres.isError) {
+      gst->guest_EAX = canonical->sres.err;
       LibVEX_GuestX86_put_eflag_c( 1, gst );
    } else {
+      gst->guest_EAX = canonical->sres.res;
+      gst->guest_EDX = canonical->sres.res2;
       LibVEX_GuestX86_put_eflag_c( 0, gst );
    }
 
 #elif defined(VGP_amd64_freebsd)
    VexGuestAMD64State* gst = (VexGuestAMD64State*)gst_vanilla;
    vg_assert(canonical->what == SsComplete);
-   gst->guest_RAX = canonical->sres.res;
-   gst->guest_RDX = canonical->sres.res2;
    if (canonical->sres.isError) {
+      gst->guest_RAX = canonical->sres.err;
       LibVEX_GuestAMD64_put_rflag_c( 1, gst );
    } else {
+      gst->guest_RAX = canonical->sres.res;
+      gst->guest_RDX = canonical->sres.res2;
       LibVEX_GuestAMD64_put_rflag_c( 0, gst );
    }
 


More information about the p4-projects mailing list