diff mbox

[PULL,1/1] exec-all: Translate TCI return addresses backwards too

Message ID 1440616081-26707-2-git-send-email-sw@weilnetz.de
State Accepted
Headers show

Commit Message

Stefan Weil Aug. 26, 2015, 7:08 p.m. UTC
From: Peter Crosthwaite <crosthwaitepeter@gmail.com>

This subtraction of return addresses applies directly to TCI as well as
host-TCG. This fixes Linux boots for at least Microblaze, CRIS, ARM and
SH4 when using TCI.

[sw: Removed indentation for preprocessor statement]
[sw: The patch also fixes Linux boot for x86_64]

Reviewed-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Stefan Weil <sw@weilnetz.de>
Signed-off-by: Peter Crosthwaite <crosthwaite.peter@gmail.com>
---
 include/exec/exec-all.h | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)
diff mbox

Patch

diff --git a/include/exec/exec-all.h b/include/exec/exec-all.h
index fbc6dcb..83b9251 100644
--- a/include/exec/exec-all.h
+++ b/include/exec/exec-all.h
@@ -357,11 +357,7 @@  extern uintptr_t tci_tb_ptr;
    to indicate the compressed mode; subtracting two works around that.  It
    is also the case that there are no host isas that contain a call insn
    smaller than 4 bytes, so we don't worry about special-casing this.  */
-#if defined(CONFIG_TCG_INTERPRETER)
-# define GETPC_ADJ   0
-#else
-# define GETPC_ADJ   2
-#endif
+#define GETPC_ADJ   2
 
 #define GETPC()  (GETRA() - GETPC_ADJ)