<div dir="ltr"><div class="gmail_default"><font face="arial, helvetica, sans-serif">`</font><span style="font-family:Menlo;font-variant-ligatures:no-common-ligatures;color:rgb(0,0,0);font-size:11px">grep -r "builtin_constant_p"</span><font face="arial, helvetica, sans-serif">` under tool/clang shows some hints. For example, check VisitConditionalOperator if you want.</font></div>







<div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">HTH,</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">chenwj</div>







</div><div class="gmail_extra"><br><div class="gmail_quote">2017-10-27 11:22 GMT+08:00 Bharathi Seshadri via cfe-dev <span dir="ltr"><<a href="mailto:cfe-dev@lists.llvm.org" target="_blank">cfe-dev@lists.llvm.org</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<br>
I'm trying to understand where __builtin_constant_p is folded in the<br>
front-end. It appears to be handled differently when placed in an if<br>
condition or in a conditional expression.<br>
<br>
In the example below, I see that it is folded in<br>
CodeGenFunction::<wbr>EmitBuiltinExpr() in CGBuiltin.cpp<br>
int x = __builtin_constant_p(100);<br>
<br>
But for cases like the ones below, it appears to be folded much<br>
earlier and it doesn't reach EmitBuiltinExpr().<br>
<br>
int x = __builtin_constant_p(100)? 10: 20;<br>
<br>
if (__builtin_constant_p(100)) { ... }<br>
<br>
Any pointers on what functions to look up for the above case would be<br>
very helpful.<br>
<br>
Thanks,<br>
Bharathi<br>
______________________________<wbr>_________________<br>
cfe-dev mailing list<br>
<a href="mailto:cfe-dev@lists.llvm.org">cfe-dev@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/<wbr>mailman/listinfo/cfe-dev</a><br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div>Wei-Ren Chen (陳韋任)<br>Homepage: <a href="https://people.cs.nctu.edu.tw/~chenwj" target="_blank">https://people.cs.nctu.edu.tw/~chenwj</a></div></div></div>
</div>