diff options
author | Blue Swirl <blauwirbel@gmail.com> | 2011-11-02 20:52:13 +0000 |
---|---|---|
committer | Blue Swirl <blauwirbel@gmail.com> | 2011-11-02 20:52:13 +0000 |
commit | c51d9cb5b6e2fde9878d2be23dab389c2882de93 (patch) | |
tree | 89b09e63d1ec58b134c31b1e4e9be5dc8dca572a /dyngen-exec.h | |
parent | 42dfb09510fa8725bc75b48a4825eaf66b21958a (diff) | |
parent | 9195b2c2b1b00799b68f6d68a73e547d1274eb03 (diff) | |
download | qemu-c51d9cb5b6e2fde9878d2be23dab389c2882de93.zip qemu-c51d9cb5b6e2fde9878d2be23dab389c2882de93.tar.gz qemu-c51d9cb5b6e2fde9878d2be23dab389c2882de93.tar.bz2 |
Merge branch 'tci' of git://qemu.weilnetz.de/qemu
* 'tci' of git://qemu.weilnetz.de/qemu:
tcg: Add tcg interpreter to configure / make
tcg: Add tci disassembler
tcg: Add interpreter for bytecode
tcg: Add bytecode generator for tcg interpreter
tcg: Make ARRAY_SIZE(tcg_op_defs) globally available
tcg: TCG targets may define tcg_qemu_tb_exec
Diffstat (limited to 'dyngen-exec.h')
-rw-r--r-- | dyngen-exec.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/dyngen-exec.h b/dyngen-exec.h index fbde29e..3544372 100644 --- a/dyngen-exec.h +++ b/dyngen-exec.h @@ -19,7 +19,12 @@ #if !defined(__DYNGEN_EXEC_H__) #define __DYNGEN_EXEC_H__ -#if defined(__i386__) +#if defined(CONFIG_TCG_INTERPRETER) +/* The TCG interpreter does not need a special register AREG0, + * but it is possible to use one by defining AREG0. + * On i386, register edi seems to work. */ +/* Run without special register AREG0 or use a value defined elsewhere. */ +#elif defined(__i386__) #define AREG0 "ebp" #elif defined(__x86_64__) #define AREG0 "r14" @@ -55,6 +60,11 @@ #error unsupported CPU #endif +#if defined(AREG0) register CPUState *env asm(AREG0); +#else +/* TODO: Try env = cpu_single_env. */ +extern CPUState *env; +#endif #endif /* !defined(__DYNGEN_EXEC_H__) */ |