RFR: 8286360: ARM32: Fix crashes after JDK-8284161 (Virtual Threads)

Aleksey Shipilev shade at openjdk.java.net
Fri Jun 3 19:24:04 UTC 2022


On Thu, 2 Jun 2022 14:15:26 GMT, Dmitry Samersoff <dsamersoff at openjdk.org> wrote:

>> Virtual Threads are not fully implemented on ARM32, but there is a fallback implementation that can be used. Still, there is some VM code that is executed unconditionally anyway, crashing the VM on some tests. This improves the ARM32 code to the point that VM is able to build itself and pass tests. This adds the scaffolding for full implementation too.
>> 
>> Additional testing:
>>  - [x] Linux arm32 fastdebug build
>>  - [x] Linux arm32 fastdebug, `jdk_loom  hotspot_loom` pass
>
> src/hotspot/cpu/arm/stubGenerator_arm.cpp line 3106:
> 
>> 3104:       generate_phase1();
>> 3105:     } else {
>> 3106:       generate_all();
> 
> It might be better to check for phases explicitly:
>   
>      } else if (phase == 2) {
>        generate_all();
>      } else {
>         ShouldNotReachHere();
>      }

I agree, but it matches what all other ports do :)

> src/hotspot/share/runtime/arguments.cpp line 4208:
> 
>> 4206: #endif // COMPILER2
>> 4207: 
>> 4208: 
> 
> Unnecessary changes, that bring one more file to diff list. 
> Please fix.

Fixed.

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

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


More information about the hotspot-dev mailing list