<div dir="ltr"><div>Thanks Meador,<br><br></div>The confusion point for me is that, does ! as an operator (bang operator) add any meaning to the strconcat?<br><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Jul 23, 2015 at 5:25 PM, Meador Inge <span dir="ltr"><<a href="mailto:meadori@gmail.com" target="_blank">meadori@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Thu, Jul 23, 2015 at 9:53 AM, Sky Flyer <<a href="mailto:skylake007@googlemail.com">skylake007@googlemail.com</a>> wrote:<br>
<br>
> Hello all,<br>
><br>
> I don't find anything helping me understand the llvm bang operator. In the<br>
> llvm TableGen language reference, it only says:<br>
><br>
> 'TableGen also has “bang operators” which have a wide variety of meanings:'<br>
><br>
> I would be very thankful if someone can explain it to me.<br>
><br>
> e.g. what does "!strconcat" or "!if" mean?<br>
<br>
</span>Those are defined in the "Language Introduction":<br>
<br>
<a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_docs_TableGen_LangIntro.html-23tablegen-2Dvalues-2Dand-2Dexpressions&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=Mfk2qtn1LTDThVkh6-oGglNfMADXfJdty4_bhmuhMHA&m=v2U_BQ2fNhLqnVR8ROtQ4sjY5KDhLcWa4DizlhilmV8&s=dQ-6-NCTVhZZTuV_2RS3eaStz-NbJxlsNji5JNn59Ak&e=" rel="noreferrer" target="_blank">http://llvm.org/docs/TableGen/LangIntro.html#tablegen-values-and-expressions</a><br>
<br>
Not sure why we have things split into three separate pages:<br>
<br>
  * TableGen - <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_docs_TableGen_index.html&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=Mfk2qtn1LTDThVkh6-oGglNfMADXfJdty4_bhmuhMHA&m=v2U_BQ2fNhLqnVR8ROtQ4sjY5KDhLcWa4DizlhilmV8&s=XlY8OMAMAclO6N95hOgXobQsmFNxvdeSEkw3r65yvSo&e=" rel="noreferrer" target="_blank">http://llvm.org/docs/TableGen/index.html</a><br>
<br>
  * Introduction - <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_docs_TableGen_LangIntro.html&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=Mfk2qtn1LTDThVkh6-oGglNfMADXfJdty4_bhmuhMHA&m=v2U_BQ2fNhLqnVR8ROtQ4sjY5KDhLcWa4DizlhilmV8&s=PsZFc3g4obJtUdMSVfqJrJG139KZx1arhxHsYCMcb-g&e=" rel="noreferrer" target="_blank">http://llvm.org/docs/TableGen/LangIntro.html</a><br>
<br>
  * Reference - <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_docs_TableGen_LangRef.html&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=Mfk2qtn1LTDThVkh6-oGglNfMADXfJdty4_bhmuhMHA&m=v2U_BQ2fNhLqnVR8ROtQ4sjY5KDhLcWa4DizlhilmV8&s=cW3SrMRAvIvkd0kD5G83pZ79moU0xfkgxV9RC1JyeZ0&e=" rel="noreferrer" target="_blank">http://llvm.org/docs/TableGen/LangRef.html</a><br>
<br>
I consistently find myself lost between those pages.<br>
<span class="HOEnZb"><font color="#888888"><br>
-- Meador<br>
</font></span></blockquote></div><br></div>