浏览代码

* empty dummy files
+ [long|set]jmp implemented

florian 22 年之前
父节点
当前提交
736ae20a79
共有 5 个文件被更改,包括 138 次插入0 次删除
  1. 23 0
      rtl/arm/arm.inc
  2. 22 0
      rtl/arm/math.inc
  3. 22 0
      rtl/arm/set.inc
  4. 38 0
      rtl/arm/setjump.inc
  5. 33 0
      rtl/arm/setjumph.inc

+ 23 - 0
rtl/arm/arm.inc

@@ -0,0 +1,23 @@
+{
+    $Id$
+
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 2003 by the Free Pascal development team.
+
+    Processor dependent implementation for the system unit for
+    ARM
+
+    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.
+
+ **********************************************************************}
+{
+  $Log$
+  Revision 1.1  2003-08-21 16:41:54  florian
+    * empty dummy files
+    + [long|set]jmp implemented
+}

+ 22 - 0
rtl/arm/math.inc

@@ -0,0 +1,22 @@
+{
+    $Id$
+
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 2003 by the Free Pascal development team.
+
+    Implementation of mathematical Routines (only for real)
+
+    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.
+
+ **********************************************************************}
+{
+  $Log$
+  Revision 1.1  2003-08-21 16:41:54  florian
+    * empty dummy files
+    + [long|set]jmp implemented
+}

+ 22 - 0
rtl/arm/set.inc

@@ -0,0 +1,22 @@
+{
+    $Id$
+
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 2003 by the Free Pascal development team.
+
+    Include file with set operations called by the compiler
+
+    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.
+
+ **********************************************************************}
+{
+  $Log$
+  Revision 1.1  2003-08-21 16:41:54  florian
+    * empty dummy files
+    + [long|set]jmp implemented
+}

+ 38 - 0
rtl/arm/setjump.inc

@@ -0,0 +1,38 @@
+{
+    $Id$
+
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 2003 by the Free Pascal development team.
+
+    SetJmp and LongJmp implementation for exception handling
+
+    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.
+
+ **********************************************************************}
+
+function setjmp(var S : jmp_buf) : longint;assembler;[Public, alias : 'FPC_SETJMP'];
+  asm
+     stmia   r0,{v1-v6, sl, fp, sp, lr}
+     {!!!! fix me ?}
+  end;
+
+procedure longjmp(var S : jmp_buf;value : longint);assembler;[Public, alias : 'FPC_LONGJMP'];
+  asm
+     mov     ip, r0
+     movs    r0, r1
+     moveq   r0, #1
+     ldmia   ip,{v1-v6, sl, fp, sp, pc}
+  end;
+
+
+{
+  $Log$
+  Revision 1.1  2003-08-21 16:41:54  florian
+    * empty dummy files
+    + [long|set]jmp implemented
+}

+ 33 - 0
rtl/arm/setjumph.inc

@@ -0,0 +1,33 @@
+{
+    $Id$
+
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 2003 by the Free Pascal development team.
+
+    SetJmp/Longjmp declarations
+
+    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.
+
+ **********************************************************************}
+
+type
+   jmp_buf = packed record
+      v1,v2,v3,v4,v5,v6,sl,fp,sp,pc : dword;
+   end;
+   pjmp_buf = ^jmp_buf;
+
+function setjmp(var S : jmp_buf) : longint;
+procedure longjmp(var S : jmp_buf;value : longint);
+
+
+{
+  $Log$
+  Revision 1.1  2003-08-21 16:41:55  florian
+    * empty dummy files
+    + [long|set]jmp implemented
+}