summaryrefslogtreecommitdiff
path: root/tcg/ppc64
diff options
context:
space:
mode:
authorRichard Henderson <rth@twiddle.net>2014-03-25 08:57:23 -0700
committerRichard Henderson <rth@twiddle.net>2014-06-23 07:31:43 -0700
commita2a98f807b0cb8c9688df449ec6a3a98f3b0b9e9 (patch)
tree99478be8d82ca033d3c7870142d4e0be6f1664f9 /tcg/ppc64
parenteaf7d1cfe0eae800f35234a8a96367bfd8e54d61 (diff)
downloadqemu-a2a98f807b0cb8c9688df449ec6a3a98f3b0b9e9.tar.gz
qemu-a2a98f807b0cb8c9688df449ec6a3a98f3b0b9e9.tar.bz2
qemu-a2a98f807b0cb8c9688df449ec6a3a98f3b0b9e9.zip
tcg-ppc64: Support the ppc64 elfv2 ABI
Tested-by: Tom Musta <tommusta@gmail.com> Signed-off-by: Richard Henderson <rth@twiddle.net>
Diffstat (limited to 'tcg/ppc64')
-rw-r--r--tcg/ppc64/tcg-target.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/tcg/ppc64/tcg-target.c b/tcg/ppc64/tcg-target.c
index 31c3a7aad1..d3cc237b36 100644
--- a/tcg/ppc64/tcg-target.c
+++ b/tcg/ppc64/tcg-target.c
@@ -1414,6 +1414,10 @@ static void tcg_out_qemu_st(TCGContext *s, TCGReg data_reg, TCGReg addr_reg,
# define LINK_AREA_SIZE (6 * SZR)
# define LR_OFFSET (1 * SZR)
# define TCG_TARGET_CALL_STACK_OFFSET (LINK_AREA_SIZE + 8 * SZR)
+#elif defined(_CALL_ELF) && _CALL_ELF == 2
+# define LINK_AREA_SIZE (4 * SZR)
+# define LR_OFFSET (1 * SZR)
+# define TCG_TARGET_CALL_STACK_OFFSET LINK_AREA_SIZE
#else
# error
#endif