Hello! We can use 32bit address without .code64 directive; this test is valid for 32bit and 64bit targets.
2012-09-06 Uros Bizjak <ubiz...@gmail.com> * configure.ac (hle prefixes): Remove .code64. * configure: Regenerated. Tested on x86_64-pc-linux-gnu, committed to mainline SVN. Uros.
Index: configure.ac =================================================================== --- configure.ac (revision 191042) +++ configure.ac (working copy) @@ -3581,9 +3581,7 @@ gcc_GAS_CHECK_FEATURE([hle prefixes], gcc_cv_as_ix86_hle,,, - [.code64 - lock xacquire cmpxchg %esi, (%rcx) - ],, + [lock xacquire cmpxchg %esi, (%ecx)],, [AC_DEFINE(HAVE_AS_IX86_HLE, 1, [Define if your assembler supports HLE prefixes.])]) Index: configure =================================================================== --- configure (revision 191042) +++ configure (working copy) @@ -24417,9 +24417,7 @@ else gcc_cv_as_ix86_hle=no if test x$gcc_cv_as != x; then - $as_echo '.code64 - lock xacquire cmpxchg %esi, (%rcx) - ' > conftest.s + $as_echo 'lock xacquire cmpxchg %esi, (%ecx)' > conftest.s if { ac_try='$gcc_cv_as $gcc_cv_as_flags -o conftest.o conftest.s >&5' { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 (eval $ac_try) 2>&5