On Nov 30, 2010, at 4:35 AM, John Rose wrote: >> src/share/vm/oops/constantPoolOop.hpp: >> >> - void copy_entry_to(int from_i, constantPoolHandle to_cp, int to_i, TRAPS); >> + static void copy_entry_to(constantPoolHandle from_cp, int from_i, >> constantPoolHandle to_cp, int to_i, TRAPS); >> >> Maybe I'm missing the obvious here but why do need to pass a handle in? >> There is nothing fancy going on in that method. > > In principle, the call to 'klass_at' could trigger a GC. We know it won't, > because of the tag of the CP entry. But that requires a private, invisible > contract with the present implementation of 'klass_at'. It is safer to use > the handle. Since I had to introduce a handle in copy_cp_to_impl, it was > natural to move it down into the per-entry routine.
I see. That makes sense. > Thanks. Can I cite you as a reviewer on both change sets? Sure. -- Christian _______________________________________________ mlvm-dev mailing list mlvm-dev@openjdk.java.net http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev