I want to write information into Object Header's Misc field when an object is created: modify where RVM create new object (and its hearde)

eg. From the user annotated program, I want to write group information into the object header (ast and bst all refers to Tree object but each would have different Group number written into the object header)

1 @create(“Group1”) //GroupInformation
2 public void foo(){
3 ast = new Tree();
4 }

5 @create(“Group2”) ////GroupInformation
6 public void foo(){
7 bst = new Tree();
8 }

I looked into the option of changing the RVM to handle this mechanism when object created, but from RVMClass, I could’t find direct connection to how to access MiscHeader class.
In ObjectModel.java, I saw MiscHeader is invoked with initializeHeader(..) at allocateScalar. is it where I can write GroupInformation into the misc header field (by using RVMClass to get current running RVMMethod, and use getAnnotation() to obtain the annotated Group Information)?