summaryrefslogtreecommitdiffstats
path: root/tcg/i386/tcg-target.c
diff options
context:
space:
mode:
authorRichard Henderson2013-08-27 19:22:54 +0200
committerRichard Henderson2013-09-02 18:08:30 +0200
commit0f842f8a246f2b5b51a11c13f933bf7a90ae8e96 (patch)
tree2dd695c689fb49d15fe28f2792fde11dba5be55e /tcg/i386/tcg-target.c
parentconfigure: Allow x32 as a host (diff)
downloadqemu-0f842f8a246f2b5b51a11c13f933bf7a90ae8e96.tar.gz
qemu-0f842f8a246f2b5b51a11c13f933bf7a90ae8e96.tar.xz
qemu-0f842f8a246f2b5b51a11c13f933bf7a90ae8e96.zip
exec: Reorganize the GETRA/GETPC macros
Always define GETRA; use __builtin_extract_return_addr, rather than having a special case for s390. Split GETPC_ADJ out of GETPC; use 2 universally, rather than having a special case for arm. Rename GETPC_LDST to GETRA_LDST to indicate that it does not contain the GETPC_ADJ value. Likewise with GETPC_EXT to GETRA_EXT. Perform the GETPC_ADJ adjustment inside helper_ret_ld/st. This will allow backends to pass along the "true" return address rather than the massaged GETPC value. In the meantime, double application of GETPC_ADJ does not hurt, since the call insn in all ISAs is at least 4 bytes long. Reviewed-by: Aurelien Jarno <aurelien@aurel32.net> Signed-off-by: Richard Henderson <rth@twiddle.net>
Diffstat (limited to 'tcg/i386/tcg-target.c')
0 files changed, 0 insertions, 0 deletions