summaryrefslogtreecommitdiff
path: root/cputlb.c
diff options
context:
space:
mode:
authorRichard Henderson <rth@twiddle.net>2016-07-26 06:09:16 +0530
committerRichard Henderson <rth@twiddle.net>2016-09-16 08:12:11 -0700
commit01ecaf438b1eb46abe23392c8ce5b7628b0c8cf5 (patch)
tree8d5d6d640cb0994345a508213f716b08708b171e /cputlb.c
parent85aa80813dd9f5c1f581c743e45678a3bee220f8 (diff)
downloadqemu-01ecaf438b1eb46abe23392c8ce5b7628b0c8cf5.tar.gz
tcg: Merge GETPC and GETRA
The return address argument to the softmmu template helpers was confused. In the legacy case, we wanted to indicate that there is no return address, and so passed in NULL. However, we then immediately subtracted GETPC_ADJ from NULL, resulting in a non-zero value, indicating the presence of an (invalid) return address. Push the GETPC_ADJ subtraction down to the only point it's required: immediately before use within cpu_restore_state_from_tb, after all NULL pointer checks have been completed. This makes GETPC and GETRA identical. Remove GETRA as the lesser used macro, replacing all uses with GETPC. Signed-off-by: Richard Henderson <rth@twiddle.net>
Diffstat (limited to 'cputlb.c')
-rw-r--r--cputlb.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/cputlb.c b/cputlb.c
index d068ee597e..3c99c34ac8 100644
--- a/cputlb.c
+++ b/cputlb.c
@@ -543,10 +543,8 @@ static bool victim_tlb_hit(CPUArchState *env, size_t mmu_idx, size_t index,
#undef MMUSUFFIX
#define MMUSUFFIX _cmmu
-#undef GETPC_ADJ
-#define GETPC_ADJ 0
-#undef GETRA
-#define GETRA() ((uintptr_t)0)
+#undef GETPC
+#define GETPC() ((uintptr_t)0)
#define SOFTMMU_CODE_ACCESS
#define SHIFT 0