* draft for qword mul

This commit is contained in:
florian 2004-03-14 21:45:11 +00:00
parent 9594866b30
commit bca9da0ec7
2 changed files with 26 additions and 3 deletions

View File

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

View File

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