--- a/hotspot/src/share/vm/c1/c1_ValueMap.hpp Sat Mar 05 11:02:04 2011 -0800
+++ b/hotspot/src/share/vm/c1/c1_ValueMap.hpp Sun Mar 06 22:09:23 2011 -0800
@@ -141,7 +141,8 @@
// visitor functions
void do_StoreField (StoreField* x) {
- if (!x->is_initialized()) {
+ if (x->is_init_point()) {
+ // putstatic is an initialization point so treat it as a wide kill
kill_memory();
} else {
kill_field(x->field());
@@ -159,7 +160,8 @@
void do_Local (Local* x) { /* nothing to do */ }
void do_Constant (Constant* x) { /* nothing to do */ }
void do_LoadField (LoadField* x) {
- if (!x->is_initialized()) {
+ if (x->is_init_point()) {
+ // getstatic is an initialization point so treat it as a wide kill
kill_memory();
}
}