RFR (XS): Bad shift coalescing in C2 matrix update barrier

Roman Kennke rkennke at redhat.com
Wed Mar 15 14:01:37 UTC 2017


Am 15.03.2017 um 14:56 schrieb Aleksey Shipilev:
> Hi,
>
> So I succumbed by Roman's nagging that something is wrong with C2 matrix update
> barriers, and by staring into the code discovered an absolutely moronic
> optimization I did there!
>
> I assumed:
>   [(x >> A) << B] is [X >> (A-B)]
>
> ...but you also need to mask out the lower B bits in the result!
>
> Let's remove that optimization:
>   http://cr.openjdk.java.net/~shade/shenandoah/matrix-c2-badshift/webrev.01/
>
> I will figure out separately if shift coalescing + mask is still beneficial.
>
> Testing: failing tests with matrix verification
>
> Thanks,
> -Aleksey
>
Go!



More information about the shenandoah-dev mailing list