This ports over the test cases half-convert.ll and implements patterns or RISCVISelLowering.cpp changes for all of the most straight-forward cases (those that don't require changes outside of lib/Target/RISCV). The remaining cases and noted poor codegen for saturating conversions will be handled in follow-up patches.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Comment Actions
Maybe we are now confronted with a general issue. Are there any other operations that cannot be converted into f32 in front-end? I think you have noticed comparison and bf16-to-integer conversion.
llvm/lib/Target/RISCV/RISCVISelLowering.cpp | ||
---|---|---|
2449 | I don't think we need to use getSimpleValueType() here, we can use getValueType() and make the line shorter |
I don't think we need to use getSimpleValueType() here, we can use getValueType() and make the line shorter