<p dir="ltr">Hi Vladimir,</p>
<p dir="ltr">Just curious - in the ad files you didn&#39;t put ins_cost() for most of the new matches, is that intentional?</p>
<p dir="ltr">Thanks</p>
<p dir="ltr">Sent from my phone</p>
<div class="gmail_quote">On Oct 19, 2012 2:40 PM, &quot;Vladimir Ivanov&quot; &lt;<a href="mailto:vladimir.x.ivanov@oracle.com">vladimir.x.ivanov@oracle.com</a>&gt; wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<a href="http://cr.openjdk.java.net/~vlivanov/8000805/webrev.00/" target="_blank">http://cr.openjdk.java.net/~<u></u>vlivanov/8000805/webrev.00/</a><br>
282 lines changed: 255 ins; 27 del; 0 mod<br>
<br>
Ideal transformations during parsing &amp; IGVN may rematerialize loads in order to reify useful information (like signed/unsigned load). Such behavior breaks JMM - instead of a single atomic load, multiple loads are performed violating consistency of loaded data.<br>

<br>
The fix is to disable such transformations at all, but perform relevant optimizations during matching.<br>
<br>
It fixes only C2 part of problem. 1 has similar deficiency, but it&#39;ll be addressed separately.<br>
<br>
Testing: failing test, test for new matching rules, JPRT, CTW (x86, x64 &amp; sparc).<br>
<br>
Best regards,<br>
Vladimir Ivanov<br>
</blockquote></div>