Mercurial > hg > graal-compiler
comparison agent/src/share/classes/sun/jvm/hotspot/code/NMethod.java @ 10197:7b23cb975cf2
8011675: adding compilation level to replay data
Reviewed-by: kvn, vlivanov
author | iignatyev |
---|---|
date | Thu, 25 Apr 2013 11:09:24 -0700 |
parents | bd7a7ce2e264 |
children | de6a9e811145 |
comparison
equal
deleted
inserted
replaced
10196:dc7db03f5aa2 | 10197:7b23cb975cf2 |
---|---|
76 stack. An not_entrant method can be removed when there is no | 76 stack. An not_entrant method can be removed when there is no |
77 more activations, i.e., when the _stack_traversal_mark is less than | 77 more activations, i.e., when the _stack_traversal_mark is less than |
78 current sweep traversal index. */ | 78 current sweep traversal index. */ |
79 private static CIntegerField stackTraversalMarkField; | 79 private static CIntegerField stackTraversalMarkField; |
80 | 80 |
81 private static CIntegerField compLevelField; | |
82 | |
81 static { | 83 static { |
82 VM.registerVMInitializedObserver(new Observer() { | 84 VM.registerVMInitializedObserver(new Observer() { |
83 public void update(Observable o, Object data) { | 85 public void update(Observable o, Object data) { |
84 initialize(VM.getVM().getTypeDataBase()); | 86 initialize(VM.getVM().getTypeDataBase()); |
85 } | 87 } |
111 entryPointField = type.getAddressField("_entry_point"); | 113 entryPointField = type.getAddressField("_entry_point"); |
112 verifiedEntryPointField = type.getAddressField("_verified_entry_point"); | 114 verifiedEntryPointField = type.getAddressField("_verified_entry_point"); |
113 osrEntryPointField = type.getAddressField("_osr_entry_point"); | 115 osrEntryPointField = type.getAddressField("_osr_entry_point"); |
114 lockCountField = type.getJIntField("_lock_count"); | 116 lockCountField = type.getJIntField("_lock_count"); |
115 stackTraversalMarkField = type.getCIntegerField("_stack_traversal_mark"); | 117 stackTraversalMarkField = type.getCIntegerField("_stack_traversal_mark"); |
116 | 118 compLevelField = type.getCIntegerField("_comp_level"); |
117 pcDescSize = db.lookupType("PcDesc").getSize(); | 119 pcDescSize = db.lookupType("PcDesc").getSize(); |
118 } | 120 } |
119 | 121 |
120 public NMethod(Address addr) { | 122 public NMethod(Address addr) { |
121 super(addr); | 123 super(addr); |
528 } | 530 } |
529 Klass holder = method.getMethodHolder(); | 531 Klass holder = method.getMethodHolder(); |
530 out.println("compile " + holder.getName().asString() + " " + | 532 out.println("compile " + holder.getName().asString() + " " + |
531 OopUtilities.escapeString(method.getName().asString()) + " " + | 533 OopUtilities.escapeString(method.getName().asString()) + " " + |
532 method.getSignature().asString() + " " + | 534 method.getSignature().asString() + " " + |
533 getEntryBCI()); | 535 getEntryBCI() + " " + getCompLevel()); |
534 | 536 |
535 } | 537 } |
536 | 538 |
537 //-------------------------------------------------------------------------------- | 539 //-------------------------------------------------------------------------------- |
538 // Internals only below this point | 540 // Internals only below this point |
549 private int getScopesPCsOffset() { return (int) scopesPCsOffsetField .getValue(addr); } | 551 private int getScopesPCsOffset() { return (int) scopesPCsOffsetField .getValue(addr); } |
550 private int getDependenciesOffset() { return (int) dependenciesOffsetField.getValue(addr); } | 552 private int getDependenciesOffset() { return (int) dependenciesOffsetField.getValue(addr); } |
551 private int getHandlerTableOffset() { return (int) handlerTableOffsetField.getValue(addr); } | 553 private int getHandlerTableOffset() { return (int) handlerTableOffsetField.getValue(addr); } |
552 private int getNulChkTableOffset() { return (int) nulChkTableOffsetField .getValue(addr); } | 554 private int getNulChkTableOffset() { return (int) nulChkTableOffsetField .getValue(addr); } |
553 private int getNMethodEndOffset() { return (int) nmethodEndOffsetField .getValue(addr); } | 555 private int getNMethodEndOffset() { return (int) nmethodEndOffsetField .getValue(addr); } |
556 private int getCompLevel() { return (int) compLevelField .getValue(addr); } | |
554 } | 557 } |