<div dir="ltr">llvm thinks so.<div><br></div><div>You can easily see what it actually does in cases like this.</div><div><br></div><div>echo 'int foo(int a){return 23 * a;}' >undeftimes.c<br></div><div>clang -S -emit-llvm undeftimes.c<br></div><div>vi undeftimes.ll # change the 23 to undef</div><div>llc undeftimes.ll<br></div><div>less undeftimes.s</div><div><br></div><div>Personally, I find ARM (or other RISC) code far easier to follow than x86, so I generally add a "-march=arm" to the llc step if I'm on an x86 host, but that's personal preference.</div><div><br></div><div><div>foo:</div><div><span class="" style="white-space:pre">  </span>push<span class="" style="white-space:pre">      </span>{r0}<br></div><div><span class="" style="white-space:pre">     </span>mov<span class="" style="white-space:pre">       </span>r0, #0</div><div><span class="" style="white-space:pre">     </span>add<span class="" style="white-space:pre">       </span>sp, sp, #4</div><div><span class="" style="white-space:pre"> </span>mov<span class="" style="white-space:pre">       </span>pc, lr</div></div><div><br></div><div>Yep .. it just returns 0.</div><div><br></div><div>Idle question, if anyone is reading still ... how do you get llc to do -Os or -Oz? The docs say the argument must be an integer, and anything other than 0..3 is rejected. (in fact .. bug report ... 10 thru 39 are also silently accepted as are 100 thru 399 etc)</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Sep 2, 2016 at 3:33 PM, Soham Chakraborty via llvm-dev <span dir="ltr"><<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">What is the value of undef * 0 in LLVM?<br>
<br>
According to its definition in  the LLVM IR reference;<br>
<br>
"The string ‘undef‘ can be used anywhere a constant is expected..."<br>
<br>
Am I correct to say that undef * 0 = 0 following this definition?<br>
<br>
Best Regards,<br>
soham<br>
______________________________<wbr>_________________<br>
LLVM Developers mailing list<br>
<a href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/<wbr>mailman/listinfo/llvm-dev</a><br>
</blockquote></div><br></div>