newlib build fails, gcc option -fshort-double no longer supported ?

Asked by Michael Schewe on 2018-05-31

my own build script (used since gcc 5.3.1 20160307 (release) [ARM/embedded-5-branch revision 234589] build from source) fails with error:

make[6]: Verzeichnis „/home/michael/software/src/gcc_cm4/rev4/build/newlib/arm-none-eabi/newlib/libc/argz“ wird betreten
arm-none-eabi-gcc -B/home/michael/software/src/gcc_cm4/rev4/build/newlib/arm-none-eabi/newlib/ -isystem /home/michael/software/src/gcc_cm4/rev4/build/newlib/arm-none-eabi/newlib/targ-include -isystem /home/michael/software/src/gcc_cm4/rev4/src/newlib-2.0.0/newlib/libc/include -B/home/michael/software/src/gcc_cm4/rev4/build/newlib/arm-none-eabi/libgloss/arm -L/home/michael/software/src/gcc_cm4/rev4/build/newlib/arm-none-eabi/libgloss/libnosys -L/home/michael/software/src/gcc_cm4/rev4/src/newlib-2.0.0/libgloss/arm -DPACKAGE_NAME=\"newlib\" -DPACKAGE_TARNAME=\"newlib\" -DPACKAGE_VERSION=\"2.0.0\" -DPACKAGE_STRING=\"newlib\ 2.0.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -I. -I../../../../../../src/newlib-2.0.0/newlib/libc/argz -Os -D__NO_SYSCALLS__ -fno-builtin -D_IEEE_LIBM -ffunction-sections -fdata-sections -fomit-frame-pointer -fconserve-stack --param large-stack-frame=4 --param large-stack-frame-growth=4 -Os --param case-values-threshold=3 -fno-unwind-tables -fno-exceptions -fshort-double -fsingle-precision-constant -ffast-math -mslow-flash-data -c -o lib_a-dummy.o `test -f 'dummy.c' || echo '../../../../../../src/newlib-2.0.0/newlib/libc/argz/'`dummy.c
arm-none-eabi-gcc: error: unrecognized command line option '-fshort-double'; did you mean '-fshort-enums'?

Is the gcc option -fshort-double no longer supported ? since when and why ?
I cannot find any info about it and an alternative how to build a custom toolchain where all floating point arithmetic (C-types float and double) uses 32bit single precision IEEE format to get full FPU performance for Cortex-M4F ?

Question information

English Edit question
GNU Arm Embedded Toolchain Edit question
No assignee Edit question
Last query:
Last reply:
Tejas Belagod (belagod-tejas) said : #1

-fshort-double was removed as part of

When it was removed, I don't think we had a use-case to put an equivalent -m option to replace -fshort-enums. None of our multilibs used this option either.

I don't think there is another backend option that equivalent.

Can you help with this problem?

Provide an answer of your own, or ask Michael Schewe for more information if necessary.

To post a message you must log in.