Mercurial > hg > graal-jvmci-8
comparison src/share/vm/classfile/vmSymbols.cpp @ 45:48a3fa21394b
6667615: (Escape Analysis) extend MDO to cache arguments escape state
Summary: Use MDO to cache arguments escape state determined by the byte code escape analyzer.
Reviewed-by: never
author | kvn |
---|---|
date | Tue, 11 Mar 2008 19:00:38 -0700 |
parents | a61af66fc99e |
children | d1605aabd0a1 |
comparison
equal
deleted
inserted
replaced
44:52fed2ec0afb | 45:48a3fa21394b |
---|---|
316 inline bool match_F_SN(jshort flags) { | 316 inline bool match_F_SN(jshort flags) { |
317 const int req = JVM_ACC_STATIC | JVM_ACC_NATIVE; | 317 const int req = JVM_ACC_STATIC | JVM_ACC_NATIVE; |
318 const int neg = JVM_ACC_SYNCHRONIZED; | 318 const int neg = JVM_ACC_SYNCHRONIZED; |
319 return (flags & (req | neg)) == req; | 319 return (flags & (req | neg)) == req; |
320 } | 320 } |
321 inline bool match_F_RNY(jshort flags) { | |
322 const int req = JVM_ACC_NATIVE | JVM_ACC_SYNCHRONIZED; | |
323 const int neg = JVM_ACC_STATIC; | |
324 return (flags & (req | neg)) == req; | |
325 } | |
321 | 326 |
322 // These are for forming case labels: | 327 // These are for forming case labels: |
323 #define ID3(x, y, z) (( jint)(z) + \ | 328 #define ID3(x, y, z) (( jint)(z) + \ |
324 ((jint)(y) << vmSymbols::log2_SID_LIMIT) + \ | 329 ((jint)(y) << vmSymbols::log2_SID_LIMIT) + \ |
325 ((jint)(x) << (2*vmSymbols::log2_SID_LIMIT)) ) | 330 ((jint)(x) << (2*vmSymbols::log2_SID_LIMIT)) ) |
357 const char* fname = ""; | 362 const char* fname = ""; |
358 switch (flags_for(id)) { | 363 switch (flags_for(id)) { |
359 case F_RN: fname = "native "; break; | 364 case F_RN: fname = "native "; break; |
360 case F_SN: fname = "native static "; break; | 365 case F_SN: fname = "native static "; break; |
361 case F_S: fname = "static "; break; | 366 case F_S: fname = "static "; break; |
367 case F_RNY:fname = "native synchronized "; break; | |
362 } | 368 } |
363 const char* kptr = strrchr(kname, '/'); | 369 const char* kptr = strrchr(kname, '/'); |
364 if (kptr != NULL) kname = kptr + 1; | 370 if (kptr != NULL) kname = kptr + 1; |
365 int len = jio_snprintf(buf, buflen, "%s: %s%s.%s%s", | 371 int len = jio_snprintf(buf, buflen, "%s: %s%s.%s%s", |
366 str, fname, kname, mname, sname); | 372 str, fname, kname, mname, sname); |
483 xtty->end_elem(""); | 489 xtty->end_elem(""); |
484 } | 490 } |
485 if (PrintMiscellaneous && (WizardMode || Verbose)) { | 491 if (PrintMiscellaneous && (WizardMode || Verbose)) { |
486 tty->print_cr("*** misidentified method; %s(%d) should be %s(%d):", | 492 tty->print_cr("*** misidentified method; %s(%d) should be %s(%d):", |
487 declared_name, declared_id, actual_name, actual_id); | 493 declared_name, declared_id, actual_name, actual_id); |
488 m->print_short_name(tty); | 494 mh()->print_short_name(tty); |
489 tty->cr(); | 495 tty->cr(); |
490 } | 496 } |
491 } | 497 } |
492 #endif //PRODUCT | 498 #endif //PRODUCT |