<div dir="ltr">I think it's really only used by tablegen because of this macroized struct definition. Seems like since the majority of the struct is in a macro as it is it might make more sense to just give tablegen its own full struct definition.<div>
<br></div><div><div>struct InstructionSpecifier {</div><div>  uint8_t modifierType;</div><div>  uint8_t modifierBase;</div><div><br></div><div>  /* The macro below must be defined wherever this file is included. */</div><div>
  INSTRUCTION_SPECIFIER_FIELDS</div><div>};</div></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Dec 26, 2013 at 1:56 PM, Chandler Carruth <span dir="ltr"><<a href="mailto:chandlerc@google.com" target="_blank">chandlerc@google.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 class="gmail_extra"><div class="im"><br><div class="gmail_quote">On Thu, Dec 26, 2013 at 1:14 PM, Reid Kleckner <span dir="ltr"><<a href="mailto:rnk@google.com" target="_blank">rnk@google.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">  I don't think moving to include/llvm/TableGen is the right way to go.  It's not like the X86 disassembler links against a tablegen library.  The only correct layering without adding new libraries is moving it to include/llvm/Support, since both llvm-tblgen and the x86 target link against Support.  I don't really like that arrangement, but we already have these kind of enums-and-types-only headers like ELF.h and COFF.h in Support.</blockquote>

</div><br></div>My question is -- why does *tablegen* need this header, rather than it simply generating code that uses the header? I suspect the real problem is that the header contains information which should really be in a .td file and thus an input to the tablegen backend.</div>

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