Quellcode durchsuchen

* cpu specific header file for the system unit: cpuh.inc, moved several declarations into it

git-svn-id: trunk@37542 -
florian vor 7 Jahren
Ursprung
Commit
ff86c80176

+ 14 - 0
.gitattributes

@@ -8529,6 +8529,7 @@ rtl/Makefile svneol=native#text/plain
 rtl/Makefile.fpc svneol=native#text/plain
 rtl/Makefile.fpc svneol=native#text/plain
 rtl/README.txt svneol=native#text/plain
 rtl/README.txt svneol=native#text/plain
 rtl/aarch64/aarch64.inc svneol=native#text/plain
 rtl/aarch64/aarch64.inc svneol=native#text/plain
+rtl/aarch64/cpuh.inc svneol=native#text/plain
 rtl/aarch64/int64p.inc svneol=native#text/plain
 rtl/aarch64/int64p.inc svneol=native#text/plain
 rtl/aarch64/makefile.cpu svneol=native#text/plain
 rtl/aarch64/makefile.cpu svneol=native#text/plain
 rtl/aarch64/math.inc svneol=native#text/plain
 rtl/aarch64/math.inc svneol=native#text/plain
@@ -8625,6 +8626,7 @@ rtl/android/unixandroid.inc svneol=native#text/plain
 rtl/arm/arm.inc svneol=native#text/plain
 rtl/arm/arm.inc svneol=native#text/plain
 rtl/arm/armdefines.inc svneol=native#text/plain
 rtl/arm/armdefines.inc svneol=native#text/plain
 rtl/arm/cpu.pp svneol=native#text/pascal
 rtl/arm/cpu.pp svneol=native#text/pascal
+rtl/arm/cpuh.inc svneol=native#text/plain
 rtl/arm/divide.inc svneol=native#text/plain
 rtl/arm/divide.inc svneol=native#text/plain
 rtl/arm/int64p.inc svneol=native#text/plain
 rtl/arm/int64p.inc svneol=native#text/plain
 rtl/arm/makefile.cpu svneol=native#text/plain
 rtl/arm/makefile.cpu svneol=native#text/plain
@@ -8673,6 +8675,7 @@ rtl/atari/sysutils.pp svneol=native#text/plain
 rtl/atari/tthread.inc svneol=native#text/plain
 rtl/atari/tthread.inc svneol=native#text/plain
 rtl/atari/xbios.inc svneol=native#text/plain
 rtl/atari/xbios.inc svneol=native#text/plain
 rtl/avr/avr.inc svneol=native#text/plain
 rtl/avr/avr.inc svneol=native#text/plain
+rtl/avr/cpuh.inc svneol=native#text/plain
 rtl/avr/int64p.inc svneol=native#text/plain
 rtl/avr/int64p.inc svneol=native#text/plain
 rtl/avr/makefile.cpu svneol=native#text/plain
 rtl/avr/makefile.cpu svneol=native#text/plain
 rtl/avr/math.inc svneol=native#text/plain
 rtl/avr/math.inc svneol=native#text/plain
@@ -9213,6 +9216,7 @@ rtl/haiku/termiosproc.inc svneol=native#text/plain
 rtl/haiku/unxconst.inc svneol=native#text/plain
 rtl/haiku/unxconst.inc svneol=native#text/plain
 rtl/haiku/unxfunc.inc svneol=native#text/plain
 rtl/haiku/unxfunc.inc svneol=native#text/plain
 rtl/i386/cpu.pp svneol=native#text/plain
 rtl/i386/cpu.pp svneol=native#text/plain
+rtl/i386/cpuh.inc svneol=native#text/plain
 rtl/i386/fastmove.inc svneol=native#text/plain
 rtl/i386/fastmove.inc svneol=native#text/plain
 rtl/i386/i386.inc svneol=native#text/plain
 rtl/i386/i386.inc svneol=native#text/plain
 rtl/i386/int64p.inc svneol=native#text/plain
 rtl/i386/int64p.inc svneol=native#text/plain
