@Uninterruptible("Encoding arguments on stack that won't be seen by GC") @Inline private int uninterruptiblePushJNIRef(Address ref,boolean isRef){
  if (isRef && ref.isZero()) {
    return 0;
  }
 else {
    if (VM.VerifyAssertions)     checkPush(isRef ? Magic.addressAsObject(ref) : null,false);
    JNIRefsTop+=BYTES_IN_ADDRESS;
    JNIRefs.set(JNIRefsTop >> LOG_BYTES_IN_ADDRESS,ref);
    return JNIRefsTop;
  }
}

@ Uninterruptible ( "Encoding arguments on stack that won't be seen by GC" ) @ Inline private int uninterruptiblePushJNIRef ( Address ref , boolean isRef ) { if ( isRef && ref . isZero ( ) ) { return 0 ; } else { if ( VM . VerifyAssertions ) checkPush ( isRef ? Magic . addressAsObject ( ref ) : null , false ) ; JNIRefsTop += BYTES_IN_ADDRESS ; JNIRefs . set ( JNIRefsTop > > LOG_BYTES_IN_ADDRESS , ref ) ; return JNIRefsTop ; } }
push a jni ref , used on entry to jni nb only used for intel
