--- gforth/configure.in 2008/01/04 21:48:53 1.204 +++ gforth/configure.in 2008/01/08 19:55:55 1.207 @@ -32,16 +32,6 @@ AC_CONFIG_HEADERS(engine/config.h) #suppress the "-g -O2" default test "$CFLAGS" || CFLAGS=-O2 -AC_ARG_ENABLE(force-reg, - AC_HELP_STRING([--enable-force-reg], - [ Use explicit register declarations if they appear in - the machine.h file. This can cause a good speedup, - but also incorrect code with some gcc versions on - some processors (default disabled).]), - ,enable_force_reg=no) -test "$enable_force_reg" = "no"|| - AC_DEFINE(FORCE_REG,,[Define if you want to use explicit register declarations for better performance or for more convenient CODE words (does not work with all GCC versions on all machines)]) - AC_ARG_ENABLE(force-cdiv, AC_HELP_STRING([--enable-force-cdiv], [ Use the native C division - symmetric - instead of @@ -475,10 +465,7 @@ case `expr 2 '*' "$ac_cv_sizeof_char_p"` $ac_cv_sizeof_intptr_t) ac_cv_int_type_double_cell="intptr_t" ;; - $ac_cv_sizeof_intptr_t) - ac_cv_int_type_double_cell="intptr_t" - ;; - $ac_cv_sizeof_intptr_t) + $ac_cv_sizeof_int128_t) ac_cv_int_type_double_cell="int128_t" ;; esac @@ -513,7 +500,19 @@ if test "$ac_cv_int_type_double_cell" != then AC_DEFINE_UNQUOTED(DOUBLE_CELL_TYPE,$ac_cv_int_type_double_cell,[an integer type that is twice as long as a pointer]) AC_DEFINE_UNQUOTED(DOUBLE_UCELL_TYPE,$ac_cv_int_type_double_ucell,[an unsigned integer type that is twice as long as a pointer]) + OPTS=-ll +else + if test "$ac_cv_sizeof_char_p" == 8; then + OPTS="-ll -no-ll" + else + OPTS=-noll + fi +fi + +if grep -q FORCE_REG arch/$machine/machine.h; then + OPTS=`for i in $OPTS; do echo -n "$i-reg "; done`$OPTS fi +AC_SUBST(OPTS) AC_TYPE_OFF_T AC_CHECK_SIZEOF(off_t)