@@ -9227,6 +9231,7 @@ rtl/i386/setjumph.inc svneol=native#text/plain
 rtl/i386/strings.inc svneol=native#text/plain
 rtl/i386/strings.inc svneol=native#text/plain
 rtl/i386/stringss.inc svneol=native#text/plain
 rtl/i386/stringss.inc svneol=native#text/plain
 rtl/i8086/cpu.pp svneol=native#text/plain
 rtl/i8086/cpu.pp svneol=native#text/plain
+rtl/i8086/cpuh.inc svneol=native#text/plain
 rtl/i8086/hugeptr.inc svneol=native#text/plain
 rtl/i8086/hugeptr.inc svneol=native#text/plain
 rtl/i8086/i8086.inc svneol=native#text/plain
 rtl/i8086/i8086.inc svneol=native#text/plain
 rtl/i8086/int32p.inc svneol=native#text/plain
 rtl/i8086/int32p.inc svneol=native#text/plain
@@ -9374,6 +9379,7 @@ rtl/java/sysos.inc svneol=native#text/plain
 rtl/java/sysosh.inc svneol=native#text/plain
 rtl/java/sysosh.inc svneol=native#text/plain
 rtl/java/sysres.inc svneol=native#text/plain
 rtl/java/sysres.inc svneol=native#text/plain
 rtl/java/system.pp svneol=native#text/plain
 rtl/java/system.pp svneol=native#text/plain
+rtl/jvm/cpuh.inc svneol=native#text/plain
 rtl/jvm/int64p.inc svneol=native#text/plain
 rtl/jvm/int64p.inc svneol=native#text/plain
 rtl/jvm/jvm.inc svneol=native#text/plain
 rtl/jvm/jvm.inc svneol=native#text/plain
 rtl/jvm/makefile.cpu svneol=native#text/plain
 rtl/jvm/makefile.cpu svneol=native#text/plain
@@ -9559,6 +9565,7 @@ rtl/linux/x86_64/stat.inc svneol=native#text/plain
 rtl/linux/x86_64/syscall.inc svneol=native#text/plain
 rtl/linux/x86_64/syscall.inc svneol=native#text/plain
 rtl/linux/x86_64/syscallh.inc svneol=native#text/plain
 rtl/linux/x86_64/syscallh.inc svneol=native#text/plain
 rtl/linux/x86_64/sysnr.inc svneol=native#text/plain
 rtl/linux/x86_64/sysnr.inc svneol=native#text/plain
+rtl/m68k/cpuh.inc svneol=native#text/plain
 rtl/m68k/int64p.inc svneol=native#text/plain
 rtl/m68k/int64p.inc svneol=native#text/plain
 rtl/m68k/lowmath.inc svneol=native#text/plain
 rtl/m68k/lowmath.inc svneol=native#text/plain
 rtl/m68k/m68k.inc svneol=native#text/plain
 rtl/m68k/m68k.inc svneol=native#text/plain
@@ -9589,6 +9596,7 @@ rtl/macos/sysos.inc svneol=native#text/plain
 rtl/macos/sysosh.inc svneol=native#text/plain
 rtl/macos/sysosh.inc svneol=native#text/plain
 rtl/macos/system.pp svneol=native#text/plain
 rtl/macos/system.pp svneol=native#text/plain
 rtl/macos/sysutils.pp svneol=native#text/plain
 rtl/macos/sysutils.pp svneol=native#text/plain
+rtl/mips/cpuh.inc svneol=native#text/plain
 rtl/mips/int64p.inc svneol=native#text/plain
 rtl/mips/int64p.inc svneol=native#text/plain
 rtl/mips/makefile.cpu svneol=native#text/plain
 rtl/mips/makefile.cpu svneol=native#text/plain
 rtl/mips/math.inc svneol=native#text/plain
 rtl/mips/math.inc svneol=native#text/plain
