Given a min(max(fptosi, INT_MIN), INT_MAX) with the correct constants, we can now generate a fptosi.sat. But in the arm backend, the constant can be treated as high cost, pulling it out of the basic block in a way that the DAG combine can no longer see it. This teaches it again that it is a low cost constant, not worth hoisting out.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Comment Actions
Hi @dmgreen, I think this change is the cause of CodeGen/ARM/fpclamptosat.ll failing on the clang-x64-windows-msvc build bot.
Comment Actions
Yeah, I saw. I'm not really sure what's going on, I'm not sure why it being windows matters. I've tried to fix it once to no avail, and have had to get a windows build going to see what is different. I'll revert the patch in the meantime and recommit once I can figure out why it's not working as intended.