RFR: 8256438: AArch64: Implement match rules with ROR shift register value
Eric Liu
github.com+10482586+therealeliu at openjdk.java.net
Thu Jan 28 13:32:46 UTC 2021
On Thu, 28 Jan 2021 02:17:47 GMT, Eric Liu <github.com+10482586+theRealELiu at openjdk.org> wrote:
>> What impact does this have on runtime? There are also Tier1 failures in x86, which you'll need to investigate
>
> I suppose this failure was not caused by my patch, and it has been fixed by https://github.com/openjdk/jdk/commit/1594372c.
Thanks for your kindly review.
> An oddity. For rotations we have:
>
> match(Set dst (AndI src1 (XorI(RotateRight src2 src3) src4)));
>
> but for all other shifts we have:
>
> match(Set dst (AndL src1 (XorL(RShiftL src2 src3) src4)));
>
> That is to say, the other shifts have a type suffix. This doesn't look
> right. Do you know what is going on?
For rotation node, they have an extra field to identify the type, maybe this could save some code size... And I didn't use 'predicate' to check that because middle-end could guarantee Xor's input type was correct.
-------------
PR: https://git.openjdk.java.net/jdk/pull/1858
More information about the hotspot-compiler-dev
mailing list