RFR: 8291654: AArch64: assert from JDK-8287393 causes crashes

Andrew Haley aph at openjdk.org
Tue Aug 2 08:37:51 UTC 2022


On Tue, 2 Aug 2022 01:12:44 GMT, David Holmes <dholmes at openjdk.org> wrote:

>> src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp line 883:
>> 
>>> 881:       assert(StubRoutines::aarch64::complete() &&
>>> 882:              Thread::current()->is_Compiler_thread() &&
>>> 883:              Compile::current()->output() != NULL, "not in output phase of C2 compilation");
>> 
>> The code is under `#ifdef COMPILER2` which assumes that it is executed only for C2. Which make it confusing because it CAN be executed by C1.
>> There is check at line 885 `is_c2_compile()` which is true only for C2. May be we can rearrange code to make it less confusing.
>> On other hand if `check_emit_size` could be `true` for C1 why we should emit trampoline for it and not for C2?
>
> @vnkozlov I will leave it to you to decide whether to sponsor as-is or look for additional changes. The failures seem intermittent and have not re-occurred in the next two CI runs.

Leave it out. It does nothing useful; I think it was just a precaution.

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

PR: https://git.openjdk.org/jdk/pull/9709


More information about the hotspot-compiler-dev mailing list