Array not zeroed on creation (original) (raw)
Krystal Mo krystal.mo at oracle.com
Fri Sep 7 08:20:47 PDT 2012
- Previous message: Array not zeroed on creation
- Next message: Array not zeroed on creation
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
+1 with Nils.
Running the test case with -XX:-OptimizeFill works around the problem; running again, this time with -XX:+TraceOptimizeFill, shows:
$ ~/testjdk/hotspot-comp/bin/java -XX:-TieredCompilation -XX:+TraceOptimizeFill -XX:+PrintCompilation Test7196857 194 1 java.util.Arrays::fill (21 bytes) 195 1 % Test7196857::main @ 89 (162 bytes) fill intrinsic for: 111 StoreI === 138 131 109 11 [[ 124 131 ]] @int[int:>=0]:exact+any *, idx=5; Memory: @int[int:>=0]:NotNull:exact+any *, idx=5; !jvms: Arrays::fill @ bci:13 fill intrinsic for: 463 StoreI === 537 442 461 20 [[ 509 442 ]] @int[int:>=0]:exact+any *, idx=6; Memory: @int[int:10]:NotNull:exact+any *, idx=6; !orig=[500],488,[486],[111] !jvms: Arrays::fill @ bci:13 Test7196857::main @ bci:83 Eliminated zeroing in allocation not fill intrinsic candidate: variant store value 219 1 % Test7196857::main @ -2 (162 bytes) made not entrant Exception in thread "main" java.lang.RuntimeException: Array just after allocation: [-1163019586, -1163019586, -1163019586, -1163019586, -1163019586, -1163019586, -1163019586, -1163019586, -1163019586, -1163019586] at Test7196857.main(Test7196857.java:11)
Notice "Eliminated zeroing in allocation", which is caused by the missing check that Nils mentioned.
- Kris
On 09/07/2012 10:11 PM, Nils Eliasson wrote:
The bug reproduces with a fill or a corresponding zeroing for loop. But not without. So the bug is that there should be a check of uses between the allocation and the fill (or that the check is incomplete).
//Nils Vitaly Davidovich skrev 2012-09-07 15:24:
Dan, I've cc'd compiler dev and removed hotspot dev as this looks like a compiler issue. Hope you don't mind. My hunch is that the Arrays.fill() is tripping this up - is it reproducable if fill() is removed? Sent from my phone On Sep 7, 2012 8:39 AM, "Dan Hicks" <danhicks at fastmail.fm_ _<mailto:danhicks at fastmail.fm>> wrote: This bug has come to my attention: http://stackoverflow.com/questions/12317668/java-int-array-initializes-with-nonzero-elements Basically there is a reproducible (by several people) situation where a new int array is not zeroed. The author reports the error is reproducible on HotSpot 64-bit server VM, Java version from 1.7.004 to 1.7.010 on Gentoo Linux, Debian Linux (both kernel 3.0 version) and MacOS Lion. (Not tested on 32-bit or Windows.) Reportedly bug7196857 has been filed with Oracle. -- Dan Hicks Nothing makes us so lonely as our secrets. --Paul Tournier
-------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/attachments/20120907/7155b2dc/attachment.html
- Previous message: Array not zeroed on creation
- Next message: Array not zeroed on creation
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the hotspot-compiler-dev mailing list