florian 21 лет назад
Родитель
Сommit
bca9da0ec7
2 измененных файлов с 26 добавлено и 3 удалено
  1. 5 2
      rtl/arm/arm.inc
  2. 21 1
      rtl/arm/int64p.inc

+ 5 - 2
rtl/arm/arm.inc

@@ -117,7 +117,10 @@ end;
 
 {
   $Log$
-  Revision 1.5  2004-01-21 23:12:07  florian
+  Revision 1.6  2004-03-14 21:45:11  florian
+    * draft for qword mul
+
+  Revision 1.5  2004/01/21 23:12:07  florian
     + get_caller_addr/frame implemented
 
   Revision 1.4  2004/01/20 21:01:57  florian
@@ -135,4 +138,4 @@ end;
   Revision 1.1  2003/08/21 16:41:54  florian
     * empty dummy files
     + [long|set]jmp implemented
-}
+}

+ 21 - 1
rtl/arm/int64p.inc

@@ -14,8 +14,28 @@
 
  **********************************************************************}
 
+{!!!!
+function fpc_mul_qword(f1,f2 : qword;checkoverflow : longbool) : qword;[public,alias: 'FPC_MUL_QWORD']; {$ifdef hascompilerproc} compilerproc; {$endif}
+asm
+  mov r6,#0
+  umull r4,r5,r0,r2
+  umlal r5,r6,r0,r3
+  { overflow? }
+  or r0,r1,r3
+  umlal r5,r6,r1,r2
+  { check for overflow }
+  ors r6,r6,r0
+  mov r0,r4
+  mov r1,r5
+end;
+}
+
+
 {
   $Log$
-  Revision 1.1  2003-11-03 17:28:21  florian
+  Revision 1.2  2004-03-14 21:45:11  florian
+    * draft for qword mul
+
+  Revision 1.1  2003/11/03 17:28:21  florian
     * initial revision
 }