- All Implemented Interfaces:
- java.lang.Cloneable
- Direct Known Subclasses:
- ThresholdFieldLockInfo
public abstract class FieldLockInfo
extends java.lang.Object
implements java.lang.Cloneable
class encapsulating the lock protection status for field access
instructions. Used by on-the-fly partial order reduction in FieldInstruction
to determine if a GET/PUT_FIELD/STATIC insn has to be treated as a
boundary step (terminates a transition). If the field access is always
protected by a lock, only the corresponding sync (INVOKExx or MONITORENTER)
are boundary steps, thus the number of states can be significantly reduced.
FieldLockInfos are only used if vm.por.sync_detection is set
NOTE this might involve assumptions that can be violated in subsequent
paths, and might cause potential races to go undetected