diff src/share/vm/c1x/c1x_TargetMethod.cpp @ 1434:72cfb36c6bb2

* enabled all jtt tests * added proxy that counts jni calls * honor hotspot stackshadowpages * constant pool caching * monitor enter/exit * arithmetic stubs (frem, drem, ...) * create stack values for debug info * some doc
author Lukas Stadler <lukas.stadler@oracle.com>
date Thu, 30 Sep 2010 17:19:48 -0700
parents b61a43cd1255
children 20a3896518ac
line wrap: on
line diff
--- a/src/share/vm/c1x/c1x_TargetMethod.cpp	Thu Sep 16 19:42:20 2010 -0700
+++ b/src/share/vm/c1x/c1x_TargetMethod.cpp	Thu Sep 30 17:19:48 2010 -0700
@@ -25,6 +25,9 @@
 # include "incls/_precompiled.incl"
 # include "incls/_c1x_TargetMethod.cpp.incl"
 
+// This function is similar to javaClasses.cpp, it computes the field offset of a (static or instance) field.
+// It looks up the name and signature symbols without creating new ones, all the symbols of these classes need to be already loaded.
+
 static void compute_offset(int &dest_offset, klassOop klass_oop, const char* name, const char* signature, bool static_field) {
   symbolOop name_symbol = SymbolTable::probe(name, strlen(name));
   symbolOop signature_symbol = SymbolTable::probe(signature, strlen(signature));
@@ -42,7 +45,8 @@
   dest_offset = fd.offset();
 }
 
-// create the compute_class
+// This piece of macro magic creates the contents of the c1x_compute_offsets method that initializes the field indices of all the access classes.
+
 #define START_CLASS(name) { klassOop k = SystemDictionary::name##_klass();
 
 #define END_CLASS }