diff --git a/TODO b/TODO index 32cea5e..13175ec 100644 --- a/TODO +++ b/TODO @@ -1,3 +1,8 @@ + Non-native version can't be built + + may need to dig into ancient svn history to find old + makefiles that used to build it + Mac OS X fixes: figure out why i486-cleanup.pl basically eats all diff --git a/configure.ac b/configure.ac index 94bf2f1..327efd1 100644 --- a/configure.ac +++ b/configure.ac @@ -67,11 +67,11 @@ AC_SUBST(HOST_NATIVE) AC_ARG_ENABLE([native], AC_HELP_STRING([--enable-native], [native or nonnative (default is native)]), - [var_native=$enable_native], [var_native=no] ) + [var_native=$enable_native], [var_native=yes] ) if test "$var_native" = "yes"; then - NO_NATIVE=TRUE -else NO_NATIVE=FALSE +else + NO_NATIVE=TRUE fi AC_SUBST(NO_NATIVE) diff --git a/include/syn68k_public.h b/include/syn68k_public.h index 8aaf02f..908e052 100644 --- a/include/syn68k_public.h +++ b/include/syn68k_public.h @@ -12,7 +12,8 @@ # if defined(__BIG_ENDIAN__) || defined(m68k) || defined(mc68000) \ || defined(sparc) || defined(powerpc) || defined (__ppc__) # define BIGENDIAN /* ARDI naming convention, why rock the boat? */ -# elif defined(__alpha) || defined(i860) || defined(vax) || defined(i386) +# elif defined(__alpha) || defined(i860) || defined(vax) || defined(i386) \ + || defined(__x86_64) # define LITTLEENDIAN # else # error "Unknown CPU type" @@ -35,7 +36,7 @@ # define QUADALIGN # elif !defined(m68k) && !defined(mc68000) && !defined(i386) \ && !defined(vax) && !defined(__alpha) && !defined(powerpc) \ - && !defined (__ppc__) + && !defined (__ppc__) && !defined(__x86_64) # error Unknown CPU type # endif #endif diff --git a/runtime/syn68k_header.c b/runtime/syn68k_header.c index 85d830b..d680ee6 100644 --- a/runtime/syn68k_header.c +++ b/runtime/syn68k_header.c @@ -17,6 +17,8 @@ # define GLOBAL_REGISTER_DECLS register const uint16 *code asm ("$9"); #elif defined (powerpc) || defined (__ppc__) # define GLOBAL_REGISTER_DECLS register const uint16 *code asm ("%r13"); +#elif defined(__x86_64) +# define GLOBAL_REGISTER_DECLS register const uint16 *code asm ("%rsi"); #else # error "Choose a global register to hold the current synthetic PC. Make sure it is saved by the normal calling convention." #endif