Compared to the attempt in bdcc6d3d2638b3a2c99ab3b9bfaa9c02e584993a,
this uses intermediate generic instructions. This does create more
work for targets to support it though.
Details
Diff Detail
Event Timeline
Hi Matt,
Can you foresee any additional use to selectCommon? I'm not familiar with Global Isel that much, but it feels this is easier to implement, but may not be a good long term strategy.
--renato
The 3 big things SelectionDAG uses for this are in the same category. read_register, write_register and inline asm. The rest doesn't really apply. The alternative is every target needs to implement the exact same string parsing which is unneeded duplication
Right, then perhaps a more strict name would help this not turn into a medusa of left over cases. :)
LGTM, thanks!
Since you're introducing a new opcode for this, can't we implement a Lower action? Daniel mentioned a while ago that he also prefers having targets explicitly opt-in to using default lowerings/expansions.
Can you add G_READ_REGISTER and G_WRITE_REGISTER to docs/GlobalISel/GenericOpcode.rst?