<div dir="ltr">I believe BaseOpc is the opcode for 'add/xor/and reg/mem, reg' form, BaseOpc2 is the opcode for the 'add/xor/and reg, reg/mem' form, BaseOpc4 is the opcode for the 'add/xor/and AL, imm form'.<div>
<br></div><div>If you want to look for free opcodes you're better of looking at the blank spots in the official Intel documentation.</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Sun, Jun 22, 2014 at 7:43 PM, pratik dand <span dir="ltr"><<a href="mailto:pratikdand143@gmail.com" target="_blank">pratikdand143@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div><div>Dear,<br><br></div>I am going through the lib/Target/X86/X86InstrArithmetic.td file where there is a definition for a multiclass as follows<br>
<br>multiclass ArithBinOp_F<bits<8> BaseOpc, bits<8> BaseOpc2, bits<8> BaseOpc4,<br>
                        string mnemonic, Format RegMRM, Format MemMRM,<br>                        SDNode opnode,<br>                        bit CommutableRR, bit ConvertibleToThreeAddress><br></div><br>This for arithmetic operators like ADD,XOR,AND etc. <br>

<br></div>Can anyone throw some light on the three different opcodes used namely BaseOpc , BasecOp2, BaseOpc4 ?<br></div>Also, I am looking for some free opcodes to assign to new instructions, If someone could guide on this then It would be great?<span class="HOEnZb"><font color="#888888"><br>

<br>Pratik<div><div><div><div><div><div><br></div>
</div></div></div></div></div></font></span></div>
<br>_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:LLVMdev@cs.uiuc.edu">LLVMdev@cs.uiuc.edu</a>         <a href="http://llvm.cs.uiuc.edu" target="_blank">http://llvm.cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a><br>
<br></blockquote></div><br><br clear="all"><div><br></div>-- <br>~Craig
</div>