VM_ForwardReference fr = asm.forwardJcc(asm.NE);
VM_ForwardReference fr = asm.forwardJcc(VM_Assembler.NE);
  private void emitDynamicLinkingSequence(byte reg, VM_MemberReference ref, boolean couldBeZero) {    int memberId = ref.getId();    Offset memberOffset = Offset.fromIntZeroExtend(memberId << 2);    Offset tableOffset = VM_Entrypoints.memberOffsetsField.getOffset();    if (couldBeZero) {      Offset resolverOffset = VM_Entrypoints.resolveMemberMethod.getOffset();      int retryLabel = asm.getMachineCodeIndex();            // branch here after dynamic class loading      asm.emitMOV_Reg_RegDisp (reg, JTOC, tableOffset);      // reg is offsets table      asm.emitMOV_Reg_RegDisp (reg, reg, memberOffset);      // reg is offset of member, or 0 if member's class isn't loaded      if (NEEDS_DYNAMIC_LINK == 0) {        asm.emitTEST_Reg_Reg(reg, reg);                      // reg ?= NEEDS_DYNAMIC_LINK, is field's class loaded?      } else {        asm.emitCMP_Reg_Imm(reg, NEEDS_DYNAMIC_LINK);        // reg ?= NEEDS_DYNAMIC_LINK, is field's class loaded?      }      VM_ForwardReference fr = asm.forwardJcc(asm.NE);       // if so, skip call instructions      asm.emitPUSH_Imm(memberId);                            // pass member's dictId      genParameterRegisterLoad(1);                           // pass 1 parameter word      asm.emitCALL_RegDisp(JTOC, resolverOffset);            // does class loading as sideffect      asm.emitJMP_Imm (retryLabel);                          // reload reg with valid value      fr.resolve(asm);                                       // come from Jcc above.    } else {      asm.emitMOV_Reg_RegDisp (reg, JTOC, tableOffset);      // reg is offsets table      asm.emitMOV_Reg_RegDisp (reg, reg, memberOffset);      // reg is offset of member    }  }