Hi Eli,<div><br><div>Ok, I understand the SSA meaning is intact regardless of the representation.</div><div>Thanks for the interesting clarification on the demo behavior regarding asserts!</div><div><br></div><div>-Jun</div>
<div><br><div class="gmail_quote">On Mon, Aug 8, 2011 at 12:15 PM, Eli Friedman <span dir="ltr"><<a href="mailto:eli.friedman@gmail.com">eli.friedman@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><div></div><div class="h5">On Sun, Aug 7, 2011 at 9:01 PM, Jun Mendoza <<a href="mailto:junmendoza78@gmail.com">junmendoza78@gmail.com</a>> wrote:<br>
> Hi Folks,<br>
> I noticed that recently in the online code gen demo that generating the<br>
> unique temporaries have been modified.<br>
> I don't believe i changed any options. (C++, demangle names, no<br>
> optimization)<br>
><br>
> Where:<br>
> if(x >= y){<br>
> }<br>
><br>
> Previously Compiles to:<br>
> %0 = load i32* %x, align 4<br>
> %1 = load i32* %y, align 4<br>
> %2 = icmp sge i32 %0, %1<br>
> br i1 %2, label %bb, label %bb1<br>
> bb:<br>
> ; true goes here<br>
><br>
> Currently Compiles to:<br>
><br>
> %tmp = load i32* %x<br>
> %tmp1 = load i32* %y<br>
> %cmp = icmp sge i32 %tmp, %tmp1<br>
> br i1 %cmp, label %if.then, label %if.end<br>
><br>
> if.then:<br>
> ; true goes here<br>
><br>
> If this is the case then is there a mailing list or Status update page that<br>
> reflects this behavior?<br>
><br>
> My question may seem trivial however, im still in llvm exploration mode :)<br>
><br>
> Im working on a compiler that generates LLVM IR and for the moment i dont<br>
> use the code gen API. I rely on the Assembly manual and demo for reference<br>
> (Although at some point i will need to use the API in order to take full<br>
> advantage).<br>
<br>
</div></div>Yes, we recently replaced the compiler on the demo page.  Both syntax<br>
forms have the same meaning; changing the name of anything that is not<br>
a global does not affect code generation.  Giving the values names<br>
tends to be a bit more convenient for compiler developers to read.<br>
Most values are named in builds with asserts enabled, but are not<br>
named in builds without assertions for performance reasons.  I guess<br>
the build the demo page is using is a build with assertions enabled at<br>
the moment.<br>
<font color="#888888"><br>
-Eli<br>
</font></blockquote></div><br></div></div>