We work with @rogfer01 from BSC to come out this patch. Authored-by: Roger Ferrer Ibanez <rofirrim@gmail.com> Co-Authored-by: ShihPo Hung <shihpo.hung@sifive.com>
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
| llvm/lib/Target/RISCV/RISCVISelLowering.cpp | ||
|---|---|---|
| 1083 | You can use Op.getVTList() here to get the original VTs without needing to recreate it. | |
| llvm/include/llvm/IR/IntrinsicsRISCV.td | ||
|---|---|---|
| 219 | Can we make this ExtendOperand = 2 and add 1 when we use it in LowerIntrinsic_W_CHAIN? It's a little confusing to have to account for the chain operand of the SelectionDAG representation here. It's already a little confusing that we're accounting for the intrinsic number operand of SelectionDAG but at least that's a consistent rule. | |
Let ExtendOperand direct really need to extend a operand.
Correct get operands when we use it in LowerIntrinsic_W_CHAIN
| llvm/lib/Target/RISCV/RISCVISelLowering.cpp | ||
|---|---|---|
| 1076 | I think this if needs to be based on II->ExtendedOperand before adding 1 to it. Otherwise its guaranteed to always be true. | |
Can we make this ExtendOperand = 2 and add 1 when we use it in LowerIntrinsic_W_CHAIN? It's a little confusing to have to account for the chain operand of the SelectionDAG representation here.
It's already a little confusing that we're accounting for the intrinsic number operand of SelectionDAG but at least that's a consistent rule.