RFR: 8275448: [REDO] AArch64: Implement string_compare intrinsic in SVE [v4]

Tobias Hartmann thartmann at openjdk.java.net
Wed Nov 17 08:01:42 UTC 2021


On Wed, 17 Nov 2021 00:30:56 GMT, TatWai Chong <duke at openjdk.java.net> wrote:

>> After JDK-8269559 was integrated there are failures in tier1 testing
>> across Mac OS X 11.4 (aarch64) machines. Please see JDK-8275263.
>> 
>> This patch is NOT functional; rather, this tends to verify potential
>> toolchain issues as the original patch pass testing on other
>> platforms.
>> 
>> In this patch, we remove new SVE-related matching rules and register
>> class introduced in the original patch to minimally affect the
>> non-SVE part.
>
> TatWai Chong has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains four commits:
> 
>  - Merge master
>  - Add the matching rule in td file, enable control path in the code stub.
>  - Add the register class and description for this SVE intrinsic.
>  - 8275448: [REDO] AArch64: Implement string_compare intrinsic in SVE
>    
>    After JDK-8269559 was integrated there are failures in tier1 testing
>    across Mac OS X 11.4 (aarch64) machines. Please see JDK-8275263.
>    
>    This patch isn't functional; rather, this tends to verify potential
>    toolchain issues as the original patch passes testing on other
>    platforms.
>    
>    In this patch, we remove new SVE-related matching rules and register
>    class introduced in the original patch to minimally affect the
>    non-SVE part.

I had a look at the artifacts and the test fails because the VM crashes with:


# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (/home/runner/work/jdk/jdk/jdk/src/hotspot/share/opto/matcher.cpp:1714), pid=36076, tid=36091
#  assert(false) failed: bad AD file
#
# JRE version: OpenJDK Runtime Environment (18.0) (fastdebug build 18-internal+0-tatwaichong-009443ec6847694c2b0b0cd058dc1768dd5c5e34)
# Java VM: OpenJDK Server VM (fastdebug 18-internal+0-tatwaichong-009443ec6847694c2b0b0cd058dc1768dd5c5e34, mixed mode, sharing, tiered, g1 gc, linux-x86)
# Problematic frame:
# V  [libjvm.so+0x11bc845]  Matcher::Label_Root(Node const*, State*, Node*, Node*&)+0x565

Current CompileTask:
C2:   1067  644    b  4       compiler.c2.irTests.TestUnsignedComparison::testLongVarLT (20 bytes)

Stack: [0x92f3f000,0x93000000],  sp=0x92ffd130,  free space=760k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0x11bc845]  Matcher::Label_Root(Node const*, State*, Node*, Node*&)+0x565
V  [libjvm.so+0x11bd194]  Matcher::match_tree(Node const*)+0x214
V  [libjvm.so+0x11c8ee5]  Matcher::xform(Node*, int)+0x1115
V  [libjvm.so+0x11d2a65]  Matcher::match()+0x37a5
V  [libjvm.so+0x966a72]  Compile::Code_Gen()+0xa2
V  [libjvm.so+0x973a20]  Compile::Compile(ciEnv*, ciMethod*, int, Options, DirectiveSet*)+0x17f0
V  [libjvm.so+0x799283]  C2Compiler::compile_method(ciEnv*, ciMethod*, int, bool, DirectiveSet*)+0x853
V  [libjvm.so+0x98499b]  CompileBroker::invoke_compiler_on_method(CompileTask*)+0xe6b
V  [libjvm.so+0x985a31]  CompileBroker::compiler_thread_loop()+0x761
V  [libjvm.so+0x9ae5fb]  CompilerThread::thread_entry(JavaThread*, JavaThread*)+0x2b
V  [libjvm.so+0x16f60b2]  JavaThread::thread_main_inner()+0x262
V  [libjvm.so+0x16ff71e]  Thread::call_run()+0xfe
V  [libjvm.so+0x1326943]  thread_native_entry(Thread*)+0x123
C  [libpthread.so.0+0x860a]  start_thread+0xea


That looks unrelated to this change, I filed [JDK-8277324](https://bugs.openjdk.java.net/browse/JDK-8277324).

-------------

PR: https://git.openjdk.java.net/jdk/pull/6072


More information about the hotspot-compiler-dev mailing list