hotspot/src/share/vm/opto/loopTransform.cpp
changeset 9104 85edf8ec98b2
parent 9101 ff58f9a8e31c
child 9109 ec7b2f3b386c
--- a/hotspot/src/share/vm/opto/loopTransform.cpp	Mon Apr 04 03:02:00 2011 -0700
+++ b/hotspot/src/share/vm/opto/loopTransform.cpp	Mon Apr 04 12:57:04 2011 -0700
@@ -2112,9 +2112,12 @@
       if (value != head->phi()) {
         msg = "unhandled shift in address";
       } else {
-        found_index = true;
-        shift = n;
-        assert(type2aelembytes(store->as_Mem()->memory_type(), true) == 1 << shift->in(2)->get_int(), "scale should match");
+        if (type2aelembytes(store->as_Mem()->memory_type(), true) != (1 << n->in(2)->get_int())) {
+          msg = "scale doesn't match";
+        } else {
+          found_index = true;
+          shift = n;
+        }
       }
     } else if (n->Opcode() == Op_ConvI2L && conv == NULL) {
       if (n->in(1) == head->phi()) {