<div><font>Hi:</font></div><div><font>I'm new to LLVM backend and is developing for a custom ISA which instruction has two addresses.</font></div><div><font>For example:</font></div><div><font>add $r0,$1 means r0=r0+r1.</font></div><div><font><br></font></div><div><font>Previously I just declare two operands for add as following:</font></div><div><font><br></font></div><div><font>```</font></div><div><font>"add $dst,$src"</font></div><div><font>(outs GPR64:$dst)</font></div><div><font>(ins GPR64:$src)</font></div><div><font>```</font></div><div><br></div><div>However when I tried to add ISel patterns to this instruction with the following pattern:</div><div><br></div><div>```</div><div>(set GPR64:$dst,(add GPR64:$src,GPR64:$dst))</div><div>```</div><div><br></div><div>I received error:</div><div><br></div><div>```</div><div>In ADDRR: Input operand $dst occurs in pattern but not in operands list!</div><div>```</div><div><br></div><div>Not sure about what I did wrong here, any hint would be much appreciate</div><div><br></div><div><includetail><!--<![endif]--></includetail></div>