diff src/share/vm/opto/connode.cpp @ 372:be41fa651400

Merge
author rasbold
date Tue, 30 Sep 2008 15:53:55 -0700
parents 36ccc817fca4
children 98cb887364d3
line wrap: on
line diff
--- a/src/share/vm/opto/connode.cpp	Wed Sep 24 15:34:06 2008 -0400
+++ b/src/share/vm/opto/connode.cpp	Tue Sep 30 15:53:55 2008 -0700
@@ -433,8 +433,8 @@
 // If not converting int->oop, throw away cast after constant propagation
 Node *CastPPNode::Ideal_DU_postCCP( PhaseCCP *ccp ) {
   const Type *t = ccp->type(in(1));
-  if (!t->isa_oop_ptr()) {
-    return NULL;                // do not transform raw pointers
+  if (!t->isa_oop_ptr() || in(1)->is_DecodeN()) {
+    return NULL; // do not transform raw pointers or narrow oops
   }
   return ConstraintCastNode::Ideal_DU_postCCP(ccp);
 }