513 if (dest == T_SHORT) return (BitsPerInt - BitsPerShort) | CONV_VMINFO_SIGN_FLAG; |
513 if (dest == T_SHORT) return (BitsPerInt - BitsPerShort) | CONV_VMINFO_SIGN_FLAG; |
514 return 0; // case T_INT |
514 return 0; // case T_INT |
515 } |
515 } |
516 // Here is the transformation the i2i adapter must perform: |
516 // Here is the transformation the i2i adapter must perform: |
517 static int truncate_subword_from_vminfo(jint value, int vminfo) { |
517 static int truncate_subword_from_vminfo(jint value, int vminfo) { |
518 jint tem = value << vminfo; |
518 int shift = vminfo & ~CONV_VMINFO_SIGN_FLAG; |
|
519 jint tem = value << shift; |
519 if ((vminfo & CONV_VMINFO_SIGN_FLAG) != 0) { |
520 if ((vminfo & CONV_VMINFO_SIGN_FLAG) != 0) { |
520 return (jint)tem >> vminfo; |
521 return (jint)tem >> shift; |
521 } else { |
522 } else { |
522 return (juint)tem >> vminfo; |
523 return (juint)tem >> shift; |
523 } |
524 } |
524 } |
525 } |
525 |
526 |
526 static inline address from_compiled_entry(EntryKind ek); |
527 static inline address from_compiled_entry(EntryKind ek); |
527 static inline address from_interpreted_entry(EntryKind ek); |
528 static inline address from_interpreted_entry(EntryKind ek); |