Add IRTranslator support to translate these known intrinsics into GISel opcodes.
Diff Detail
- Repository
- rL LLVM
Event Timeline
| include/llvm/Support/TargetOpcodes.def | ||
|---|---|---|
| 470–471 | Should we really preserve this SelectionDAGism or just make the zero is undef bit be an immediate operand to the instruction like the intrinsic? | |
| include/llvm/Support/TargetOpcodes.def | ||
|---|---|---|
| 470–471 | I think having two opcodes is explicit and is a little easier to work with - we don't usually have immediates in GISel instructions - and constants are encoded through a reg defining G_CONSTANT which makes it a little inconvenient to use. It probably also might make importing tablegen patterns slightly easier. | |
| test/TableGen/trydecode-emission.td | ||
|---|---|---|
| 37 | Why are these tests changing? | |
| test/TableGen/trydecode-emission.td | ||
|---|---|---|
| 37 | I believe these changes are due to increase in the number of opcodes. | |
| include/llvm/Support/TargetOpcodes.def | ||
|---|---|---|
| 470–471 | We'll need it for legalization. Typically only one or the other is legal and we can't do context-dependent legalization. | |
| test/TableGen/trydecode-emission.td | ||
| 37 | We hit this out-of-tree a couple weeks ago, most of the changes are because the TryDecode/Decode are one byte larger and those are one byte larger because there are more opcodes before InstA. | |
| 39–40 | The new bytes should be checked with {{[0-9]+}} | |
Should we really preserve this SelectionDAGism or just make the zero is undef bit be an immediate operand to the instruction like the intrinsic?