[lworld] RFR: 8271528: [lworld] [TESTBUG] Several C2 IR tests fail on AArch64

Christian Hagedorn chagedorn at openjdk.java.net
Tue Aug 3 08:36:44 UTC 2021

On Mon, 2 Aug 2021 06:45:48 GMT, Nick Gasson <ngasson at openjdk.org> wrote:

> The regexes just need to be adjusted slightly for the different opto assembly output.  Also removed an unnecessary extra black line after some loadConP instructions which caused match failures.
> Test hotspot_valhalla on x86 and AArch64.

The adaptations look good! @TobiHartmann additionally submitted some testing.

I've just seen that [TestUnloadedInlineTypeField](https://github.com/openjdk/valhalla/blob/lworld/test/hotspot/jtreg/compiler/valhalla/inlinetypes/TestUnloadedInlineTypeField.java) is not enabled for aarch64. Was that one missed?

test/hotspot/jtreg/compiler/valhalla/inlinetypes/InlineTypes.java line 117:

> 115:         protected static final String ALLOCA_G = "(.*call,static.*wrapper for: _new_array_Java" + END;
> 116:         // Inline type allocation
> 117:         protected static final String MYVALUE_KLASS = "precise klass \\[(L|Q)compiler/valhalla/inlinetypes/MyValue";

Just about the variable name: Shouldn't this be `MYVALUE_ARRAY_KLASS`?

test/hotspot/jtreg/compiler/valhalla/inlinetypes/InlineTypes.java line 146:

> 144:         protected static final String PREDICATE_TRAP = START + "CallStaticJava" + MID + "uncommon_trap.*predicate" + END;
> 145:         protected static final String MEMBAR = START + "MemBar" + MID + END;
> 146:         protected static final String CHECKCAST_ARRAY = "(((?i:cmp|CLFI|CLR).*" + MYVALUE_KLASS + ".*;:|.*(?i:mov|or).*" + MYVALUE_KLASS + ".*;:.*\\R.*(cmp|CMP|CLR))" + END;

`CLFI` and `CLR` is only used for s390 and PPC, respectively. But I guess it does not hurt to keep it that way.


Marked as reviewed by chagedorn (no project role).

PR: https://git.openjdk.java.net/valhalla/pull/515

More information about the valhalla-dev mailing list