aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/MachineBasicBlock.cpp
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@sifive.com>2024-12-10 22:21:49 -0800
committerGitHub <noreply@github.com>2024-12-10 22:21:49 -0800
commit839c8217b989a22908fdd1ec48105ff22d655fb2 (patch)
tree3141a825916a58c35412596db397a8ec842f5a73 /llvm/lib/CodeGen/MachineBasicBlock.cpp
parent5797ed660ab0c1847bd6229af262f841b2f753ae (diff)
downloadllvm-839c8217b989a22908fdd1ec48105ff22d655fb2.zip
llvm-839c8217b989a22908fdd1ec48105ff22d655fb2.tar.gz
llvm-839c8217b989a22908fdd1ec48105ff22d655fb2.tar.bz2
[LegalizeTypes][RISCV][X86] Legalize FP_ROUND to libcall in SoftPromoteHalfRes_FP_ROUND if the input type is softened. (#119481)
Previously we created an FP_TO_FP16 and legalized it in SoftenFloatOp_FP_ROUND. This caused i16 to be sent to call lowering instead of f16. This results in the ABI not being followed if f16 is supposed to be passed in a different register than i16. Looking at the libgcc binary for the library function it appears the value is returned in xmm0 so the X86 test was being miscompiled before. Fixes #107607.
Diffstat (limited to 'llvm/lib/CodeGen/MachineBasicBlock.cpp')
0 files changed, 0 insertions, 0 deletions