This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug target/65837] [arm-linux-gnueabihf] lto1 target specific builtin not available


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65837

--- Comment #13 from prathamesh3492 at gcc dot gnu.org ---
(In reply to Ramana Radhakrishnan from comment #12)
> (In reply to rguenther@suse.de from comment #11)
> > 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?
> 
> Yeah that's odd - it's almost like the command line options passed to the TU
> precede the defaults of the compiler.
> 
> Prathamesh, can you dig further - it sounds like we have a real issue here.
Hi,
Is it okay if I start investigating this tomorrow ? I am busy with something
else at the moment, sorry about that.

Regards,
Prathamesh
> 
> Ramana
> 
> > 
> > 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
> > > 
> > >


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]