]> Git Repo - qemu.git/blobdiff - dyngen-exec.h
target-arm: Infer ARMv6 feature from v6K
[qemu.git] / dyngen-exec.h
index fbde29ea014edc990c308c6ee615ac7f9726b9e5..3544372a65a408e117ccd55a4fcf42c57a8a36b1 100644 (file)
 #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"
 #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__) */
This page took 0.023053 seconds and 4 git commands to generate.