Pārlūkot izejas kodu

* moved the fpc_in_x86_*port* constants to the system unit in cpuinnr.inc in the
i8086, i386 and x86_64 rtl directories. This is done for consistency with
other compiler internal function numbers (which are declared in innr.inc).

git-svn-id: trunk@39367 -

nickysn 7 gadi atpakaļ
vecāks
revīzija
26a3ac3fd4

+ 3 - 0
.gitattributes

@@ -9308,6 +9308,7 @@ 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/cpuinnr.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
@@ -9323,6 +9324,7 @@ 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/cpuinnr.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
@@ -10527,6 +10529,7 @@ 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/cpuinnr.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

+ 1 - 0
rtl/i386/cpuh.inc

@@ -15,6 +15,7 @@
  **********************************************************************}
 
 const
+  {$I cpuinnr.inc}
   { Always i386 or newer }
   Test8086 : byte = 2;
   { Always 387 or newer. Emulated if needed. }

+ 20 - 0
rtl/i386/cpuinnr.inc

@@ -0,0 +1,20 @@
+{
+
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 2018 by the Free Pascal development team.
+
+    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.
+
+ **********************************************************************}
+
+  fpc_in_x86_inportb = fpc_in_cpu_first;
+  fpc_in_x86_inportw = fpc_in_cpu_first+1;
+  fpc_in_x86_inportl = fpc_in_cpu_first+2;
+  fpc_in_x86_outportb = fpc_in_cpu_first+3;
+  fpc_in_x86_outportw = fpc_in_cpu_first+4;
+  fpc_in_x86_outportl = fpc_in_cpu_first+5;

+ 1 - 0
rtl/i8086/cpuh.inc

@@ -15,6 +15,7 @@
  **********************************************************************}
 
  const
+  {$I cpuinnr.inc}
    { 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';

+ 20 - 0
rtl/i8086/cpuinnr.inc

@@ -0,0 +1,20 @@
+{
+
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 2018 by the Free Pascal development team.
+
+    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.
+
+ **********************************************************************}
+
+  fpc_in_x86_inportb = fpc_in_cpu_first;
+  fpc_in_x86_inportw = fpc_in_cpu_first+1;
+//  fpc_in_x86_inportl = fpc_in_cpu_first+2;
+  fpc_in_x86_outportb = fpc_in_cpu_first+3;
+  fpc_in_x86_outportw = fpc_in_cpu_first+4;
+//  fpc_in_x86_outportl = fpc_in_cpu_first+5;

+ 3 - 3
rtl/inc/systemh.inc

@@ -692,6 +692,9 @@ type
 (* means that default handling should be used. *)
   TCtrlBreakHandler = function (CtrlBreak: boolean): boolean;
 
+{ Numbers for routines that have compiler magic }
+{$I innr.inc}
+
 { CPU specific stuff }
 {$i cpuh.inc}
 
@@ -791,9 +794,6 @@ Var
 
 function StackTop: Pointer;
 
-{ Numbers for routines that have compiler magic }
-{$I innr.inc}
-
 
 {****************************************************************************
                         Processor specific routines

+ 0 - 8
rtl/msdos/ports.pp

@@ -47,14 +47,6 @@ var
    portw : tportw;
    portl : tportl;
 
-const
-  fpc_in_x86_inportb = fpc_in_cpu_first;
-  fpc_in_x86_inportw = fpc_in_cpu_first+1;
-//  fpc_in_x86_inportl = fpc_in_cpu_first+2;
-  fpc_in_x86_outportb = fpc_in_cpu_first+3;
-  fpc_in_x86_outportw = fpc_in_cpu_first+4;
-//  fpc_in_x86_outportl = fpc_in_cpu_first+5;
-
 function inportb(port : word) : byte;[internproc:fpc_in_x86_inportb];
 function inportw(port : word) : word;[internproc:fpc_in_x86_inportw];
 //function inportl(port : word) : longint;[internproc:fpc_in_x86_inportl];

+ 3 - 0
rtl/x86_64/cpuh.inc

@@ -13,3 +13,6 @@
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 
  **********************************************************************}
+
+const
+  {$I cpuinnr.inc}

+ 20 - 0
rtl/x86_64/cpuinnr.inc

@@ -0,0 +1,20 @@
+{
+
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 2018 by the Free Pascal development team.
+
+    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.
+
+ **********************************************************************}
+
+  fpc_in_x86_inportb = fpc_in_cpu_first;
+  fpc_in_x86_inportw = fpc_in_cpu_first+1;
+  fpc_in_x86_inportl = fpc_in_cpu_first+2;
+  fpc_in_x86_outportb = fpc_in_cpu_first+3;
+  fpc_in_x86_outportw = fpc_in_cpu_first+4;
+  fpc_in_x86_outportl = fpc_in_cpu_first+5;