Previously, tblgen would reject patterns where one of its nested
instructions produced more than one result. These arise when the
instruction definition contains 'outs' as well as 'Defs'. This patch
fixes that by always taking the first result, which is how these
situations are handled in SelectionIDAG.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Comment Actions
It seems that patch does not handle cases of nested instructions, which is the case in our target where this fix is needed.
I've added a testcase now, as requested.
Comment Actions
I mostly see this as making the behavior more opaque by changing based on the specific register classes involved, so I'm not in favor. What do others think?
Comment Actions
I'm not yet familiar enough with instruction selection, so I'll leave the decision to others.