< prev index next >
src/jdk.vm.ci/share/classes/jdk.vm.ci.code/src/jdk/vm/ci/code/InstalledCode.java
Print this page
*** 27,72 ****
* meantime.
*/
public class InstalledCode {
/**
! * Raw address of this code blob.
*/
! private long address;
/**
* Counts how often the address field was reassigned.
*/
! private long version;
protected final String name;
public InstalledCode(String name) {
this.name = name;
}
- public final void setAddress(long address) {
- this.address = address;
- version++;
- }
-
/**
! * @return the address of this code blob
*/
public final long getAddress() {
return address;
}
/**
! * @return the address of this code blob
*/
public final long getVersion() {
return version;
}
/**
! * Returns the name of this code blob.
*/
public String getName() {
return name;
}
--- 27,79 ----
* meantime.
*/
public class InstalledCode {
/**
! * Raw address address of entity representing this installed code.
*/
! protected long address;
!
! /**
! * Raw address of entryPoint of this installed code.
! */
! protected long entryPoint;
/**
* Counts how often the address field was reassigned.
*/
! protected long version;
protected final String name;
public InstalledCode(String name) {
this.name = name;
}
/**
! * @return the address of entity representing this installed code.
*/
public final long getAddress() {
return address;
}
/**
! * @return the address of the normal entry point of the installed code.
! */
! public final long getEntryPoint() {
! return entryPoint;
! }
!
! /**
! * @return the version number of this installed code
*/
public final long getVersion() {
return version;
}
/**
! * Returns the name of this installed code.
*/
public String getName() {
return name;
}
*** 77,111 ****
public long getStart() {
return 0;
}
/**
! * Returns the number of instruction bytes for this code.
*/
! public long getCodeSize() {
! return 0;
}
/**
! * Returns a copy of this installed code if it is {@linkplain #isValid() valid}, null otherwise.
*/
! public byte[] getCode() {
! return null;
}
/**
! * @return true if the code represented by this object is still valid, false otherwise (may
! * happen due to deopt, etc.)
*/
! public boolean isValid() {
! return address != 0;
}
/**
* Invalidates this installed code such that any subsequent
* {@linkplain #executeVarargs(Object...) invocation} will throw an
! * {@link InvalidInstalledCodeException}.
*/
public void invalidate() {
throw new UnsupportedOperationException();
}
--- 84,119 ----
public long getStart() {
return 0;
}
/**
! * @return true if the code represented by this object is still valid for invocation, false
! * otherwise (may happen due to deopt, etc.)
*/
! public boolean isValid() {
! return entryPoint != 0;
}
/**
! * @return true if the code represented by this object still exists and might have live
! * activations, false otherwise (may happen due to deopt, etc.)
*/
! public boolean isAlive() {
! return address != 0;
}
/**
! * Returns a copy of this installed code if it is {@linkplain #isValid() valid}, null otherwise.
*/
! public byte[] getCode() {
! return null;
}
/**
* Invalidates this installed code such that any subsequent
* {@linkplain #executeVarargs(Object...) invocation} will throw an
! * {@link InvalidInstalledCodeException} and all existing invocations will be deoptimized.
*/
public void invalidate() {
throw new UnsupportedOperationException();
}
< prev index next >