https://bugs.llvm.org/show_bug.cgi?id=37934
Bug ID: 37934
Summary: Invalid wasm signature for varargs functions that that
fp128
Product: libraries
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: enhancement
Priority: P
Component: Backend: WebAssembly
Assignee: unassignedb...@nondot.org
Reporter: s...@chromium.org
CC: llvm-bugs@lists.llvm.org
The following C code produces an invalid wasm object file:
```
void test1(long double h, ...);
int main () {
test1 (0.0L, 1);
return 0;
}
```
pr44942.o:00000b8: error: type mismatch in call, expected [i64, i64, i32] but
got [i64, i32]
With the follow bitcode (that looks correct to me):
```
; Function Attrs: noinline nounwind optnone
define hidden i32 @main() #0 {
entry:
%retval = alloca i32, align 4
store i32 0, i32* %retval, align 4
call void (fp128, ...) @test1(fp128 0xL00000000000000000000000000000000, i32
1)
ret i32 0
}
declare void @test1(fp128, ...) #1
```
--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs