There is a bug in mulnode.cpp. need set_type before use in mulnode.cpp.
========= hotspot/src/share/vm/opto/mulnode.cpp#3 (text) ====
@@ -100,6 +100,7 @@
// Convert (X+con1)*con0 into X*con0
Node *mul = clone(); // mul = ()*con0
mul->set_req(1,add1->in(1)); // mul = X*con0
+ phase->set_type(mul,bottom_type());
mul = phase->transform(mul);
Node *add2 = add1->clone();
========= hotspot/src/share/vm/opto/mulnode.cpp#3 (text) ====
@@ -100,6 +100,7 @@
// Convert (X+con1)*con0 into X*con0
Node *mul = clone(); // mul = ()*con0
mul->set_req(1,add1->in(1)); // mul = X*con0
+ phase->set_type(mul,bottom_type());
mul = phase->transform(mul);
Node *add2 = add1->clone();
- relates to
-
JDK-6297035 Automatically generated program crashes compiler on all platforms
-
- Closed
-