[llvm-dev] What pattern string corresponds to CopyToReg?
Craig Topper via llvm-dev
llvm-dev at lists.llvm.org
Sat Nov 4 19:22:41 PDT 2017
CopyToReg is not handle by patterns. It should be passed through isel
unchanged. It’s part of a special list of ISD opcodes that don’t change in
It will then be turned into a TargetOpcode::COPY in
InstrEmitter::EmitSpecialNode when the DAG is turned into MachineInstrs.
On Sat, Nov 4, 2017 at 7:02 PM Robert Baruch via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
> So there's a DAG that looks like this in the debug output:
> Selecting: t3: ch,glue = CopyToReg t0, Register:i16 %R5,
> In the instruction selection phase, what pattern would that match? I've
> constructed this so far:
> (??? REG16:$dst, i16imm:$src)
> but the problem is, I can't determine what to use as ???. There is an
> ISD::CopyToReg enum value, but I don't know how that translates to the
> string to use in the pattern.
> And more generally, how do I find out from a DAG diagram like the ones
> output by -view-isel-dags which node type corresponds to which pattern
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-dev