diff -r 693c6b883b54 -r 8c1e3dd5fe1b hotspot/src/share/vm/c1/c1_GraphBuilder.cpp --- a/hotspot/src/share/vm/c1/c1_GraphBuilder.cpp Fri Mar 18 15:52:42 2011 -0700 +++ b/hotspot/src/share/vm/c1/c1_GraphBuilder.cpp Fri Mar 18 16:00:34 2011 -0700 @@ -1471,9 +1471,9 @@ if (code == Bytecodes::_getstatic || code == Bytecodes::_putstatic) { if (state_before != NULL) { // build a patching constant - obj = new Constant(new ClassConstant(holder), state_before); + obj = new Constant(new InstanceConstant(holder->java_mirror()), state_before); } else { - obj = new Constant(new ClassConstant(holder)); + obj = new Constant(new InstanceConstant(holder->java_mirror())); } }