Changeset 3581 for icXML/icXML-devel


Ignore:
Timestamp:
Dec 1, 2013, 3:59:29 PM (5 years ago)
Author:
nmedfort
Message:

changed AC_COMPILE to AC_RUN to test SSE/AVX/AVX2 support.

Location:
icXML/icXML-devel
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • icXML/icXML-devel/configure

    r3568 r3581  
    1994019940        { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler has the SSE2 intrinsic" >&5
    1994119941$as_echo_n "checking whether the compiler has the SSE2 intrinsic... " >&6; }
    19942         cat confdefs.h - <<_ACEOF >conftest.$ac_ext
     19942        if test "$cross_compiling" = yes; then :
     19943
     19944                                                  sse2_usable=yes
     19945
     19946cat >>confdefs.h <<_ACEOF
     19947#define XERCES_HAVE_SSE2_INTRINSIC 1
     19948_ACEOF
     19949
     19950                          save_CXXFLAGS="$CXXFLAGS"
     19951
     19952
     19953else
     19954  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
    1994319955/* end confdefs.h.  */
    1994419956#include <emmintrin.h>
     
    1995919971}
    1996019972_ACEOF
    19961 if ac_fn_cxx_try_compile "$LINENO"; then :
     19973if ac_fn_cxx_try_run "$LINENO"; then :
    1996219974
    1996319975                                                  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
     
    1997719989                                                  sse2_usable=no
    1997819990
    19979 
    19980 
    19981 fi
    19982 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
     19991fi
     19992rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
     19993  conftest.$ac_objext conftest.beam conftest.$ac_ext
     19994fi
     19995
    1998319996
    1998419997    CXXFLAGS="$no_sse_CXXFLAGS -mavx -DUSE_SSE4_2"
     
    1998619999        { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports non-destructive SSE form" >&5
    1998720000$as_echo_n "checking whether the compiler supports non-destructive SSE form... " >&6; }
    19988         cat confdefs.h - <<_ACEOF >conftest.$ac_ext
     20001        if test "$cross_compiling" = yes; then :
     20002
     20003                                                  { $as_echo "$as_me:${as_lineno-$LINENO}: result: unknown" >&5
     20004$as_echo "unknown" >&6; }
     20005                          CXXFLAGS="$save_CXXFLAGS"
     20006
     20007
     20008else
     20009  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
    1998920010/* end confdefs.h.  */
    1999020011#include <immintrin.h>
     
    2000520026}
    2000620027_ACEOF
    20007 if ac_fn_cxx_try_compile "$LINENO"; then :
     20028if ac_fn_cxx_try_run "$LINENO"; then :
    2000820029
    2000920030                                                  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
     
    2001720038                          CXXFLAGS="$save_CXXFLAGS"
    2001820039
    20019 
    20020 
    20021 fi
    20022 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
    20023 
    20024     CXXFLAGS="$no_sse_CXXFLAGS -mavx2 -mbmi2 -fabi-version=6 -DUSE_AVX2 -DBLOCK_SIZE=256"
     20040fi
     20041rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
     20042  conftest.$ac_objext conftest.beam conftest.$ac_ext
     20043fi
     20044
     20045
     20046    CXXFLAGS="$no_sse_CXXFLAGS -mavx2 -mbmi2 -fabi-version=6 -DUSE_AVX2"
    2002520047
    2002620048        { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports AVX2 intrinsics" >&5
    2002720049$as_echo_n "checking whether the compiler supports AVX2 intrinsics... " >&6; }
    20028         cat confdefs.h - <<_ACEOF >conftest.$ac_ext
     20050        if test "$cross_compiling" = yes; then :
     20051
     20052                                                  { $as_echo "$as_me:${as_lineno-$LINENO}: result: unknown" >&5
     20053$as_echo "unknown" >&6; }
     20054                          CXXFLAGS="$save_CXXFLAGS"
     20055
     20056
     20057else
     20058  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
    2002920059/* end confdefs.h.  */
    2003020060#include <immintrin.h>
     
    2004520075}
    2004620076_ACEOF
    20047 if ac_fn_cxx_try_compile "$LINENO"; then :
     20077if ac_fn_cxx_try_run "$LINENO"; then :
    2004820078
    2004920079                                                  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
     
    2005620086                          CXXFLAGS="$save_CXXFLAGS"
    2005720087
    20058 
    20059 
    20060 fi
    20061 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
     20088fi
     20089rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
     20090  conftest.$ac_objext conftest.beam conftest.$ac_ext
     20091fi
     20092
    2006220093fi
    2006320094
  • icXML/icXML-devel/configure.ac

    r3568 r3581  
    417417
    418418        AC_MSG_CHECKING([whether the compiler has the SSE2 intrinsic])
    419         AC_COMPILE_IFELSE(  [AC_LANG_PROGRAM([[#include <emmintrin.h>]],
     419        AC_RUN_IFELSE(  [AC_LANG_PROGRAM([[#include <emmintrin.h>]],
    420420                                                                                 [[__m128i* one=(__m128i*)_mm_malloc(4, 16);
    421421                                                                                   __m128i* two=(__m128i*)_mm_malloc(4, 16);
     
    436436                                                  AC_MSG_RESULT([no])
    437437                                                  sse2_usable=no
     438                                                ],
     439                                                [
     440                                                  sse2_usable=yes
     441                                                  AC_DEFINE_UNQUOTED([XERCES_HAVE_SSE2_INTRINSIC], 1, [Define to have SSE2 instruction used at runtime])
     442                          save_CXXFLAGS="$CXXFLAGS"
    438443                                                ]
    439 
    440444                                         )
    441445   
     
    443447
    444448        AC_MSG_CHECKING([whether the compiler supports non-destructive SSE form])
    445         AC_COMPILE_IFELSE(  [AC_LANG_PROGRAM([[#include <immintrin.h>]],
     449        AC_RUN_IFELSE(  [AC_LANG_PROGRAM([[#include <immintrin.h>]],
    446450                                                                                 [[    __m256* one=(__m256*)_mm_malloc(4, 32);
    447451                                               __m256* two=(__m256*)_mm_malloc(4, 32);
     
    460464                                                  AC_MSG_RESULT([no])
    461465                          CXXFLAGS="$save_CXXFLAGS"
     466                                                ],
     467                                                [
     468                                                  AC_MSG_RESULT([unknown])
     469                          CXXFLAGS="$save_CXXFLAGS"
    462470                                                ]
    463 
    464471                                         )
    465472
    466     CXXFLAGS="$no_sse_CXXFLAGS -mavx2 -mbmi2 -fabi-version=6 -DUSE_AVX2 -DBLOCK_SIZE=256"
     473    CXXFLAGS="$no_sse_CXXFLAGS -mavx2 -mbmi2 -fabi-version=6 -DUSE_AVX2"
    467474
    468475        AC_MSG_CHECKING([whether the compiler supports AVX2 intrinsics])
    469         AC_COMPILE_IFELSE(  [AC_LANG_PROGRAM([[#include <immintrin.h>]],
     476        AC_RUN_IFELSE(  [AC_LANG_PROGRAM([[#include <immintrin.h>]],
    470477                                                                                 [[    __m256i* one=(__m256i*)_mm_malloc(4, 32);
    471478                                               __m256i* two=(__m256i*)_mm_malloc(4, 32);
     
    483490                                                  AC_MSG_RESULT([no])
    484491                          CXXFLAGS="$save_CXXFLAGS"
     492                                                ],
     493                                                [
     494                                                  AC_MSG_RESULT([unknown])
     495                          CXXFLAGS="$save_CXXFLAGS"
    485496                                                ]
    486 
    487497                                         )
    488498fi
Note: See TracChangeset for help on using the changeset viewer.