Mercurial > hg > graal-jvmci-8
diff src/share/vm/oops/methodOop.hpp @ 3011:f00918f35c7f
inlining and runtime interface related changes:
added codeSize() and compilerStorage() to RiMethod
HotSpotMethodResolved uses reflective methods instead of vmIds and survives compilations
HotSpotResolvedType.isInitialized not represented as field (can change)
inlining stores graphs into method objects and reuses them
author | Lukas Stadler <lukas.stadler@jku.at> |
---|---|
date | Thu, 16 Jun 2011 20:36:17 +0200 |
parents | 38fea01eb669 |
children | be4ca325525a |
line wrap: on
line diff
--- a/src/share/vm/oops/methodOop.hpp Thu Jun 16 12:09:54 2011 +0200 +++ b/src/share/vm/oops/methodOop.hpp Thu Jun 16 20:36:17 2011 +0200 @@ -129,6 +129,8 @@ InvocationCounter _invocation_counter; // Incremented before each activation of the method - used to trigger frequency-based optimizations InvocationCounter _backedge_counter; // Incremented before each backedge taken - used to trigger frequencey-based optimizations + // com/oracle/max/graal/runtime/HotSpotMethodResolved mirroring this method + oop _graal_mirror; #ifdef TIERED jlong _prev_time; // Previous time the rate was acquired float _rate; // Events (invocation and backedge counter increments) per millisecond @@ -328,6 +330,10 @@ int invocation_count(); int backedge_count(); + // graal mirror + oop graal_mirror() const { return _graal_mirror; } + void set_graal_mirror(oop m) { oop_store((oop*) &_graal_mirror, m); } + bool was_executed_more_than(int n); bool was_never_executed() { return !was_executed_more_than(0); } @@ -715,6 +721,7 @@ // Garbage collection support oop* adr_constMethod() const { return (oop*)&_constMethod; } oop* adr_constants() const { return (oop*)&_constants; } + oop* adr_graal_mirror() const { return (oop*)&_graal_mirror; } oop* adr_method_data() const { return (oop*)&_method_data; } };