Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / fpc-devel / 2021-02

What is the status of -CfLIBGCC ? Can ib be considered good/working for embedded targets?

4 messages · 2 people ·

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Michael Ring

I am having a lot of (no-)fun with floating point on Cortex-M0, current summary would be to say that things get pretty unreliable once I start using Floats.

I today stumbled over -CfLIBGCC, sounds interesting, but compiling cross-compiler trunk with this option ends up in an error:

/Library/Developer/CommandLineTools/usr/bin/make -C embedded all /Users/ring/fpcupdeluxe-embedded/fpc/bin/x86_64-darwin/ppcarm -Cparmv6m -Ur -Tembedded -Parm -XParm-none-eabi- -Ur -Xs -O2 -n -Fi../inc -Fi../arm -FD/Users/ring/fpcupdeluxe-embedded/fpc/bin/x86_64-darwin -FE. -FU/Users/ring/devel/freepascal/rtl/units/arm-embedded -vw-n-h-l-d-u-t-p-c- -ap
-Fl/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib -darm -dRELEASE -O1 -g -Cflibgcc  -Us -Sg system.pp @system.cfg system.inc(426,5) Fatal: Internal error 200312126
Fatal: Compilation aborted

Is the option worth asking for a fix so that it compiles again or is it anyway so experimental that I better try to find the issues within softfp?

Michael

Reply by email

Florian Klämpfl
to Michael Ring
Michael Ring wrote 21 lines
I am having a lot of (no-)fun with floating point on Cortex-M0, current summary would be to say that things get pretty unreliable once I start using Floats. I today stumbled over -CfLIBGCC, sounds interesting, but compiling cross-compiler trunk with this option ends up in an error: /Library/Developer/CommandLineTools/usr/bin/make -C embedded all /Users/ring/fpcupdeluxe-embedded/fpc/bin/x86_64-darwin/ppcarm -Cparmv6m -Ur -Tembedded -Parm -XParm-none-eabi- -Ur -Xs -O2 -n -Fi../inc -Fi../arm -FD/Users/ring/fpcupdeluxe-embedded/fpc/bin/x86_64-darwin -FE. -FU/Users/ring/devel/freepascal/rtl/units/arm-embedded -vw-n-h-l-d-u-t-p-c- -ap -Fl/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib -darm -dRELEASE -O1 -g -Cflibgcc  -Us -Sg system.pp @system.cfg system.inc(426,5) Fatal: Internal error 200312126 Fatal: Compilation aborted Is the option worth asking for a fix so that it compiles again or is it anyway so experimental that I better try to find the issues within softfp?

libgcc was never really usable on any target. softfpu works very well on most targets, so it is most likely a simple armv6m issue. I propose we hunt the armv6m issue down, it is probably just a simple cg issue which surfaces by the softfloat code.

Reply by email

Michael Ring
to Florian Klämpfl

Thanks,

so I will try to have some fun with debugging softfp, 'fortuately' the first issue manifested itself in multiplying two numbers, may the gods of gdb smile on me!

Michael

Florian Klämpfl wrote 32 lines
Am 14.02.21 um 14:08 schrieb Michael Ring via fpc-devel: > I am having a lot of (no-)fun with floating point on Cortex-M0, > current summary would be to say that things get pretty unreliable > once I start using Floats. > > I today stumbled over -CfLIBGCC, sounds interesting, but compiling > cross-compiler trunk with this option ends up in an error: > > > /Library/Developer/CommandLineTools/usr/bin/make -C embedded all > /Users/ring/fpcupdeluxe-embedded/fpc/bin/x86_64-darwin/ppcarm > -Cparmv6m -Ur -Tembedded -Parm -XParm-none-eabi- -Ur -Xs -O2 -n > -Fi../inc -Fi../arm > -FD/Users/ring/fpcupdeluxe-embedded/fpc/bin/x86_64-darwin -FE. > -FU/Users/ring/devel/freepascal/rtl/units/arm-embedded > -vw-n-h-l-d-u-t-p-c- -ap > -Fl/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib -darm > -dRELEASE -O1 -g -Cflibgcc  -Us -Sg system.pp @system.cfg > system.inc(426,5) Fatal: Internal error 200312126 > Fatal: Compilation aborted > > Is the option worth asking for a fix so that it compiles again or is > it anyway so experimental that I better try to find the issues within > softfp? libgcc was never really usable on any target. softfpu works very well on most targets, so it is most likely a simple armv6m issue. I propose we hunt the armv6m issue down, it is probably just a simple cg issue which surfaces by the softfloat code. _______________________________________________ fpc-devel maillist  -  https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel

Reply by email

Florian Klämpfl
to Michael Ring
Michael Ring wrote 5 lines
Thanks, so I will try to have some fun with debugging softfp, 'fortuately' the first issue manifested itself in multiplying two numbers, may the gods of gdb smile on me!

What assembler are you using? Ensure it's the external one (-Aas)

Reply by email