https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65837
--- Comment #11 from rguenther at suse dot de <rguenther at suse dot de> --- On Thu, 23 Apr 2015, prathamesh3492 at gcc dot gnu.org wrote: > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65837 > > --- Comment #10 from prathamesh3492 at gcc dot gnu.org --- > (In reply to Richard Biener from comment #9) > > (In reply to prathamesh3492 from comment #3) > > > Hi, > > > I tried to reproduce the error with a reduced test-case: > > > > > > #include "arm_neon.h" > > > > > > float32x2_t a, b, c, e; > > > > > > int main() > > > { > > > e = __builtin_neon_vmls_lanev2sf (a, b, c, 0); > > > return 0; > > > } > > > > > > arm-linux-gnueabihf-gcc -mfpu=neon test.c -flto test.c -c > > > arm-linux-gnueabihf-gcc test.o -flto -o test > > > > this should still work according to my experiments. -mfpu=neon should > > be passed to lto1 at link time - can you verify it's in the lto option > > section in test.o and on lto1 (by adding -v)? > -fmpu=neon is present, however it seems it's overriden by -mfpu=vfpv3-d16 in > the test.o file > arm-linux-gnueabihf-gcc -v -flto test.o > > COLLECT_GCC_OPTIONS='-c' '-fmath-errno' '-fsigned-zeros' '-ftrapping-math' > '-fno-trapv' '-fno-strict-overflow' '-fno-openmp' '-fno-openacc' '-mfpu=neon' > '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mthumb' > '-mtls-dialect=gnu' '-v' '-march=armv7-a' '-mtune=cortex-a9' > '-mfloat-abi=hard' > '-mfpu=vfpv3-d16' '-mthumb' '-mtls-dialect=gnu' > '-fltrans-output-list=/tmp/cc43ypaC.ltrans.out' '-fwpa' > '-fresolution=/tmp/ccmDzd6z.res' Huh. Can you see where that comes from? Richard. > /home/prathamesh.kulkarni/gcc-linaro-6.0/bin/../lib/gcc/../../libexec/gcc/arm-linux-gnueabihf/6.0.0/lto1 > -quiet -dumpbase test.o -mfpu=neon -march=armv7-a -mtune=cortex-a9 > -mfloat-abi=hard -mthumb -mtls-dialect=gnu -march=armv7-a -mtune=cortex-a9 > -mfloat-abi=hard -mfpu=vfpv3-d16 -mthumb -mtls-dialect=gnu -auxbase test > -version -fmath-errno -fsigned-zeros -ftrapping-math -fno-trapv > -fno-strict-overflow -fno-openmp -fno-openacc > -fltrans-output-list=/tmp/cc43ypaC.ltrans.out -fwpa > -fresolution=/tmp/ccmDzd6z.res @/tmp/ccus6SMC > > adding -mfpu=neon in the command line, only has -mfpu=neon > arm-linux-gnueaihf-gcc -v -mfpu=neon -flto test.o > > COLLECT_GCC_OPTIONS='-c' '-fmath-errno' '-fsigned-zeros' '-ftrapping-math' > '-fno-trapv' '-fno-strict-overflow' '-fno-openmp' '-fno-openacc' '-mfpu=neon' > '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mthumb' > '-mtls-dialect=gnu' '-v' '-mfpu=neon' '-march=armv7-a' '-mtune=cortex-a9' > '-mfloat-abi=hard' '-mthumb' '-mtls-dialect=gnu' > '-fltrans-output-list=/tmp/ccCo0pAW.ltrans.out' '-fwpa' > '-fresolution=/tmp/ccRqEsoP.res' > /home/prathamesh.kulkarni/gcc-linaro-6.0/bin/../lib/gcc/../../libexec/gcc/arm-linux-gnueabihf/6.0.0/lto1 > -quiet -dumpbase test.o -mfpu=neon -march=armv7-a -mtune=cortex-a9 > -mfloat-abi=hard -mthumb -mtls-dialect=gnu -mfpu=neon -march=armv7-a > -mtune=cortex-a9 -mfloat-abi=hard -mthumb -mtls-dialect=gnu -auxbase test > -version -fmath-errno -fsigned-zeros -ftrapping-math -fno-trapv > -fno-strict-overflow -fno-openmp -fno-openacc > -fltrans-output-list=/tmp/ccCo0pAW.ltrans.out -fwpa > -fresolution=/tmp/ccRqEsoP.res @/tmp/ccArRJjW > > Thanks, > Prathamesh > > > > > lto1: fatal error: target specific builtin not available > > > compilation terminated. > > > lto-wrapper: fatal error: > > > /home/prathamesh.kulkarni/gnu-toolchain/gcc-chromium-arm-linux-gnueabihf/ > > > builds/destdir/x86_64-unknown-linux-gnu/bin/arm-linux-gnueabihf-gcc > > > returned > > > 1 exit status > > > compilation terminated. > > > > > > However passing -mfpu=neon for linking works: > > > arm-linux-gnueabihf-gcc -mfpu=neon test.o -flto -o test > > > > > > I suppose similar thing must be happening during linking > > > libshared_memory_support.so for chromium build ? > > > I couldn't see -mfpu=neon in the command line used for linking > > > libshared_memory_support.so > > > > > > Thank you, > > > Prathamesh > >