The pattern for the copy integer to reg is:<br><br>let isReMaterializable = 1,<br>isAsCheapAsAMove = 1 in<br>def MOVIRdK : FRdK<0b1110,<br>                  (outs GPR8:$dst),<br>                  (ins i8imm:$src),<br>                  "movi\t$dst, $src",<br>
                  [(set GPR8:$dst, imm:$src)]>;<br><br>The xor pattern is :<br><br>let isCommutable = 1,<br>isTwoAddress = 1 in<br>def XORRdRr : FRdRr<0b0010,<br>                    0b01,<br>                    (outs GPR8:$dst),<br>
                    (ins GPR8:$src1, GPR8:$src2),<br>
                    "xor\t$dst, $src2",<br>                    [(set GPR8:$dst, (xor GPR8:$src1, GPR8:$src2))]>;<br><br>