@@ -9599,6 +9607,7 @@ rtl/mips/setjump.inc svneol=native#text/plain
 rtl/mips/setjumph.inc svneol=native#text/plain
 rtl/mips/setjumph.inc svneol=native#text/plain
 rtl/mips/strings.inc svneol=native#text/plain
 rtl/mips/strings.inc svneol=native#text/plain
 rtl/mips/stringss.inc svneol=native#text/plain
 rtl/mips/stringss.inc svneol=native#text/plain
+rtl/mipsel/cpuh.inc svneol=native#text/plain
 rtl/mipsel/int64p.inc svneol=native#text/plain
 rtl/mipsel/int64p.inc svneol=native#text/plain
 rtl/mipsel/makefile.cpu svneol=native#text/plain
 rtl/mipsel/makefile.cpu svneol=native#text/plain
 rtl/mipsel/math.inc svneol=native#text/plain
 rtl/mipsel/math.inc svneol=native#text/plain
@@ -10059,6 +10068,7 @@ rtl/palmos/sysosh.inc svneol=native#text/plain
 rtl/palmos/syspara.inc svneol=native#text/plain
 rtl/palmos/syspara.inc svneol=native#text/plain
 rtl/palmos/system.pp svneol=native#text/plain
 rtl/palmos/system.pp svneol=native#text/plain
 rtl/palmos/systraps.pp svneol=native#text/plain
 rtl/palmos/systraps.pp svneol=native#text/plain
+rtl/powerpc/cpuh.inc svneol=native#text/plain
 rtl/powerpc/int64p.inc svneol=native#text/plain
 rtl/powerpc/int64p.inc svneol=native#text/plain
 rtl/powerpc/makefile.cpu svneol=native#text/plain
 rtl/powerpc/makefile.cpu svneol=native#text/plain
 rtl/powerpc/math.inc svneol=native#text/plain
 rtl/powerpc/math.inc svneol=native#text/plain
@@ -10070,6 +10080,7 @@ rtl/powerpc/setjumph.inc svneol=native#text/plain
 rtl/powerpc/strings.inc svneol=native#text/plain
 rtl/powerpc/strings.inc svneol=native#text/plain
 rtl/powerpc/stringss.inc svneol=native#text/plain
 rtl/powerpc/stringss.inc svneol=native#text/plain
 rtl/powerpc/strlen.inc svneol=native#text/plain
 rtl/powerpc/strlen.inc svneol=native#text/plain
+rtl/powerpc64/cpuh.inc svneol=native#text/plain
 rtl/powerpc64/int64p.inc svneol=native#text/plain
 rtl/powerpc64/int64p.inc svneol=native#text/plain
 rtl/powerpc64/makefile.cpu svneol=native#text/plain
 rtl/powerpc64/makefile.cpu svneol=native#text/plain
 rtl/powerpc64/math.inc svneol=native#text/plain
 rtl/powerpc64/math.inc svneol=native#text/plain
@@ -10124,6 +10135,7 @@ rtl/solaris/unxfunc.inc svneol=native#text/plain
 rtl/solaris/x86_64/sighnd.inc svneol=native#text/plain
 rtl/solaris/x86_64/sighnd.inc svneol=native#text/plain
 rtl/solaris/x86_64/sighndh.inc svneol=native#text/plain
 rtl/solaris/x86_64/sighndh.inc svneol=native#text/plain
 rtl/solaris/x86_64/start.inc svneol=native#text/plain
 rtl/solaris/x86_64/start.inc svneol=native#text/plain
+rtl/sparc/cpuh.inc svneol=native#text/plain
 rtl/sparc/int64p.inc svneol=native#text/plain
 rtl/sparc/int64p.inc svneol=native#text/plain
 rtl/sparc/makefile.cpu svneol=native#text/plain
 rtl/sparc/makefile.cpu svneol=native#text/plain
 rtl/sparc/math.inc svneol=native#text/plain
 rtl/sparc/math.inc svneol=native#text/plain
