mirror of
https://github.com/openjdk/jdk.git
synced 2026-04-23 21:30:26 +00:00
8056950: Compiled code (64-bit) on SPARC should sign extend INT parameters passed on registers to runtime or native methods
Reviewed-by: thartmann, simonis
This commit is contained in:
parent
b582e23cba
commit
d442aea3c9
@ -32,7 +32,7 @@ const int StackAlignmentInBytes = (2*wordSize);
|
||||
|
||||
// Indicates whether the C calling conventions require that
|
||||
// 32-bit integer argument values are extended to 64 bits.
|
||||
const bool CCallingConventionRequiresIntsAsLongs = false;
|
||||
const bool CCallingConventionRequiresIntsAsLongs = true;
|
||||
|
||||
#define SUPPORTS_NATIVE_CX8
|
||||
|
||||
|
||||
@ -388,16 +388,6 @@ class SharedRuntime: AllStatic {
|
||||
static int c_calling_convention(const BasicType *sig_bt, VMRegPair *regs, VMRegPair *regs2,
|
||||
int total_args_passed);
|
||||
|
||||
// Compute the new number of arguments in the signature if 32 bit ints
|
||||
// must be converted to longs. Needed if CCallingConventionRequiresIntsAsLongs
|
||||
// is true.
|
||||
static int convert_ints_to_longints_argcnt(int in_args_count, BasicType* in_sig_bt);
|
||||
// Adapt a method's signature if it contains 32 bit integers that must
|
||||
// be converted to longs. Needed if CCallingConventionRequiresIntsAsLongs
|
||||
// is true.
|
||||
static void convert_ints_to_longints(int i2l_argcnt, int& in_args_count,
|
||||
BasicType*& in_sig_bt, VMRegPair*& in_regs);
|
||||
|
||||
static size_t trampoline_size();
|
||||
|
||||
static void generate_trampoline(MacroAssembler *masm, address destination);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user