Jim Wilson
2017-07-30 23:30:21 UTC
hikey$ g++ -march=armv8-a test.cxx -c
pmull is part of the crypto extension, which is not enabled bydefault. 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