]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Handle new pseudo-register IP_AT_SYSCALL when origin-tracking is
authorJulian Seward <jseward@acm.org>
Mon, 30 Mar 2009 02:27:29 +0000 (02:27 +0000)
committerJulian Seward <jseward@acm.org>
Mon, 30 Mar 2009 02:27:29 +0000 (02:27 +0000)
enabled.  Fixes #188161.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9497

memcheck/mc_machine.c

index bb45c0a4fd445a80eb478d02ec67c4e3f6a40b00..4072b8ada00dd85bbb23451aee5ba949854c0ee1 100644 (file)
@@ -181,7 +181,7 @@ static Int get_otrack_shadow_offset_wrk ( Int offset, Int szB )
    if (o == GOF(CTR) && sz == 8) return o;
 
    if (o == GOF(CIA)       && sz == 8) return -1;
-   if (o == GOF(IP_AT_SYSCALL) && sz == 8) return -1;
+   if (o == GOF(IP_AT_SYSCALL) && sz == 8) return -1; /* slot unused */
    if (o == GOF(RESVN)     && sz == 8) return -1;
    if (o == GOF(FPROUND)   && sz == 4) return -1;
    if (o == GOF(EMWARN)    && sz == 4) return -1;
@@ -340,7 +340,7 @@ static Int get_otrack_shadow_offset_wrk ( Int offset, Int szB )
    if (o == GOF(CTR) && sz == 4) return o;
 
    if (o == GOF(CIA)       && sz == 4) return -1;
-   if (o == GOF(IP_AT_SYSCALL) && sz == 4) return -1;
+   if (o == GOF(IP_AT_SYSCALL) && sz == 4) return -1; /* slot unused */
    if (o == GOF(RESVN)     && sz == 4) return -1;
    if (o == GOF(FPROUND)   && sz == 4) return -1;
    if (o == GOF(VRSAVE)    && sz == 4) return -1;
@@ -488,6 +488,7 @@ static Int get_otrack_shadow_offset_wrk ( Int offset, Int szB )
    if (o == GOF(CC_NDEP) && sz == 8) return -1; /* slot used for %BH */
    if (o == GOF(DFLAG)   && sz == 8) return -1; /* slot used for %CH */
    if (o == GOF(RIP)     && sz == 8) return -1; /* slot unused */
+   if (o == GOF(IP_AT_SYSCALL) && sz == 8) return -1; /* slot unused */
    if (o == GOF(IDFLAG)  && sz == 8) return -1; /* slot used for %DH */
    if (o == GOF(FS_ZERO) && sz == 8) return -1; /* slot unused */
    if (o == GOF(TISTART) && sz == 8) return -1; /* slot unused */
@@ -598,6 +599,7 @@ static Int get_otrack_shadow_offset_wrk ( Int offset, Int szB )
    if (o == GOF(CC_NDEP) && sz == 4) return -1; /* slot used for %BH */
    if (o == GOF(DFLAG)   && sz == 4) return -1; /* slot used for %CH */
    if (o == GOF(EIP)     && sz == 4) return -1; /* slot unused */
+   if (o == GOF(IP_AT_SYSCALL) && sz == 4) return -1; /* slot unused */
    if (o == GOF(IDFLAG)  && sz == 4) return -1; /* slot used for %DH */
    if (o == GOF(ACFLAG)  && sz == 4) return -1; /* slot unused */
    if (o == GOF(TISTART) && sz == 4) return -1; /* slot unused */