RFR: 8288445: AArch64: C2 compilation fails with guarantee(!true || (true && (shift != 0))) failed: impossible encoding
Tobias Hartmann
thartmann at openjdk.org
Mon Jun 20 05:52:54 UTC 2022
On Fri, 17 Jun 2022 22:37:28 GMT, Dean Long <dlong at openjdk.org> wrote:
> The range for aarch64 vector right-shift is 1 to the element width. This issue fixes the problem in the back-end. There is a separate problem in the front-end that shift by 0 is not always optimized out.
What instruction will the zero-shift be matched with then?
test/hotspot/jtreg/compiler/codegen/ShiftByZero.java line 29:
> 27: * @summary Test shift by 0
> 28: * @library /test/lib
> 29: * @run main compiler.codegen.ShiftByZero
I don't think these two lines are needed.
test/hotspot/jtreg/compiler/codegen/ShiftByZero.java line 69:
> 67:
> 68: public static void main(String[] strArr) {
> 69: for (int i = 0; i < 20_000; i++ ) {
Suggestion:
for (int i = 0; i < 20_000; i++) {
-------------
PR: https://git.openjdk.org/jdk19/pull/40
More information about the hotspot-compiler-dev
mailing list