@@ -10134,6 +10146,7 @@ rtl/sparc/setjumph.inc svneol=native#text/plain
 rtl/sparc/sparc.inc svneol=native#text/plain
 rtl/sparc/sparc.inc svneol=native#text/plain
 rtl/sparc/strings.inc svneol=native#text/plain
 rtl/sparc/strings.inc svneol=native#text/plain
 rtl/sparc/stringss.inc svneol=native#text/plain
 rtl/sparc/stringss.inc svneol=native#text/plain
+rtl/sparc64/cpuh.inc svneol=native#text/plain
 rtl/sparc64/int64p.inc svneol=native#text/plain
 rtl/sparc64/int64p.inc svneol=native#text/plain
 rtl/sparc64/makefile.cpu svneol=native#text/plain
 rtl/sparc64/makefile.cpu svneol=native#text/plain
 rtl/sparc64/math.inc svneol=native#text/plain
 rtl/sparc64/math.inc svneol=native#text/plain
@@ -10412,6 +10425,7 @@ rtl/wince/wininc/redef.inc svneol=native#text/plain
 rtl/wince/wininc/struct.inc svneol=native#text/plain
 rtl/wince/wininc/struct.inc svneol=native#text/plain
 rtl/wince/winres.inc svneol=native#text/plain
 rtl/wince/winres.inc svneol=native#text/plain
 rtl/x86_64/cpu.pp svneol=native#text/pascal
 rtl/x86_64/cpu.pp svneol=native#text/pascal
+rtl/x86_64/cpuh.inc svneol=native#text/plain
 rtl/x86_64/int64p.inc svneol=native#text/plain
 rtl/x86_64/int64p.inc svneol=native#text/plain
 rtl/x86_64/makefile.cpu svneol=native#text/plain
 rtl/x86_64/makefile.cpu svneol=native#text/plain
 rtl/x86_64/math.inc svneol=native#text/plain
 rtl/x86_64/math.inc svneol=native#text/plain

+ 15 - 0
rtl/aarch64/cpuh.inc

@@ -0,0 +1,15 @@
+{
+
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 2016 by the Free Pascal development team.
+
+    CPU specific system unit header file
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}

+ 1 - 1
rtl/aarch64/makefile.cpu

@@ -2,6 +2,6 @@
 # Here we set processor dependent include file names.
 # Here we set processor dependent include file names.
 #
 #
 
 
-CPUNAMES=aarch64 int64p math set setjump setjumph strings stringss
+CPUNAMES=aarch64 int64p math set setjump setjumph cpuh strings stringss
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))
 #
 #

+ 15 - 0
rtl/arm/cpuh.inc

@@ -0,0 +1,15 @@
+{
+
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 2016 by the Free Pascal development team.
+
+    CPU specific system unit header file
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}

+ 1 - 1
rtl/arm/makefile.cpu

@@ -2,5 +2,5 @@
 # Here we set processor dependent include file names.
 # Here we set processor dependent include file names.
 #
 #
 
 
-CPUNAMES=arm math set
+CPUNAMES=arm math set cpuh
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))

+ 15 - 0
rtl/avr/cpuh.inc

@@ -0,0 +1,15 @@
+{
+
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 2016 by the Free Pascal development team.
+
+    CPU specific system unit header file
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}

+ 1 - 1
rtl/avr/makefile.cpu

@@ -2,5 +2,5 @@
 # Here we set processor dependent include file names.
 # Here we set processor dependent include file names.
 #
 #
 
 
-CPUNAMES=
+CPUNAMES= cpuh
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))

+ 27 - 0
rtl/i386/cpuh.inc

@@ -0,0 +1,27 @@
+{
+
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 2016 by the Free Pascal development team.
+
+    CPU specific system unit header file
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}
+
+const
+  { Always i386 or newer }
+  Test8086 : byte = 2;
+  { Always 387 or newer. Emulated if needed. }
+  Test8087 : byte = 3;
+  { will be detected at startup }
+  has_sse_support : boolean = false;
+  has_sse2_support : boolean = false;
+  has_sse3_support : boolean = false;
+  has_mmx_support : boolean = false;
+

+ 1 - 1
rtl/i386/makefile.cpu

