Dear Forum,
Using
~$ arm-none-eabi-gcc -v Using built-in specs. COLLECT_GCC=arm-none-eabi-gcc COLLECT_LTO_WRAPPER=/opt/gcc-arm-none-eabi/bin/../libexec/gcc/arm-none-eabi/9.2.1/lto-wrapper Target: arm-none-eabi Configured with: /tmp/dgboter/bbs/rhev-vm10--rhe6x86_64/buildbot/rhe6x86_64--arm-none-eabi/build/src/gcc/configure --target=arm-none-eabi --prefix=/tmp/dgboter/bbs/rhev-vm10--rhe6x86_64/buildbot/rhe6x86_64--arm-none-eabi/build/build-arm-none-eabi/install// --with-gmp=/tmp/dgboter/bbs/rhev-vm10--rhe6x86_64/buildbot/rhe6x86_64--arm-none-eabi/build/build-arm-none-eabi/host-tools --with-mpfr=/tmp/dgboter/bbs/rhev-vm10--rhe6x86_64/buildbot/rhe6x86_64--arm-none-eabi/build/build-arm-none-eabi/host-tools --with-mpc=/tmp/dgboter/bbs/rhev-vm10--rhe6x86_64/buildbot/rhe6x86_64--arm-none-eabi/build/build-arm-none-eabi/host-tools --with-isl=/tmp/dgboter/bbs/rhev-vm10--rhe6x86_64/buildbot/rhe6x86_64--arm-none-eabi/build/build-arm-none-eabi/host-tools --disable-shared --disable-nls --disable-threads --disable-tls --enable-checking=release --enable-languages=c,c++,fortran --with-newlib --with-multilib-list=aprofile --with-pkgversion='GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10)' --with-bugurl=https://bugs.linaro.org/ Thread model: single gcc version 9.2.1 20191025 (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10))
and doing -print-libgcc-file-name
arm-none-eabi-gcc -marm -mcpu=cortex-a7 -mfloat-abi=hard -mfpu=neon-vfpv4 -print-libgcc-file-name /opt/gcc-arm-none-eabi/bin/../lib/gcc/arm-none-eabi/9.2.1/thumb/v7ve+simd/hard/libgcc.a
I would not expect to see 'thumb'
However, there are no arm libraries for Cortex-A7:
$ arm-none-eabi-gcc -print-multi-lib .; arm/v5te/softfp;@marm@march=armv5te+fp@mfloat-abi=softfp arm/v5te/hard;@marm@march=armv5te+fp@mfloat-abi=hard thumb/nofp;@mthumb@mfloat-abi=soft thumb/v7/nofp;@mthumb@march=armv7@mfloat-abi=soft thumb/v7+fp/softfp;@mthumb@march=armv7+fp@mfloat-abi=softfp thumb/v7+fp/hard;@mthumb@march=armv7+fp@mfloat-abi=hard thumb/v7-r+fp.sp/softfp;@mthumb@march=armv7-r+fp.sp@mfloat-abi=softfp thumb/v7-r+fp.sp/hard;@mthumb@march=armv7-r+fp.sp@mfloat-abi=hard thumb/v7-a/nofp;@mthumb@march=armv7-a@mfloat-abi=soft thumb/v7-a+fp/softfp;@mthumb@march=armv7-a+fp@mfloat-abi=softfp thumb/v7-a+fp/hard;@mthumb@march=armv7-a+fp@mfloat-abi=hard thumb/v7-a+simd/softfp;@mthumb@march=armv7-a+simd@mfloat-abi=softfp thumb/v7-a+simd/hard;@mthumb@march=armv7-a+simd@mfloat-abi=hard thumb/v7ve+simd/softfp;@mthumb@march=armv7ve+simd@mfloat-abi=softfp thumb/v7ve+simd/hard;@mthumb@march=armv7ve+simd@mfloat-abi=hard thumb/v8-a/nofp;@mthumb@march=armv8-a@mfloat-abi=soft thumb/v8-a+simd/softfp;@mthumb@march=armv8-a+simd@mfloat-abi=softfp thumb/v8-a+simd/hard;@mthumb@march=armv8-a+simd@mfloat-abi=hard
Where aren't their arm versions of the libgcc? And just thumb versions only?
Many thanks in advance, Arjan
ARM Mode give not much benefit in most code over Thumb-2. This might be the reason there are no "Arm" only libs.
May I assume that there is no overhead in calling the Thumb-2 library functions from ARM ?