32-bit support in general (was Re: assert in interpreter code on 32 bit)
David Simms
david.simms at oracle.com
Mon Mar 13 08:01:36 UTC 2017
Hey all,
We don't actually have 32 bit support in place for the Valhalla repo
just yet...
I forgot that we still had a number of "TODO later" for 32-bit support.
For example testing "hotspot_valhalla" with 32 bits results in
"ShouldNotReachHere()" in "SharedRuntime::java_calling_convention()" (at
hotspot/src/cpu/x86/vm/sharedRuntime_x86_32.cpp:490) is still missing
case for T_VALUETYPE. This might be trivial, but...
Frederic:
Am I right in thinking there were still a number of non-trivial 32
bit changes outstanding ?
Is it worth addressing these in the aging jdk9 - one year old sandbox,
or wait until we move to jdk10 ?
/David
On 13/03/2017 7:36 a.m., David Simms wrote:
>
> Oops, no, I haven't seen this one...I'll take a look today.
>
> "ValueKlass::raw_field_copy()" - this code hasn't been pushed yet btw :-)
>
>
> But yeah, it looks like I need to re-run 32 bit testing
>
>
> Cheers
>
> /David Simms
>
>
> On 10/03/2017 6:14 p.m., Roland Westrelin wrote:
>> Hi,
>>
>> Running compiler/valhalla/valuetypes/ValueTypeTestBench.java with a 32
>> bit debug build, I get the following assert:
>>
>> # Internal Error
>> (/home/rwestrel/valhalla/hotspot/src/share/vm/utilities/globalDefinitions.cpp:53),
>> pid=643, tid=644
>> # fatal error: not aligned
>>
>> with stack:
>>
>> V [libjvm.so+0xa36cb9] basic_fatal(char const*)+0x39
>> V [libjvm.so+0x116e0b4] ValueKlass::raw_field_copy(void*, void*,
>> unsigned int)+0xc4
>> V [libjvm.so+0x116e2f5] ValueKlass::value_store(void*, void*,
>> unsigned int, bool, bool)+0x1e5
>> V [libjvm.so+0xaed393]
>> InterpreterRuntime::value_array_store(JavaThread*, arrayOopDesc*,
>> int, void*)+0x373
>> j compiler.valhalla.valuetypes.ValueTypeTestBench.test36_verifier(Z)V+25
>>
>> Is it a known issue?
>>
>> Roland.
>
More information about the valhalla-dev
mailing list