diff -r 6f3fd5150b67 -r 70120f47d403 src/share/vm/opto/macro.cpp --- a/src/share/vm/opto/macro.cpp Wed May 08 15:08:01 2013 -0700 +++ b/src/share/vm/opto/macro.cpp Thu May 09 17:28:04 2013 -0700 @@ -834,7 +834,7 @@ if (field_val->is_EncodeP()) { field_val = field_val->in(1); } else { - field_val = transform_later(new (C) DecodeNNode(field_val, field_val->bottom_type()->make_ptr())); + field_val = transform_later(new (C) DecodeNNode(field_val, field_val->get_ptr_type())); } } sfpt->add_req(field_val);