int instr = ip.diff(base).toInt(); int lockOffset = ((VM_BaselineCompiledMethod)compiledMethod).getLockAcquisitionOffset(); if (instr > lockOffset) {
Offset instr = ip.diff(base); Offset lockOffset = ((VM_BaselineCompiledMethod)compiledMethod).getLockAcquisitionOffset(); if (instr.sGT(lockOffset)) {
  public void unwindStackFrame(VM_CompiledMethod compiledMethod, VM_Registers registers) {    VM_NormalMethod method = (VM_NormalMethod)compiledMethod.getMethod();    if (method.isSynchronized()) {       Address ip = registers.getInnermostInstructionAddress();      Address base = VM_Magic.objectAsAddress(compiledMethod.getInstructions());      int instr = ip.diff(base).toInt();      int lockOffset = ((VM_BaselineCompiledMethod)compiledMethod).getLockAcquisitionOffset();      if (instr > lockOffset) { // we actually have the lock, so must unlock it.        Object lock;        if (method.isStatic()) {          lock = method.getDeclaringClass().getClassForType();        } else {          Address fp = registers.getInnermostFramePointer();          int offset = VM_Compiler.getFirstLocalOffset(method);          lock = VM_Magic.addressAsObject(fp.add(offset).loadAddress());        }        VM_ObjectModel.genericUnlock(lock);      }    }    registers.unwindStackFrame();  }