Displaying 4 results from an estimated 4 matches for "__modti3".
Did you mean:
  __moddi3
  
2018 Dec 01
2
Where's the optimiser gone? (part 5.a): missed tail calls, and more...
...ed code:
div: # @div
    push  rbp         |
    mov   rbp, rsp    |
    call  __divti3    |    jmp   __divti3
    pop   rbp         |
    ret               |
__int128 mod(__int128 foo, __int128 bar)
{
    return foo % bar;
}
mod: # @mod
    push  rbp         |
    mov   rbp, rsp    |
    call  __modti3    |    jmp   __modti3
    pop   rbp         |
    ret               |
__int128 mul(__int128 foo, __int128 bar)
{
    return foo * bar;
}
mul: # @mul
    push  rbp
    mov   rbp, rsp
    mov   r8, rdx
    mov   rax, rdx
    mul   rdi
    imul  rsi, r8
    add   rdx, rsi
    imul  rcx, rdi
    ad...
2018 Jan 30
0
[compiler-rt] Support 128 bits soft-floating point without int128_t support
On 30 January 2018 at 14:12, Kito Cheng via llvm-dev
<llvm-dev at lists.llvm.org> wrote:
> Hi all:
>
> I'm porting RISC-V[1] for compiler-rt recently, and I've got a problem
> when adding soft float routine for rv32, RISC-V ABI required 128 bits
> bits for long double, but it's implemented by int128_t, however rv32
> don't support __int128_t.
>
> Of
2018 Jan 30
2
[compiler-rt] Support 128 bits soft-floating point without int128_t support
Hi all:
I'm porting RISC-V[1] for compiler-rt recently, and I've got a problem
when adding soft float routine for rv32, RISC-V ABI required 128 bits
bits for long double, but it's implemented by int128_t, however rv32
don't support __int128_t.
Of cause, it not hard thing to support __int128_t by overriding
TargetInfo::hasInt128Type for LLVM, but its will cause some ABI
2017 Oct 07
2
Bug 20871 -- is there a fix or work around?
Ignore the suggested fix in my earlier post. How about this?
diff --git a/lib/Target/X86/X86ISelLowering.cpp b/lib/Target/X86/X86ISelLowering.cpp
index 20c81c3..b8ebf42 100644
--- a/lib/Target/X86/X86ISelLowering.cpp
+++ b/lib/Target/X86/X86ISelLowering.cpp
@@ -1632,10 +1632,11 @@ X86TargetLowering::X86TargetLowering(const X86TargetMachine &TM,
   if (!Subtarget.is64Bit()) {
     // These