[llvm] [RISCV][GISel] Use CCValAssign::getCustomReg for converting f16/f32<->GPR. (PR #105700)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 28 07:19:01 PDT 2024


================
@@ -246,16 +256,29 @@ struct RISCVIncomingValueHandler : public CallLowering::IncomingValueHandler {
   unsigned assignCustomValue(CallLowering::ArgInfo &Arg,
                              ArrayRef<CCValAssign> VAs,
                              std::function<void()> *Thunk) override {
+    const CCValAssign &VA = VAs[0];
+    if ((VA.getLocVT() == MVT::i64 && VA.getValVT() == MVT::f32) ||
+        (VA.getLocVT().isInteger() && VA.getValVT() == MVT::f16)) {
----------------
arsenm wrote:

maybe consider bfloat but I guess that's totally busted in globalisel anyway 

https://github.com/llvm/llvm-project/pull/105700


More information about the llvm-commits mailing list