diff src/share/vm/opto/macro.cpp @ 1689:f4f596978298

Merge
author never
date Mon, 09 Aug 2010 17:51:56 -0700
parents e5dfb3ccb88b
children f95d63e2154a
line wrap: on
line diff
--- a/src/share/vm/opto/macro.cpp	Tue Aug 03 08:13:38 2010 -0400
+++ b/src/share/vm/opto/macro.cpp	Mon Aug 09 17:51:56 2010 -0700
@@ -720,7 +720,7 @@
       if (basic_elem_type == T_OBJECT || basic_elem_type == T_ARRAY) {
         if (!elem_type->is_loaded()) {
           field_type = TypeInstPtr::BOTTOM;
-        } else if (field != NULL && field->is_constant()) {
+        } else if (field != NULL && field->is_constant() && field->is_static()) {
           // This can happen if the constant oop is non-perm.
           ciObject* con = field->constant_value().as_object();
           // Do not "join" in the previous type; it doesn't add value,