-march=native has been removed by default

9 views
Skip to first unread message

Jeffrey Walton

unread,
Aug 23, 2017, 4:40:29 PM8/23/17
to Crypto++ Users
Hi Everyone,

We removed -march=native by default in the GNUmakefile and CMakeList.txt. The -march=native removal occurred through PR 465 (https://github.com/weidai11/cryptopp/pull/465).

We reorganized the source files ar PR 461 (https://github.com/weidai11/cryptopp/pull/461), and it allowed us to surgically apply additional compiler options, like -maes and -march=armv8-a+crypto. -march=native was marginalized after the 461 PR.

If you want or need -march=native, then use the 'native' recipe. Its a new addition to the GNUmakefile.

    make native -j 9

If you run CMake, then you wills see some new output. Some failures are expected, like GCC 4.8 missing SHA:

    ...

    -- Detecting CXX compile features

    -- Detecting CXX compile features - done

    -- Performing Test CRYPTOPP_IA32_SSSE3

    -- Performing Test CRYPTOPP_IA32_SSSE3 - Success

    -- Performing Test CRYPTOPP_IA32_SSE4

    -- Performing Test CRYPTOPP_IA32_SSE4 - Success

    -- Performing Test CRYPTOPP_IA32_CLMUL

    -- Performing Test CRYPTOPP_IA32_CLMUL - Success

    -- Performing Test CRYPTOPP_IA32_AES

    -- Performing Test CRYPTOPP_IA32_AES - Success

    -- Performing Test CRYPTOPP_IA32_SHA

    -- Performing Test CRYPTOPP_IA32_SHA - Failed


And ARMv8:

    ...
    -- Detecting CXX compiler ABI info
    -- Detecting CXX compiler ABI info - done
    -- Performing Test CRYPTOPP_ARMV8A_ASIMD
    -- Performing Test CRYPTOPP_ARMV8A_ASIMD - Success
    -- Performing Test CRYPTOPP_ARMV8A_CRC
    -- Performing Test CRYPTOPP_ARMV8A_CRC - Success
    -- Performing Test CRYPTOPP_ARMV8A_CRYPTO
    -- Performing Test CRYPTOPP_ARMV8A_CRYPTO - Success

Jeff
Reply all
Reply to author
Forward
0 new messages