@@ -2,6 +2,6 @@
 # Here we set processor dependent include file names.
 # Here we set processor dependent include file names.
 #
 #
 
 
-CPUNAMES=fastmove i386 int64p math set setjump setjumph
+CPUNAMES=fastmove i386 int64p math set setjump setjumph cpuh
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))
 
 

+ 27 - 0
rtl/i8086/cpuh.inc

@@ -0,0 +1,27 @@
+{
+
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 2016 by the Free Pascal development team.
+
+    CPU specific system unit header file
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}
+
+ const
+   { will be detected at startup }
+  { 0=8086/8088/80186/80188/NEC V20/NEC V30, 1=80286, 2=80386 or newer }
+  Test8086 : byte = 0; public name '__Test8086';
+  { will be detected at startup }
+  { 0=NO FPU, 1=8087, 2=80287, 3=80387 or newer }
+  Test8087 : byte = 0;
+  { will be detected at startup }
+  has_sse_support : boolean = false;
+  has_mmx_support : boolean = false;
+

+ 1 - 1
rtl/i8086/makefile.cpu

@@ -2,6 +2,6 @@
 # Here we set processor dependent include file names.
 # Here we set processor dependent include file names.
 #
 #
 
 
-CPUNAMES=hugeptr i8086 int32p int64p math set setjump setjumph
+CPUNAMES=hugeptr i8086 int32p int64p math set setjump setjumph cpuh
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))
 
 

+ 3 - 30
rtl/inc/systemh.inc

@@ -671,37 +671,10 @@ type
 (* means that default handling should be used. *)
 (* means that default handling should be used. *)
   TCtrlBreakHandler = function (CtrlBreak: boolean): boolean;
   TCtrlBreakHandler = function (CtrlBreak: boolean): boolean;
 
 
-const
-{$ifdef cpui386}
-  { Always i386 or newer }
-  Test8086 : byte = 2;
-  { Always 387 or newer. Emulated if needed. }
-  Test8087 : byte = 3;
-  { will be detected at startup }
-  has_sse_support : boolean = false;
-  has_sse2_support : boolean = false;
-  has_sse3_support : boolean = false;
-  has_mmx_support : boolean = false;
-{$endif cpui386}
-{$ifdef cpui8086}
-  { will be detected at startup }
-  { 0=8086/8088/80186/80188/NEC V20/NEC V30, 1=80286, 2=80386 or newer }
-  Test8086 : byte = 0; public name '__Test8086';
-  { will be detected at startup }
-  { 0=NO FPU, 1=8087, 2=80287, 3=80387 or newer }
-  Test8087 : byte = 0;
-  { will be detected at startup }
-  has_sse_support : boolean = false;
-  has_mmx_support : boolean = false;
-{$endif cpui8086}
-{$ifdef cpum68k}
-  Test68000 : byte = 0;      { Must be determined at startup for both }
-  Test68881 : byte = 0;
-{$endif cpum68k}
-{$ifdef cpusparc64}
-  STACK_BIAS = 2047;
-{$endif cpusparc64}
+{ CPU specific stuff }
+{$i cpuh.inc}
 
 
+const
 { max level in dumping on error }
 { max level in dumping on error }
   Max_Frame_Dump : Word = 8;
   Max_Frame_Dump : Word = 8;
 
 

+ 15 - 0
rtl/jvm/cpuh.inc

@@ -0,0 +1,15 @@
+{
+
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 2016 by the Free Pascal development team.
+
+    CPU specific system unit header file
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}

+ 20 - 0
rtl/m68k/cpuh.inc

@@ -0,0 +1,20 @@
+{
+
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 2016 by the Free Pascal development team.
+
+    CPU specific system unit header file
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}
+
+ const
+   Test68000 : byte = 0;      { Must be determined at startup for both }
+   Test68881 : byte = 0;
+

+ 1 - 1
rtl/m68k/makefile.cpu

@@ -2,6 +2,6 @@
 # Here we set processor dependent include file names.
 # Here we set processor dependent include file names.
 #
 #
 
 
