asm.emitCMPI (reg, 0);
asm.emitCMPI (reg, NEEDS_DYNAMIC_LINK);
  private void emitDynamicLinkingSequence(int reg, VM_MemberReference ref, boolean couldBeZero) {    int memberId = ref.getId();    int memberOffset = memberId << LOG_BYTES_IN_INT;    int tableOffset = VM_Entrypoints.memberOffsetsField.getOffset();    if (couldBeZero) {      int resolverOffset = VM_Entrypoints.resolveMemberMethod.getOffset();      int label = asm.getMachineCodeIndex();      // load offset table      asm.emitLAddrToc (reg, tableOffset);      asm.emitLWZoffset(reg, reg, memberOffset);      // test for non-zero offset and branch around call to resolver      asm.emitCMPI (reg, 0);				      // reg ?= 0, is field's class loaded?      VM_ForwardReference fr1 = asm.emitForwardBC(NE);      asm.emitLAddrToc (T0, resolverOffset);      asm.emitMTCTR (T0);      asm.emitLVAL(T0, memberId);            // id of member we are resolving      asm.emitBCCTRL (); 			      // link; will throw exception if link error      asm.emitB    (label);                   // go back and try again      fr1.resolve(asm);    } else {      // load offset table      asm.emitLAddrToc (reg, tableOffset);      asm.emitLWZoffset(reg, reg, memberOffset);    }  }