diff options
author | Tristan Gingold <tgingold@free.fr> | 2015-01-22 04:41:41 +0100 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2015-01-22 04:41:41 +0100 |
commit | bcd53686ad09a434a81fc8ccf092ed16f454cd5c (patch) | |
tree | 6620d84eaecba8401d77ec527e329d82ed5c4cfb /src/ortho/mcode | |
parent | 7bd624acc9a4b1c3e8b362e3eb586e4a66b28a5d (diff) | |
download | ghdl-bcd53686ad09a434a81fc8ccf092ed16f454cd5c.tar.gz ghdl-bcd53686ad09a434a81fc8ccf092ed16f454cd5c.tar.bz2 ghdl-bcd53686ad09a434a81fc8ccf092ed16f454cd5c.zip |
ortho_code-x86-abi: add moddi3 intrinsic for jit.
Diffstat (limited to 'src/ortho/mcode')
-rw-r--r-- | src/ortho/mcode/ortho_code-x86-abi.adb | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/ortho/mcode/ortho_code-x86-abi.adb b/src/ortho/mcode/ortho_code-x86-abi.adb index 81e3b2099..36072ab3a 100644 --- a/src/ortho/mcode/ortho_code-x86-abi.adb +++ b/src/ortho/mcode/ortho_code-x86-abi.adb @@ -761,6 +761,9 @@ package body Ortho_Code.X86.Abi is function Muldi3 (A, B : Long_Integer) return Long_Integer; pragma Import (C, Muldi3, "__muldi3"); + function Moddi3 (A, B : Long_Integer) return Long_Integer; + pragma Import (C, Moddi3, "__moddi3"); + procedure Chkstk (Sz : Integer); pragma Import (C, Chkstk, "__chkstk"); @@ -775,6 +778,10 @@ package body Ortho_Code.X86.Abi is (Ortho_Code.X86.Emits.Intrinsics_Symbol (Ortho_Code.X86.Intrinsic_Div_Ov_I64), Divdi3'Address); + Binary_File.Memory.Set_Symbol_Address + (Ortho_Code.X86.Emits.Intrinsics_Symbol + (Ortho_Code.X86.Intrinsic_Mod_Ov_I64), + Moddi3'Address); if X86.Flags.Flag_Alloca_Call then Binary_File.Memory.Set_Symbol_Address (Ortho_Code.X86.Emits.Chkstk_Symbol, Chkstk'Address); |