mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-19 18:44:38 +02:00
8037149: C1: getThreadTemp should return a T_LONG register on 64bit
Fix the type of the register returned by getThreadTemp() to depend on bitness Reviewed-by: kvn, twisti
This commit is contained in:
parent
faad7883f2
commit
af7a190f21
2 changed files with 3 additions and 3 deletions
|
@ -3320,7 +3320,7 @@ void LIR_Assembler::rt_call(LIR_Opr result, address dest,
|
||||||
|
|
||||||
// if tmp is invalid, then the function being called doesn't destroy the thread
|
// if tmp is invalid, then the function being called doesn't destroy the thread
|
||||||
if (tmp->is_valid()) {
|
if (tmp->is_valid()) {
|
||||||
__ save_thread(tmp->as_register());
|
__ save_thread(tmp->as_pointer_register());
|
||||||
}
|
}
|
||||||
__ call(dest, relocInfo::runtime_call_type);
|
__ call(dest, relocInfo::runtime_call_type);
|
||||||
__ delayed()->nop();
|
__ delayed()->nop();
|
||||||
|
@ -3328,7 +3328,7 @@ void LIR_Assembler::rt_call(LIR_Opr result, address dest,
|
||||||
add_call_info_here(info);
|
add_call_info_here(info);
|
||||||
}
|
}
|
||||||
if (tmp->is_valid()) {
|
if (tmp->is_valid()) {
|
||||||
__ restore_thread(tmp->as_register());
|
__ restore_thread(tmp->as_pointer_register());
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef ASSERT
|
#ifdef ASSERT
|
||||||
|
|
|
@ -69,7 +69,7 @@ void LIRItem::load_nonconstant() {
|
||||||
LIR_Opr LIRGenerator::exceptionOopOpr() { return FrameMap::Oexception_opr; }
|
LIR_Opr LIRGenerator::exceptionOopOpr() { return FrameMap::Oexception_opr; }
|
||||||
LIR_Opr LIRGenerator::exceptionPcOpr() { return FrameMap::Oissuing_pc_opr; }
|
LIR_Opr LIRGenerator::exceptionPcOpr() { return FrameMap::Oissuing_pc_opr; }
|
||||||
LIR_Opr LIRGenerator::syncTempOpr() { return new_register(T_OBJECT); }
|
LIR_Opr LIRGenerator::syncTempOpr() { return new_register(T_OBJECT); }
|
||||||
LIR_Opr LIRGenerator::getThreadTemp() { return rlock_callee_saved(T_INT); }
|
LIR_Opr LIRGenerator::getThreadTemp() { return rlock_callee_saved(NOT_LP64(T_INT) LP64_ONLY(T_LONG)); }
|
||||||
|
|
||||||
LIR_Opr LIRGenerator::result_register_for(ValueType* type, bool callee) {
|
LIR_Opr LIRGenerator::result_register_for(ValueType* type, bool callee) {
|
||||||
LIR_Opr opr;
|
LIR_Opr opr;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue