RFR: C2 should use heapword-sized object math

Aleksey Shipilev shade at redhat.com
Thu Nov 30 10:13:55 UTC 2017


I'm playing with 32-bit builds. This one fixes one of the compiler bugs:

diff -r 46091fe1a0bc src/hotspot/share/opto/macro.cpp
--- a/src/hotspot/share/opto/macro.cpp	Mon Nov 27 18:42:57 2017 +0100
+++ b/src/hotspot/share/opto/macro.cpp	Thu Nov 30 11:12:52 2017 +0100
@@ -1449,7 +1449,7 @@
     Node* init_size_in_bytes = size_in_bytes;
     if (UseShenandoahGC) {
       // Allocate several words more for the Shenandoah brooks pointer.
-      size_in_bytes = new AddLNode(size_in_bytes, _igvn.MakeConX(BrooksPointer::byte_size()));
+      size_in_bytes = new AddXNode(size_in_bytes, _igvn.MakeConX(BrooksPointer::byte_size()));
       transform_later(size_in_bytes);
     }

Testing: hotspot_gc_shenandoah (fastdebug, Linux x86_64)

Thanks,
-Aleksey



More information about the shenandoah-dev mailing list