[fpc-devel] What is the best match for for -mfpu=fpv4-sp-d16 on fpc-arm?

Michael Ring mail at michael-ring.org
Sun Apr 12 17:35:13 CEST 2020


Thanks, but unfortunately this created some issues, both when I build 
plain armv6m/armv7em embedded compiler+rtl and my freertos target 
(Errors are the same)

armv6m embedded from trunk compiling without -Cf flag:

/Users/ring/fpcupdeluxe/fpc/bin/x86_64-darwin/ppcarm -Cparmv6m -Ur 
-Tembedded -Parm -XParm-embedded- -Xr -Ur -Xs -O2 -n -Fi../inc -Fi../arm 
-FD/Users/ring/fpcupdeluxe/fpc/bin/x86_64-darwin -FE. 
-FU/Users/ring/devel/fpc/rtl/units/arm-embedded -vw-n-h-l-d-u-t-p-c- -ap 
-darm -dRELEASE ../inc/iso7185.pp
iso7185.pp(267,13) Fatal: Internal error 2009112404

armv7em compiling with -CfFPV4_SP_D16

/Library/Developer/CommandLineTools/usr/bin/make -C embedded all
/Users/ring/fpcupdeluxe/fpc/bin/x86_64-darwin/ppcarm -Cparmv7em -Ur 
-Tembedded -Parm -XParm-embedded- -Xr -Ur -Xs -O2 -n -Fi../inc -Fi../arm 
-FD/Users/ring/fpcupdeluxe/fpc/bin/x86_64-darwin -FE. 
-FU/Users/ring/devel/fpc/rtl/units/arm-embedded -vw-n-h-l-d-u-t-p-c- -ap 
-CfFPV4_SP_D16 -darm -dRELEASE  -Us -Sg system.pp @system.cfg
{standard input}: Assembler messages:
{standard input}:19643: Error: selected FPU does not support instruction 
-- `vmov d0,r0,r1'

{standard input}:19659: Error: selected FPU does not support instruction 
-- `vmov d0,r0,r1'


Compiling the compiler+rtl worked fine before applying the following 
changes:

Updating 6d7560f142..94d20ceb05
Fast-forward
  compiler/arm/aasmcpu.pas  |  1 +
  compiler/arm/cgcpu.pas    | 43 +++++++++++++++++++++++++++----------------
  compiler/arm/cpuinfo.pas  | 40 ++++++++++++++++++++++------------------
  compiler/arm/narmadd.pas  |  6 +++---
  compiler/arm/narmcnv.pas  |  6 +++---
  compiler/arm/narminl.pas  | 12 ++++++------
  compiler/arm/narmmat.pas  |  4 ++--
  compiler/arm/narmutil.pas |  1 +
  compiler/globals.pas      |  1 +
  9 files changed, 66 insertions(+), 48 deletions(-)


In case you need the freertos target, it is here, work in progress, I am 
now creating freertos bindings:


http://temp.michael-ring.org/targetarmfreertos.patch


Am 12.04.20 um 16:26 schrieb Florian Klämpfl:
> Am 12.04.20 um 14:13 schrieb Michael Ring via fpc-devel:
>> Thank you very much for your effort!
>
> I added FPV4_SP_D16.
> _______________________________________________
> fpc-devel maillist  -  fpc-devel at lists.freepascal.org
> https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel


More information about the fpc-devel mailing list