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

git-svn-id: trunk@37542 -
This commit is contained in:
florian 2017-11-01 16:33:30 +00:00
parent e5dad9c98c
commit ff86c80176
29 changed files with 258 additions and 44 deletions

14
.gitattributes vendored
View File

@ -8529,6 +8529,7 @@ rtl/Makefile svneol=native#text/plain
rtl/Makefile.fpc svneol=native#text/plain
rtl/README.txt 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/makefile.cpu 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/armdefines.inc svneol=native#text/plain
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/int64p.inc 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/xbios.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/makefile.cpu 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/unxfunc.inc 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/i386.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/stringss.inc 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/i8086.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/sysres.inc 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/jvm.inc 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/syscallh.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/lowmath.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/system.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/makefile.cpu 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/strings.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/makefile.cpu 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/system.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/makefile.cpu 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/stringss.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/makefile.cpu 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/sighndh.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/makefile.cpu 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/strings.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/makefile.cpu 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/winres.inc svneol=native#text/plain
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/makefile.cpu svneol=native#text/plain
rtl/x86_64/math.inc svneol=native#text/plain

15
rtl/aarch64/cpuh.inc Normal file
View File

@ -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.
**********************************************************************}

View File

@ -2,6 +2,6 @@
# 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))
#

15
rtl/arm/cpuh.inc Normal file
View File

@ -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.
**********************************************************************}

View File

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

15
rtl/avr/cpuh.inc Normal file
View File

@ -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.
**********************************************************************}

View File

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

27
rtl/i386/cpuh.inc Normal file
View File

@ -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;

View File

@ -2,6 +2,6 @@
# 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))

27
rtl/i8086/cpuh.inc Normal file
View File

@ -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;

View File

@ -2,6 +2,6 @@
# 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))

View File

@ -671,37 +671,10 @@ type
(* means that default handling should be used. *)
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_Frame_Dump : Word = 8;

15
rtl/jvm/cpuh.inc Normal file
View File

@ -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
rtl/m68k/cpuh.inc Normal file
View File

@ -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;

View File

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

15
rtl/mips/cpuh.inc Normal file
View File

@ -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.
**********************************************************************}

View File

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

1
rtl/mipsel/cpuh.inc Normal file
View File

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

View File

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

15
rtl/powerpc/cpuh.inc Normal file
View File

@ -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.
**********************************************************************}

View File

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

15
rtl/powerpc64/cpuh.inc Normal file
View File

@ -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.
**********************************************************************}

View File

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

15
rtl/sparc/cpuh.inc Normal file
View File

@ -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.
**********************************************************************}

View File

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

18
rtl/sparc64/cpuh.inc Normal file
View File

@ -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;

View File

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

15
rtl/x86_64/cpuh.inc Normal file
View File

@ -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.
**********************************************************************}

View File

@ -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.
#
CPUNAMES=int64p math set setjump setjumph x86_64
CPUNAMES=int64p math set setjump setjumph x86_64 cpuh
CPUINCNAMES=$(addsuffix .inc,$(CPUNAMES))
#