From: Stanislav S. <ssh...@us...> - 2007-07-15 19:03:45
|
Update of /cvsroot/bochs/bochs In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv26198 Modified Files: .conf.everything CHANGES config.h.in configure configure.in Log Message: Misaligned SSE support Index: .conf.everything =================================================================== RCS file: /cvsroot/bochs/bochs/.conf.everything,v retrieving revision 1.17 retrieving revision 1.18 diff -u -d -r1.17 -r1.18 --- .conf.everything 19 Apr 2007 16:12:09 -0000 1.17 +++ .conf.everything 15 Jul 2007 19:03:32 -0000 1.18 @@ -21,6 +21,7 @@ --enable-fpu \ --enable-sse=4 \ --enable-sse-extension \ + --enable-mialigned-sse \ --enable-vme \ --enable-sep \ --enable-3dnow \ Index: CHANGES =================================================================== RCS file: /cvsroot/bochs/bochs/CHANGES,v retrieving revision 1.250 retrieving revision 1.251 diff -u -d -r1.250 -r1.251 --- CHANGES 9 Jul 2007 15:16:08 -0000 1.250 +++ CHANGES 15 Jul 2007 19:03:32 -0000 1.251 @@ -2,6 +2,8 @@ - CPU - Fixed critical bug with 0x90 opcode (NOP) handling in x86-64 mode + - implied stack references where the stack address is not in canonical form + should causes a stack exception (#SS) - Added emulation of SSE4 instructions (Stanislav) - Do not save and restore XMM8-XMM15 registers when not in x86-64 mode - Fixed zero upper 32-bit part of GPR in x86-64 mode @@ -11,6 +13,7 @@ - Fixed PUSHA/POPA instructions behavior in real mode - Fixed detecting of inexact result by FPU - Fixed denormals-are-zero (DAZ) handling by SSE convert instructions + - Implemented Misaligned Exception Mask support for SSE (MXCSR[17]) - General - 2nd simulation support in wxBochs now almost usable (simulation cleanup Index: config.h.in =================================================================== RCS file: /cvsroot/bochs/bochs/config.h.in,v retrieving revision 1.198 retrieving revision 1.199 diff -u -d -r1.198 -r1.199 --- config.h.in 19 Apr 2007 16:12:12 -0000 1.198 +++ config.h.in 15 Jul 2007 19:03:32 -0000 1.199 @@ -736,6 +736,7 @@ #define BX_SUPPORT_SSE 0 #define BX_SUPPORT_SSE_EXTENSION 0 #define BX_SUPPORT_DAZ 0 +#define BX_SUPPORT_MISALIGNED_SSE 0 #define BX_SUPPORT_SEP 0 #define BX_SUPPORT_VME 0 Index: configure =================================================================== RCS file: /cvsroot/bochs/bochs/configure,v retrieving revision 1.331 retrieving revision 1.332 diff -u -d -r1.331 -r1.332 --- configure 19 Apr 2007 16:12:12 -0000 1.331 +++ configure 15 Jul 2007 19:03:32 -0000 1.332 @@ -1,5 +1,5 @@ #! /bin/sh -# From configure.in Id: configure.in,v 1.336 2007/04/09 08:46:24 vruppert Exp . +# From configure.in Id: configure.in,v 1.337 2007/04/19 16:12:18 sshwarts Exp . # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.60. # @@ -1579,6 +1579,7 @@ --enable-sse SSE support (--enable-sse=no|1|2|3|4) --enable-sse-extension support for SSE extensions --enable-daz denormals-are-zeroes support + --enable-misaligned-sse misaligned SSE support --enable-sep SYSENTER/SYSEXIT support --enable-x86-debugger x86 debugger support --enable-cdrom CDROM support @@ -4502,7 +4503,7 @@ ;; *-*-irix6*) # Find out which ABI we are using. - echo '#line 4505 "configure"' > conftest.$ac_ext + echo '#line 4506 "configure"' > conftest.$ac_ext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? @@ -6868,11 +6869,11 @@ -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:6871: $lt_compile\"" >&5) + (eval echo "\"\$as_me:6872: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:6875: \$? = $ac_status" >&5 + echo "$as_me:6876: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -7101,11 +7102,11 @@ -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:7104: $lt_compile\"" >&5) + (eval echo "\"\$as_me:7105: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:7108: \$? = $ac_status" >&5 + echo "$as_me:7109: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -7168,11 +7169,11 @@ -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:7171: $lt_compile\"" >&5) + (eval echo "\"\$as_me:7172: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:7175: \$? = $ac_status" >&5 + echo "$as_me:7176: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -9441,7 +9442,7 @@ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 9444 "configure" +#line 9445 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -9539,7 +9540,7 @@ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 9542 "configure" +#line 9543 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -11746,11 +11747,11 @@ -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:11749: $lt_compile\"" >&5) + (eval echo "\"\$as_me:11750: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:11753: \$? = $ac_status" >&5 + echo "$as_me:11754: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -11813,11 +11814,11 @@ -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:11816: $lt_compile\"" >&5) + (eval echo "\"\$as_me:11817: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:11820: \$? = $ac_status" >&5 + echo "$as_me:11821: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -13235,7 +13236,7 @@ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 13238 "configure" +#line 13239 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -13333,7 +13334,7 @@ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 13336 "configure" +#line 13337 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -14156,11 +14157,11 @@ -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:14159: $lt_compile\"" >&5) + (eval echo "\"\$as_me:14160: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:14163: \$? = $ac_status" >&5 + echo "$as_me:14164: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -14223,11 +14224,11 @@ -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:14226: $lt_compile\"" >&5) + (eval echo "\"\$as_me:14227: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:14230: \$? = $ac_status" >&5 + echo "$as_me:14231: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -16266,11 +16267,11 @@ -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:16269: $lt_compile\"" >&5) + (eval echo "\"\$as_me:16270: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:16273: \$? = $ac_status" >&5 + echo "$as_me:16274: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -16499,11 +16500,11 @@ -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:16502: $lt_compile\"" >&5) + (eval echo "\"\$as_me:16503: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:16506: \$? = $ac_status" >&5 + echo "$as_me:16507: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -16566,11 +16567,11 @@ -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:16569: $lt_compile\"" >&5) + (eval echo "\"\$as_me:16570: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:16573: \$? = $ac_status" >&5 + echo "$as_me:16574: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -18839,7 +18840,7 @@ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 18842 "configure" +#line 18843 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -18937,7 +18938,7 @@ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 18940 "configure" +#line 18941 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -21318,7 +21319,7 @@ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 21321 "configure" +#line 21322 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -39216,6 +39217,39 @@ fi +{ echo "$as_me:$LINENO: checking for misaligned SSE support" >&5 +echo $ECHO_N "checking for misaligned SSE support... $ECHO_C" >&6; } +# Check whether --enable-misaligned-sse was given. +if test "${enable_misaligned_sse+set}" = set; then + enableval=$enable_misaligned_sse; if test "$enableval" = yes; then + { echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; } + cat >>confdefs.h <<\_ACEOF +#define BX_SUPPORT_MISALIGNED_SSE 1 +_ACEOF + + elif test "$enableval" = no; then + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } + cat >>confdefs.h <<\_ACEOF +#define BX_SUPPORT_MISALIGNED_SSE 0 +_ACEOF + + fi + +else + + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } + cat >>confdefs.h <<\_ACEOF +#define BX_SUPPORT_MISALIGNED_SSE 0 +_ACEOF + + + +fi + + { echo "$as_me:$LINENO: checking for SEP support" >&5 echo $ECHO_N "checking for SEP support... $ECHO_C" >&6; } # Check whether --enable-sep was given. Index: configure.in =================================================================== RCS file: /cvsroot/bochs/bochs/configure.in,v retrieving revision 1.337 retrieving revision 1.338 diff -u -d -r1.337 -r1.338 --- configure.in 19 Apr 2007 16:12:18 -0000 1.337 +++ configure.in 15 Jul 2007 19:03:38 -0000 1.338 @@ -1645,6 +1645,23 @@ ] ) +AC_MSG_CHECKING(for misaligned SSE support) +AC_ARG_ENABLE(misaligned-sse, + [ --enable-misaligned-sse misaligned SSE support], + [if test "$enableval" = yes; then + AC_MSG_RESULT(yes) + AC_DEFINE(BX_SUPPORT_MISALIGNED_SSE, 1) + elif test "$enableval" = no; then + AC_MSG_RESULT(no) + AC_DEFINE(BX_SUPPORT_MISALIGNED_SSE, 0) + fi + ], + [ + AC_MSG_RESULT(no) + AC_DEFINE(BX_SUPPORT_MISALIGNED_SSE, 0) + ] + ) + AC_MSG_CHECKING(for SEP support) AC_ARG_ENABLE(sep, [ --enable-sep SYSENTER/SYSEXIT support], |