-
Notifications
You must be signed in to change notification settings - Fork 14.3k
[WebAssembly] Fix signatures of frexpf family of libcalls #133289
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Not sue where the tests are for this stuff.. |
@llvm/pr-subscribers-backend-webassembly Author: Sam Clegg (sbc100) ChangesFixes: emscripten-core/emscripten#23997 Full diff: https://github.com/llvm/llvm-project/pull/133289.diff 1 Files Affected:
diff --git a/llvm/lib/Target/WebAssembly/WebAssemblyRuntimeLibcallSignatures.cpp b/llvm/lib/Target/WebAssembly/WebAssemblyRuntimeLibcallSignatures.cpp
index 94d80f19e48af..ce795d3dedc6a 100644
--- a/llvm/lib/Target/WebAssembly/WebAssemblyRuntimeLibcallSignatures.cpp
+++ b/llvm/lib/Target/WebAssembly/WebAssemblyRuntimeLibcallSignatures.cpp
@@ -278,9 +278,9 @@ struct RuntimeLibcallSignatureTable {
Table[RTLIB::LDEXP_F32] = f32_func_f32_i32;
Table[RTLIB::LDEXP_F64] = f64_func_f64_i32;
Table[RTLIB::LDEXP_F128] = i64_i64_func_i64_i64_i32;
- Table[RTLIB::FREXP_F32] = f32_func_f32_i32;
- Table[RTLIB::FREXP_F64] = f64_func_f64_i32;
- Table[RTLIB::FREXP_F128] = i64_i64_func_i64_i64_i32;
+ Table[RTLIB::FREXP_F32] = f32_func_f32_iPTR;
+ Table[RTLIB::FREXP_F64] = f64_func_f64_iPTR;
+ Table[RTLIB::FREXP_F128] = i64_i64_func_i64_i64_iPTR;
Table[RTLIB::MODF_F32] = f32_func_f32_iPTR;
Table[RTLIB::MODF_F64] = f64_func_f64_iPTR;
Table[RTLIB::MODF_F128] = i64_i64_func_i64_i64_iPTR;
|
LGTM too but if you want to improve the tests, they are in llvm/test/CodeGen/WebAssembly/libcalls.ll. It looks like it covers frexp but It actually doesn't look like we have coverage for memory64 at all. |
I looked into modifying What is the best approach here? Clone it and use auto-updated? Or stop using auto-update and manually encode the differences? I'm think a clone will be easier in the long run, even though it involves some duplication. |
Cloning seems OK. |
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/23/builds/8940 Here is the relevant piece of the build log for the reference
|
Fixes: emscripten-core/emscripten#23997