-
Notifications
You must be signed in to change notification settings - Fork 146
Not fully support long double
on some platform
#931
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
Comments
I would love to work on this issue: test case 1 (https://godbolt.org/z/5McnErs65) (struct {long double})
Note here mlir::cir::IntType::get I presume, is specialized for int, I couldn't verify, ( I am new to tablegen; could you point to test case 2 ( https://godbolt.org/z/8Y85148EY) (global long double)
Leads
|
@mvvsmk Thanks for trying to solve this issue!
You can find the TableGen definition at clangir/clang/include/clang/CIR/Dialect/IR/CIRTypes.td Lines 37 to 38 in 2ca12fe
Indeed. The
Actually the implementation may require more work. The clangir/clang/lib/CIR/Dialect/IR/CIRTypes.cpp Lines 790 to 792 in 2ca12fe
Then you could start emitting this new
I believe the story behind test case 1 is more subtle. The direct cause of test case 1 is not missing fp128 support, but the lack of support for 128-bit integers. This is already tracked in #953 . |
…d (in CIR + Direct to LLVM) (llvm#966) Fixes llvm/clangir#931 Added type definition in CIRTypes.td, created appropriate functions for the same in CIRTypes.cpp like getPreferredAlignment, getPreferredAlignment, etc. Optionally added lowering in LowerToLLVM.cpp
For target
x86_64-none-linux
Failed assert from
clangir/mlir/include/mlir/IR/StorageUniquerSupport.h:180
https://godbolt.org/z/5McnErs65
stacktrace
@smeenai also gave another example in the discord for
aarch64-none-linux-android21
. https://godbolt.org/z/8Y85148EYThe text was updated successfully, but these errors were encountered: