summaryrefslogtreecommitdiff
path: root/rtl/arm
diff options
context:
space:
mode:
authorflorian <florian@3ad0048d-3df7-0310-abae-a5850022a9f2>2016-03-06 13:33:16 +0000
committerflorian <florian@3ad0048d-3df7-0310-abae-a5850022a9f2>2016-03-06 13:33:16 +0000
commit9959e3b7bed0bca6c9390c9017c68f50de4b042f (patch)
tree51b1516c812500c228e471fc39a51b09a70fe266 /rtl/arm
parentb8f6334c1d358d123d41261c31babf28b2633743 (diff)
downloadfpc-9959e3b7bed0bca6c9390c9017c68f50de4b042f.tar.gz
* fix VFPv4 support
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@33182 3ad0048d-3df7-0310-abae-a5850022a9f2
Diffstat (limited to 'rtl/arm')
-rw-r--r--rtl/arm/arm.inc2
-rw-r--r--rtl/arm/math.inc2
-rw-r--r--rtl/arm/mathu.inc2
-rw-r--r--rtl/arm/setjump.inc6
-rw-r--r--rtl/arm/setjumph.inc2
5 files changed, 7 insertions, 7 deletions
diff --git a/rtl/arm/arm.inc b/rtl/arm/arm.inc
index c16ad6fe95..4bdf46dfa2 100644
--- a/rtl/arm/arm.inc
+++ b/rtl/arm/arm.inc
@@ -28,7 +28,7 @@ const
{$if not(defined(wince)) and not(defined(gba)) and not(defined(nds)) and not(defined(FPUSOFT)) and not(defined(FPULIBGCC))}
{$define FPC_SYSTEM_HAS_SYSINITFPU}
-{$if not defined(darwin) and not defined(FPUVFPV2) and not defined(FPUVFPV3) and not defined(FPUVFPV3_D16)}
+{$if not defined(darwin) and not defined(FPUVFPV2) and not defined(FPUVFPV3) and not defined(FPUVFPV4) and not defined(FPUVFPV3_D16)}
Procedure SysInitFPU;{$ifdef SYSTEMINLINE}inline;{$endif}
begin
{ Enable FPU exceptions, but disable INEXACT, UNDERFLOW, DENORMAL }
diff --git a/rtl/arm/math.inc b/rtl/arm/math.inc
index 7dce8b1ec4..87826d4b98 100644
--- a/rtl/arm/math.inc
+++ b/rtl/arm/math.inc
@@ -14,7 +14,7 @@
**********************************************************************}
-{$if defined(FPUFPA) or defined(FPUFPA10) or defined(FPUFPA11) or defined(FPUVFPV2) or defined(FPUVFPV3) or defined(FPUVFPV3_D16)}
+{$if defined(FPUFPA) or defined(FPUFPA10) or defined(FPUFPA11) or defined(FPUVFPV2) or defined(FPUVFPV3) or defined(FPUVFPV4) or defined(FPUVFPV3_D16)}
{$ifndef FPC_SYSTEM_HAS_ABS}
{$define FPC_SYSTEM_HAS_ABS}
function fpc_abs_real(d : ValReal) : ValReal;compilerproc;
diff --git a/rtl/arm/mathu.inc b/rtl/arm/mathu.inc
index 21443bdeec..4c318b32bf 100644
--- a/rtl/arm/mathu.inc
+++ b/rtl/arm/mathu.inc
@@ -132,7 +132,7 @@ procedure ClearExceptions(RaisePending: Boolean =true);
begin
end;
-{$elseif defined(darwin) or defined(FPUVFPV2) or defined(FPUVFPV3) or defined(FPUVFPV3_d16) or defined(FPUFPV4_s16)}
+{$elseif defined(darwin) or defined(FPUVFPV2) or defined(FPUVFPV3) or defined(FPUVFPV4) or defined(FPUVFPV3_d16) or defined(FPUFPV4_s16)}
const
_VFP_ENABLE_IM = 1 shl 8; { invalid operation }
diff --git a/rtl/arm/setjump.inc b/rtl/arm/setjump.inc
index bcd66193d1..974f755588 100644
--- a/rtl/arm/setjump.inc
+++ b/rtl/arm/setjump.inc
@@ -16,7 +16,7 @@
function fpc_setjmp(var S : jmp_buf) : longint;assembler;[Public, alias : 'FPC_SETJMP'];nostackframe; compilerproc;
asm
- {$if defined(FPUVFPV2) or defined(FPUVFPV3) or defined(FPUVFPV3_D16)}
+ {$if defined(FPUVFPV2) or defined(FPUVFPV3) or defined(FPUVFPV4) or defined(FPUVFPV3_D16)}
{$if defined(CPUARMV3) or defined(CPUARMV4) or defined(CPUARMV5)}
fstmiax r0!, {d8-d15}
// according to the ARM Developer Suite Assembler Guide Version 1.2
@@ -69,7 +69,7 @@ procedure fpc_longjmp(var S : jmp_buf;value : longint);assembler;[Public, alias
movs r0, r1
it eq
moveq r0, #1
- {$if defined(FPUVFPV2) or defined(FPUVFPV3) or defined(FPUVFPV3_D16)}
+ {$if defined(FPUVFPV2) or defined(FPUVFPV3) or defined(FPUVFPV4) or defined(FPUVFPV3_D16)}
fldmiad ip!, {d8-d15}
{$endif}
ldmia ip!, {v1-v6, sl, fp}
@@ -101,7 +101,7 @@ procedure fpc_longjmp(var S : jmp_buf;value : longint);assembler;[Public, alias
mov ip, r0
movs r0, r1
moveq r0, #1
- {$if defined(FPUVFPV2) or defined(FPUVFPV3) or defined(FPUVFPV3_D16)}
+ {$if defined(FPUVFPV2) or defined(FPUVFPV3) or defined(FPUVFPV4) or defined(FPUVFPV3_D16)}
{$if defined(CPUARMV3) or defined(CPUARMV4) or defined(CPUARMV5)}
fldmiax ip!, {d8-d15}
// according to the ARM Developer Suite Assembler Guide Version 1.2
diff --git a/rtl/arm/setjumph.inc b/rtl/arm/setjumph.inc
index 5aafd2011c..7ae68b7f4b 100644
--- a/rtl/arm/setjumph.inc
+++ b/rtl/arm/setjumph.inc
@@ -16,7 +16,7 @@
type
jmp_buf = packed record
-{$if defined(FPUVFPV2) or defined(FPUVFPV3) or defined(FPUVFPV3_D16)}
+{$if defined(FPUVFPV2) or defined(FPUVFPV3) or defined(FPUVFPV4) or defined(FPUVFPV3_D16)}
d8,d9,d10,d11,d12,d13,d14,d15: double;
{$endif}
v1,v2,v3,v4,v5,v6,sl,fp,sp,pc : dword;