diff --git a/Makefile.target b/Makefile.target index bb1f3e53c2..23134f5d66 100644 --- a/Makefile.target +++ b/Makefile.target @@ -185,7 +185,7 @@ all: $(PROGS) # cpu emulator library LIBOBJS=exec.o kqemu.o translate-all.o cpu-exec.o\ translate.o host-utils.o -ifndef CONFIG_NO_DYNGEN_OP +ifdef CONFIG_DYNGEN_OP LIBOBJS+=op.o endif # TCG code generator @@ -287,7 +287,7 @@ endif # libqemu -ifndef CONFIG_NO_DYNGEN_OP +ifdef CONFIG_DYNGEN_OP OPC_H = gen-op.h dyngen-opc.h op.h endif diff --git a/configure b/configure index 34ffa10c5e..48e25666bf 100755 --- a/configure +++ b/configure @@ -1193,12 +1193,14 @@ echo "#define CONFIG_QEMU_PREFIX \"$interp_prefix1\"" >> $config_h case "$target_cpu" in i386) echo "TARGET_ARCH=i386" >> $config_mak + echo "CONFIG_DYNGEN_OP=yes" >> $config_mak echo "#define TARGET_ARCH \"i386\"" >> $config_h echo "#define TARGET_I386 1" >> $config_h if test $kqemu = "yes" -a "$target_softmmu" = "yes" -a $cpu = "i386" then echo "#define USE_KQEMU 1" >> $config_h fi + echo "#define CONFIG_DYNGEN_OP 1" >> $config_h gcc3minver=`$cc --version 2> /dev/null| fgrep "(GCC) 3." | awk '{ print $3 }' | cut -f2 -d.` if test -n "$gcc3minver" -a $gcc3minver -gt 3 then @@ -1209,6 +1211,7 @@ case "$target_cpu" in ;; x86_64) echo "TARGET_ARCH=x86_64" >> $config_mak + echo "CONFIG_DYNGEN_OP=yes" >> $config_mak echo "#define TARGET_ARCH \"x86_64\"" >> $config_h echo "#define TARGET_I386 1" >> $config_h echo "#define TARGET_X86_64 1" >> $config_h @@ -1216,60 +1219,70 @@ case "$target_cpu" in then echo "#define USE_KQEMU 1" >> $config_h fi + echo "#define CONFIG_DYNGEN_OP 1" >> $config_h ;; alpha) echo "TARGET_ARCH=alpha" >> $config_mak + echo "CONFIG_DYNGEN_OP=yes" >> $config_mak echo "#define TARGET_ARCH \"alpha\"" >> $config_h echo "#define TARGET_ALPHA 1" >> $config_h + echo "#define CONFIG_DYNGEN_OP 1" >> $config_h ;; arm|armeb) echo "TARGET_ARCH=arm" >> $config_mak - echo "CONFIG_NO_DYNGEN_OP=yes" >> $config_mak echo "#define TARGET_ARCH \"arm\"" >> $config_h echo "#define TARGET_ARM 1" >> $config_h - echo "#define CONFIG_NO_DYNGEN_OP 1" >> $config_h bflt="yes" ;; cris) echo "TARGET_ARCH=cris" >> $config_mak - echo "CONFIG_NO_DYNGEN_OP=yes" >> $config_mak echo "#define TARGET_ARCH \"cris\"" >> $config_h echo "#define TARGET_CRIS 1" >> $config_h - echo "#define CONFIG_NO_DYNGEN_OP 1" >> $config_h ;; m68k) echo "TARGET_ARCH=m68k" >> $config_mak + echo "CONFIG_DYNGEN_OP=yes" >> $config_mak echo "#define TARGET_ARCH \"m68k\"" >> $config_h echo "#define TARGET_M68K 1" >> $config_h + echo "#define CONFIG_DYNGEN_OP 1" >> $config_h bflt="yes" ;; mips|mipsel) echo "TARGET_ARCH=mips" >> $config_mak + echo "CONFIG_DYNGEN_OP=yes" >> $config_mak echo "#define TARGET_ARCH \"mips\"" >> $config_h echo "#define TARGET_MIPS 1" >> $config_h echo "#define TARGET_ABI_MIPSO32 1" >> $config_h + echo "#define CONFIG_DYNGEN_OP 1" >> $config_h ;; mipsn32|mipsn32el) echo "TARGET_ARCH=mipsn32" >> $config_mak + echo "CONFIG_DYNGEN_OP=yes" >> $config_mak echo "#define TARGET_ARCH \"mipsn32\"" >> $config_h echo "#define TARGET_MIPS 1" >> $config_h echo "#define TARGET_ABI_MIPSN32 1" >> $config_h + echo "#define CONFIG_DYNGEN_OP 1" >> $config_h ;; mips64|mips64el) echo "TARGET_ARCH=mips64" >> $config_mak + echo "CONFIG_DYNGEN_OP=yes" >> $config_mak echo "#define TARGET_ARCH \"mips64\"" >> $config_h echo "#define TARGET_MIPS 1" >> $config_h echo "#define TARGET_MIPS64 1" >> $config_h echo "#define TARGET_ABI_MIPSN64 1" >> $config_h + echo "#define CONFIG_DYNGEN_OP 1" >> $config_h ;; ppc) echo "TARGET_ARCH=ppc" >> $config_mak + echo "CONFIG_DYNGEN_OP=yes" >> $config_mak echo "#define TARGET_ARCH \"ppc\"" >> $config_h echo "#define TARGET_PPC 1" >> $config_h + echo "#define CONFIG_DYNGEN_OP 1" >> $config_h ;; ppcemb) echo "TARGET_ARCH=ppcemb" >> $config_mak echo "TARGET_ABI_DIR=ppc" >> $config_mak + echo "CONFIG_DYNGEN_OP=yes" >> $config_mak echo "#define TARGET_ARCH \"ppcemb\"" >> $config_h echo "#define TARGET_PPC 1" >> $config_h echo "#define TARGET_PPCEMB 1" >> $config_h @@ -1277,51 +1290,51 @@ case "$target_cpu" in ppc64) echo "TARGET_ARCH=ppc64" >> $config_mak echo "TARGET_ABI_DIR=ppc" >> $config_mak + echo "CONFIG_DYNGEN_OP=yes" >> $config_mak echo "#define TARGET_ARCH \"ppc64\"" >> $config_h echo "#define TARGET_PPC 1" >> $config_h echo "#define TARGET_PPC64 1" >> $config_h + echo "#define CONFIG_DYNGEN_OP 1" >> $config_h ;; ppc64abi32) echo "TARGET_ARCH=ppc64" >> $config_mak echo "TARGET_ABI_DIR=ppc" >> $config_mak echo "TARGET_ARCH2=ppc64abi32" >> $config_mak + echo "CONFIG_DYNGEN_OP=yes" >> $config_mak echo "#define TARGET_ARCH \"ppc64\"" >> $config_h echo "#define TARGET_PPC 1" >> $config_h echo "#define TARGET_PPC64 1" >> $config_h echo "#define TARGET_ABI32 1" >> $config_h + echo "#define CONFIG_DYNGEN_OP 1" >> $config_h ;; sh4|sh4eb) echo "TARGET_ARCH=sh4" >> $config_mak + echo "CONFIG_DYNGEN_OP=yes" >> $config_mak echo "#define TARGET_ARCH \"sh4\"" >> $config_h echo "#define TARGET_SH4 1" >> $config_h + echo "#define CONFIG_DYNGEN_OP 1" >> $config_h bflt="yes" ;; sparc) echo "TARGET_ARCH=sparc" >> $config_mak - echo "CONFIG_NO_DYNGEN_OP=yes" >> $config_mak echo "#define TARGET_ARCH \"sparc\"" >> $config_h echo "#define TARGET_SPARC 1" >> $config_h - echo "#define CONFIG_NO_DYNGEN_OP 1" >> $config_h ;; sparc64) echo "TARGET_ARCH=sparc64" >> $config_mak - echo "CONFIG_NO_DYNGEN_OP=yes" >> $config_mak echo "#define TARGET_ARCH \"sparc64\"" >> $config_h echo "#define TARGET_SPARC 1" >> $config_h echo "#define TARGET_SPARC64 1" >> $config_h - echo "#define CONFIG_NO_DYNGEN_OP 1" >> $config_h elfload32="yes" ;; sparc32plus) echo "TARGET_ARCH=sparc64" >> $config_mak echo "TARGET_ABI_DIR=sparc" >> $config_mak echo "TARGET_ARCH2=sparc32plus" >> $config_mak - echo "CONFIG_NO_DYNGEN_OP=yes" >> $config_mak echo "#define TARGET_ARCH \"sparc64\"" >> $config_h echo "#define TARGET_SPARC 1" >> $config_h echo "#define TARGET_SPARC64 1" >> $config_h echo "#define TARGET_ABI32 1" >> $config_h - echo "#define CONFIG_NO_DYNGEN_OP 1" >> $config_h ;; *) echo "Unsupported target CPU" diff --git a/tcg/tcg-dyngen.c b/tcg/tcg-dyngen.c index 77502af04c..8e9d2e92d8 100644 --- a/tcg/tcg-dyngen.c +++ b/tcg/tcg-dyngen.c @@ -464,7 +464,7 @@ static inline void ia64_apply_fixes (uint8_t **gen_code_pp, #endif #endif -#ifndef CONFIG_NO_DYNGEN_OP +#ifdef CONFIG_DYNGEN_OP #if defined __hppa__ struct hppa_branch_stub { diff --git a/tcg/tcg-op.h b/tcg/tcg-op.h index 46abcf8fed..f80d0406dd 100644 --- a/tcg/tcg-op.h +++ b/tcg/tcg-op.h @@ -23,7 +23,7 @@ */ #include "tcg.h" -#ifndef CONFIG_NO_DYNGEN_OP +#ifdef CONFIG_DYNGEN_OP /* legacy dyngen operations */ #include "gen-op.h" #endif diff --git a/tcg/tcg-opc.h b/tcg/tcg-opc.h index ee95910620..fb1a63cc98 100644 --- a/tcg/tcg-opc.h +++ b/tcg/tcg-opc.h @@ -21,7 +21,7 @@ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN * THE SOFTWARE. */ -#ifndef CONFIG_NO_DYNGEN_OP +#ifdef CONFIG_DYNGEN_OP #include "dyngen-opc.h" #endif diff --git a/tcg/tcg.c b/tcg/tcg.c index 7e499beeef..c5a8dafb12 100644 --- a/tcg/tcg.c +++ b/tcg/tcg.c @@ -1780,7 +1780,7 @@ static inline int tcg_gen_code_common(TCGContext *s, uint8_t *gen_code_buf, case INDEX_op_end: goto the_end; -#ifndef CONFIG_NO_DYNGEN_OP +#ifdef CONFIG_DYNGEN_OP case 0 ... INDEX_op_end - 1: /* legacy dyngen ops */ #ifdef CONFIG_PROFILER