-CPUNAMES=m68k lowmath math set 
+CPUNAMES=m68k lowmath math set cpuh
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))
 
 

+ 15 - 0
rtl/mips/cpuh.inc

@@ -0,0 +1,15 @@
+{
+
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 2016 by the Free Pascal development team.
+
+    CPU specific system unit header file
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}

+ 1 - 1
rtl/mips/makefile.cpu

@@ -2,5 +2,5 @@
 # Here we set processor dependent include file names.
 # Here we set processor dependent include file names.
 #
 #
 
 
-CPUNAMES=mips math set
+CPUNAMES=mips math set cpuh
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))

+ 1 - 0
rtl/mipsel/cpuh.inc

@@ -0,0 +1 @@
+{$i ../mips/cpuh.inc}

+ 1 - 1
rtl/mipsel/makefile.cpu

@@ -2,5 +2,5 @@
 # Here we set processor dependent include file names.
 # Here we set processor dependent include file names.
 #
 #
 
 
-CPUNAMES=mips math set
+CPUNAMES=mips math set cpuh
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))

+ 15 - 0
rtl/powerpc/cpuh.inc

@@ -0,0 +1,15 @@
+{
+
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 2016 by the Free Pascal development team.
+
+    CPU specific system unit header file
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}

+ 1 - 1
rtl/powerpc/makefile.cpu

@@ -2,5 +2,5 @@
 # Here we set processor dependent include file names.
 # Here we set processor dependent include file names.
 #
 #
 
 
-CPUNAMES=powerpc math set
+CPUNAMES=powerpc math set cpuh
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))

+ 15 - 0
rtl/powerpc64/cpuh.inc

@@ -0,0 +1,15 @@
+{
+
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 2016 by the Free Pascal development team.
+
+    CPU specific system unit header file
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}

+ 1 - 1
rtl/powerpc64/makefile.cpu

@@ -2,5 +2,5 @@
 # Here we set processor dependent include file names.
 # Here we set processor dependent include file names.
 #
 #
 
 
-CPUNAMES=powerpc64 math set
+CPUNAMES=powerpc64 math set cpuh
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))

+ 15 - 0
rtl/sparc/cpuh.inc

@@ -0,0 +1,15 @@
+{
+
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 2016 by the Free Pascal development team.
+
+    CPU specific system unit header file
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}

+ 1 - 1
rtl/sparc/makefile.cpu

@@ -2,7 +2,7 @@
 # Here we set processor dependent include file names.
 # Here we set processor dependent include file names.
 #
 #
 
 
-CPUNAMES=sparc
+CPUNAMES=sparc cpuh
 # not yet: math set
 # not yet: math set
 
 
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))

+ 18 - 0
rtl/sparc64/cpuh.inc

@@ -0,0 +1,18 @@
+{
+
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 2016 by the Free Pascal development team.
+
+    CPU specific system unit header file
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}
+ const
+   STACK_BIAS = 2047;
+

+ 1 - 1
rtl/sparc64/makefile.cpu

@@ -2,7 +2,7 @@
 # Here we set processor dependent include file names.
 # Here we set processor dependent include file names.
 #
 #
 
 
-CPUNAMES=sparc64
+CPUNAMES=sparc64 cpuh
 # not yet: math set
 # not yet: math set
 
 
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))

+ 15 - 0
rtl/x86_64/cpuh.inc

@@ -0,0 +1,15 @@
+{
+
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 2016 by the Free Pascal development team.
+
+    CPU specific system unit header file
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}

+ 1 - 2
rtl/x86_64/makefile.cpu

@@ -1,8 +1,7 @@
-# $Id: makefile.cpu,v 1.1 2003/01/06 19:40:18 florian Exp $
 #
 #
 # Here we set processor dependent include file names.
 # Here we set processor dependent include file names.
 #
 #
 
 
-CPUNAMES=int64p math set setjump setjumph x86_64
+CPUNAMES=int64p math set setjump setjumph x86_64 cpuh
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))
 CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))
 #
 #