valgrind.h: add "r0" to the clobber list on PPC

Looks like the magic sequences trash this register, so make sure GCC
knows that.

https://bugzilla.gnome.org/show_bug.cgi?id=710983
This commit is contained in:
Ryan Lortie 2013-11-20 16:57:26 -05:00
parent 2731b01c73
commit 6c8600b2b8

View File

@ -442,7 +442,7 @@ typedef
"mr %0,3" /*result*/ \
: "=b" (_zzq_result) \
: "b" (_zzq_default), "b" (_zzq_ptr) \
: "cc", "memory", "r3", "r4"); \
: "cc", "memory", "r3", "r4", "r0"); \
_zzq_result; \
})
@ -455,7 +455,7 @@ typedef
"mr %0,3" \
: "=b" (__addr) \
: \
: "cc", "memory", "r3" \
: "cc", "memory", "r3", "r0" \
); \
_zzq_orig->nraddr = __addr; \
}
@ -504,7 +504,7 @@ typedef
"mr %0,3" /*result*/ \
: "=b" (_zzq_result) \
: "b" (_zzq_default), "b" (_zzq_ptr) \
: "cc", "memory", "r3", "r4"); \
: "cc", "memory", "r3", "r4", "r0"); \
_zzq_result; \
})
@ -517,7 +517,7 @@ typedef
"mr %0,3" \
: "=b" (__addr) \
: \
: "cc", "memory", "r3" \
: "cc", "memory", "r3", "r0" \
); \
_zzq_orig->nraddr = __addr; \
__asm__ volatile(__SPECIAL_INSTRUCTION_PREAMBLE \
@ -526,7 +526,7 @@ typedef
"mr %0,3" \
: "=b" (__addr) \
: \
: "cc", "memory", "r3" \
: "cc", "memory", "r3", "r0" \
); \
_zzq_orig->r2 = __addr; \
}