diff options
Diffstat (limited to 'exec-all.h')
-rw-r--r-- | exec-all.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/exec-all.h b/exec-all.h index 898fe2d862..94ed613e37 100644 --- a/exec-all.h +++ b/exec-all.h @@ -335,6 +335,9 @@ extern uintptr_t tci_tb_ptr; # define GETRA() ((uintptr_t)__builtin_return_address(0)) # define GETPC_LDST() ((uintptr_t)(GETRA() + 7 + \ *(int32_t *)((void *)GETRA() + 3) - 1)) +# elif defined (_ARCH_PPC) && !defined (_ARCH_PPC64) +# define GETRA() ((uintptr_t)__builtin_return_address(0)) +# define GETPC_LDST() ((uintptr_t) ((*(int32_t *)(GETRA() + 4)) - 1)) # else # error "CONFIG_QEMU_LDST_OPTIMIZATION needs GETPC_LDST() implementation!" # endif |