assert in interpreter code on 32 bit

David Simms david.simms at oracle.com
Mon Mar 13 08:57:35 UTC 2017


Thank you for running the elemsize patch Roland ! Yeah I reproduced the 
issue with 32-bit array layout. Looks like the header size was never 
correctly aligned for valueArrayOop on 32 bits. Will adjust the patch 
after some more testing.

There remain some further 32 bit issues, as I brought up in another mail 
forked from this thread.


Cheers

/David Simms


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