[lworld] Integrated: 8258412: [lworld] TestArrays::test73 fails due to unexpected result
thartmann at openjdk.java.net
Wed Dec 16 06:10:13 UTC 2020
On Tue, 15 Dec 2020 17:23:32 GMT, Tobias Hartmann <thartmann at openjdk.org> wrote:
> `TestArrays::test73` spuriously failed (only) with a product build. I finally figured out that with a product build the `-XX:-MonomorphicArrayCheck` flag specified by the test is ignored which is required to trigger the problem. Instead of adding yet another scenario to our tests, I've added a `PreferCommandLineFlags` option to the framework to allow overwriting scenario flags by flags set via the command line. I'll use it for testing some more flag combinations in the CI.
> The root cause of the issue is that for a flat array store the `MonomorphicArrayCheck` optimization updates the array type to the exact (flat) type but does not update the corresponding element type. As a result, `elemtype->inline_klass()->is_empty()` returns true in product leading to incorrect execution and hits an assert in debug because `elemtype` is general `java.lang.Object`.
> I've also fixed another issue in `Parse::array_store_check()` and added some asserts to catch similar issues earlier in the future.
This pull request has now been integrated.
Author: Tobias Hartmann <thartmann at openjdk.org>
Stats: 80 lines in 6 files changed: 40 ins; 30 del; 10 mod
8258412: [lworld] TestArrays::test73 fails due to unexpected result
More information about the valhalla-dev