comparison src/share/vm/classfile/javaClasses.hpp @ 12297:48fce55afe71

6479237: (cl) Add support for classloader names Reviewed-by: alanb, bchristi, coleenp, dfuchs, lfoltan, psandoz, sspitsyn
author mchung
date Thu, 03 Nov 2016 18:08:02 -0700
parents b48a9e9bfd73
children 36223b379545
comparison
equal deleted inserted replaced
111:2bf91dcb3731 112:b3762bda7af1
1223 }; 1223 };
1224 static int _loader_data_offset; 1224 static int _loader_data_offset;
1225 static bool offsets_computed; 1225 static bool offsets_computed;
1226 static int parent_offset; 1226 static int parent_offset;
1227 static int parallelCapable_offset; 1227 static int parallelCapable_offset;
1228 static int name_offset;
1228 static int unnamedModule_offset; 1229 static int unnamedModule_offset;
1229 1230
1230 public: 1231 public:
1231 static void compute_offsets(); 1232 static void compute_offsets();
1232 1233
1233 static ClassLoaderData** loader_data_addr(oop loader); 1234 static ClassLoaderData** loader_data_addr(oop loader);
1234 static ClassLoaderData* loader_data(oop loader); 1235 static ClassLoaderData* loader_data(oop loader);
1235 1236
1236 static oop parent(oop loader); 1237 static oop parent(oop loader);
1238 static oop name(oop loader);
1237 static bool isAncestor(oop loader, oop cl); 1239 static bool isAncestor(oop loader, oop cl);
1238 1240
1239 // Support for parallelCapable field 1241 // Support for parallelCapable field
1240 static bool parallelCapable(oop the_class_mirror); 1242 static bool parallelCapable(oop the_class_mirror);
1241 1243
1289 // Interface to java.lang.StackTraceElement objects 1291 // Interface to java.lang.StackTraceElement objects
1290 1292
1291 class java_lang_StackTraceElement: AllStatic { 1293 class java_lang_StackTraceElement: AllStatic {
1292 private: 1294 private:
1293 enum { 1295 enum {
1294 hc_moduleName_offset = 0, 1296 hc_classOrLoaderModuleClassName_offset = 0,
1295 hc_moduleVersion_offset = 1, 1297 hc_classLoaderName_offset = 1,
1296 hc_declaringClass_offset = 2, 1298 hc_moduleName_offset = 2,
1297 hc_methodName_offset = 3, 1299 hc_moduleVersion_offset = 3,
1298 hc_fileName_offset = 4, 1300 hc_declaringClass_offset = 4,
1299 hc_lineNumber_offset = 5 1301 hc_methodName_offset = 5,
1302 hc_fileName_offset = 6,
1303 hc_lineNumber_offset = 7
1300 }; 1304 };
1301 1305
1306 static int classOrLoaderModuleClassName_offset;
1307 static int classLoaderName_offset;
1302 static int moduleName_offset; 1308 static int moduleName_offset;
1303 static int moduleVersion_offset; 1309 static int moduleVersion_offset;
1304 static int declaringClass_offset; 1310 static int declaringClass_offset;
1305 static int methodName_offset; 1311 static int methodName_offset;
1306 static int fileName_offset; 1312 static int fileName_offset;
1307 static int lineNumber_offset; 1313 static int lineNumber_offset;
1308 1314
1309 // Setters 1315 // Setters
1316 static void set_classLoaderName(oop element, oop value);
1310 static void set_moduleName(oop element, oop value); 1317 static void set_moduleName(oop element, oop value);
1311 static void set_moduleVersion(oop element, oop value); 1318 static void set_moduleVersion(oop element, oop value);
1312 static void set_declaringClass(oop element, oop value); 1319 static void set_declaringClass(oop element, oop value);
1313 static void set_methodName(oop element, oop value); 1320 static void set_methodName(oop element, oop value);
1314 static void set_fileName(oop element, oop value); 1321 static void set_fileName(oop element, oop value);
1315 static void set_lineNumber(oop element, int value); 1322 static void set_lineNumber(oop element, int value);
1323 static void set_declaringClassObject(oop element, oop value);
1316 1324
1317 public: 1325 public:
1318 // Create an instance of StackTraceElement 1326 // Create an instance of StackTraceElement
1319 static oop create(const methodHandle& method, int bci, TRAPS); 1327 static oop create(const methodHandle& method, int bci, TRAPS);
1320 1328