Correct the Operand index when convert STRICT_FPOWI to FPOW.
(the old code miss considering the chain operand of STRICT_FPOWI, will cause crash.)
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp | ||
---|---|---|
4100–4101 | We should generate STRICT_SINT_TO_FP and STRICT_FPOWI for strict node and push the output chain into Results. |
llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp | ||
---|---|---|
4100–4101 | Here is already STRICT_FPOWI, and the Target has no libcall for STRICT_FPOWI |
llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp | ||
---|---|---|
4100–4101 | Oh, I meant STRICT_FPOW... |
llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp | ||
---|---|---|
4100–4101 | En., Make sense : ) |
llvm/test/CodeGen/X86/float-strict-powi-convert.ll | ||
---|---|---|
3 | -disable-strictnode-mutation. X86 supports strict FP by default. This option is used for targets only support it partly. |
We should generate STRICT_SINT_TO_FP and STRICT_FPOWI for strict node and push the output chain into Results.