hotspot/src/share/vm/opto/superword.cpp
changeset 767 64fb1fd7186d
parent 360 21d113ecbf6a
child 781 e1baa9c8f16f
--- a/hotspot/src/share/vm/opto/superword.cpp	Mon Jun 23 18:21:18 2008 -0700
+++ b/hotspot/src/share/vm/opto/superword.cpp	Tue Jun 24 10:43:29 2008 -0700
@@ -1424,9 +1424,9 @@
 //---------------------------container_type---------------------------
 // Smallest type containing range of values
 const Type* SuperWord::container_type(const Type* t) {
-  if (t->isa_narrowoop()) t = t->is_narrowoop()->make_oopptr();
-  if (t->isa_aryptr()) {
-    t = t->is_aryptr()->elem();
+  const Type* tp = t->make_ptr();
+  if (tp && tp->isa_aryptr()) {
+    t = tp->is_aryptr()->elem();
   }
   if (t->basic_type() == T_INT) {
     if (t->higher_equal(TypeInt::BOOL))  return TypeInt::BOOL;