On Sun, Jul 30, 2017 at 1:32 PM, Jeffrey Walton noloader@gmail.com wrote:
hikey$ g++ -march=armv8-a test.cxx -c test.cxx: In function ‘poly128_t VMULL_P64(poly64_t, poly64_t)’: test.cxx:10:1: error: unrecognizable insn:
pmull is part of the crypto extension, which is not enabled by default. You need to use -march=armv8-a+crypto. Or else specify a -mcpu= option for a cpu that has the crypto support. However, not all cortex-a53 processors support the crypto extension, so -mcpu=cortex-a53 is not safe, though this will work accidentally in some older gcc versions, possibly including your compiler, depending on which patches have been backported to it. -mcpu=cortex-a53 will definitely not work in current compiler versions.
If you use a compiler version that supports the crypto intrinsics, then you will get slightly less confusing error message complaining about a target specific option mismatch, as the intrinsics are defined to require crypto support.
There may also be other issues here, but this seems to be the immediate one.
Jim