review (S) for 6968348: Byteswapped memory access can point to wrong location after JIT
Tom Rodriguez
tom.rodriguez at oracle.com
Thu Sep 30 15:10:03 PDT 2010
On Sep 30, 2010, at 2:53 PM, Ulf Zibis wrote:
> Ah, ok, I'm running on Intel 32-bit architecture.
> Is it ensured, that this test is always running on 64-bit architectures, but never on 32-bits?
No. Why should it be? It's valid code whereever it runs and we run our tests on all architectures.
tom
>
> Thanks,
>
> -Ulf
>
>
> Am 30.09.2010 19:35, schrieb Tom Rodriguez:
>> It fails for me.
>>
>> % /java/re/jdk/1.7.0/promoted/all/b104/binaries/solaris-amd64/fastdebug/bin/java -d64 Test6968348#
>> # A fatal error has been detected by the Java Runtime Environment:
>> #
>> # SIGSEGV (0xb) at pc=0xfffffd7ff94f5983, pid=14046, tid=2
>> #
>> # JRE version: 7.0
>> # Java VM: Java HotSpot(TM) 64-Bit Server VM (19.0-b05-fastdebug mixed mode solaris-amd64 compressed oops)
>> # Problematic frame:
>> # J Test6968348.test()V
>> #
>> # An error report file with more information is saved as:
>> # /export/ws/baseline/test/compiler/6968348/hs_err_pid14046.log
>> #
>> # If you would like to submit a bug report, please visit:
>> # http://java.sun.com/webapps/bugreport/crash.jsp
>> #
>>
>> Maybe you're running in an environment were it happens to hit in mapped memory.
>>
>> tom
>>
>> On Sep 30, 2010, at 3:46 AM, Ulf Zibis wrote:
>>
>>> Hi,
>>>
>>> I have run Test6968348.java on b104.
>>> It doesn't fail.
>>> Why?
>>>
>>> -Ulf
>>>
>>>
>>> Am 30.09.2010 03:25, schrieb Tom Rodriguez:
>>>> http://cr.openjdk.java.net/~never/6968348
>>>>
>>>> 6968348: Byteswapped memory access can point to wrong location after JIT
>>>> Reviewed-by:
>>>>
>>>> x86_64.ad has match rules for (Store (ReverseBytes val)) but the
>>>> definition is buggy since the val can be used in address of the store.
>>>> It also doesn't record that it changes the input value. The fix is to
>>>> simply remove these rules since they are no better than what we'd get
>>>> otherwise. x86_32.ad doesn't have these rules. sparc.ad does but it
>>>> can generate better code for these forms because it can use the byte
>>>> swapped ASI and doesn't have to modify the register before storing it.
>>>> Tested with new test case.
>>>>
>>
More information about the hotspot-compiler-dev
mailing list