Index: src/s390/macro-assembler-s390.cc |
diff --git a/src/s390/macro-assembler-s390.cc b/src/s390/macro-assembler-s390.cc |
index ea1079e4d658244bd75002fedb368afde0500ea2..c001bc474c5fe723aad661f5bd2931ee6b307181 100644 |
--- a/src/s390/macro-assembler-s390.cc |
+++ b/src/s390/macro-assembler-s390.cc |
@@ -205,26 +205,6 @@ void MacroAssembler::Move(DoubleRegister dst, DoubleRegister src) { |
} |
} |
-void MacroAssembler::InsertDoubleLow(DoubleRegister dst, Register src) { |
- StoreDouble(dst, MemOperand(sp, -kDoubleSize)); |
-#if V8_TARGET_LITTLE_ENDIAN |
- StoreW(src, MemOperand(sp, -kDoubleSize)); |
-#else |
- StoreW(src, MemOperand(sp, -kDoubleSize / 2)); |
-#endif |
- ldy(dst, MemOperand(sp, -kDoubleSize)); |
-} |
- |
-void MacroAssembler::InsertDoubleHigh(DoubleRegister dst, Register src) { |
- StoreDouble(dst, MemOperand(sp, -kDoubleSize)); |
-#if V8_TARGET_LITTLE_ENDIAN |
- StoreW(src, MemOperand(sp, -kDoubleSize / 2)); |
-#else |
- StoreW(src, MemOperand(sp, -kDoubleSize)); |
-#endif |
- ldy(dst, MemOperand(sp, -kDoubleSize)); |
-} |
- |
void MacroAssembler::MultiPush(RegList regs, Register location) { |
int16_t num_to_push = NumberOfBitsSet(regs); |
int16_t stack_offset = num_to_push * kPointerSize; |
@@ -1113,9 +1093,8 @@ void MacroAssembler::EnterExitFrame(bool save_doubles, int stack_space) { |
ClearRightImm(sp, sp, Operand(3)); // equivalent to &= -8 |
} |
- StoreP(MemOperand(sp, -kNumRequiredStackFrameSlots * kPointerSize), |
- Operand::Zero(), r0); |
lay(sp, MemOperand(sp, -kNumRequiredStackFrameSlots * kPointerSize)); |
+ StoreP(MemOperand(sp), Operand::Zero(), r0); |
// Set the exit frame sp value to point just before the return address |
// location. |
lay(r1, MemOperand(sp, kStackFrameSPSlot * kPointerSize)); |
@@ -2330,9 +2309,8 @@ void MacroAssembler::TestDoubleIsMinusZero(DoubleRegister input, |
} |
void MacroAssembler::TestDoubleSign(DoubleRegister input, Register scratch) { |
- stdy(input, MemOperand(sp, -kDoubleSize)); |
- LoadlW(scratch, MemOperand(sp, -kDoubleSize + Register::kExponentOffset)); |
- Cmp32(scratch, Operand::Zero()); |
+ lgdr(scratch, input); |
+ cgfi(scratch, Operand::Zero()); |
} |
void MacroAssembler::TestHeapNumberSign(Register input, Register scratch) { |
@@ -2377,8 +2355,8 @@ void MacroAssembler::TryInt32Floor(Register result, DoubleRegister double_input, |
Label exception; |
// Move high word into input_high |
- StoreDouble(double_input, MemOperand(sp, -kDoubleSize)); |
lay(sp, MemOperand(sp, -kDoubleSize)); |
+ StoreDouble(double_input, MemOperand(sp)); |
LoadlW(input_high, MemOperand(sp, Register::kExponentOffset)); |
la(sp, MemOperand(sp, kDoubleSize)); |
@@ -2444,8 +2422,8 @@ void MacroAssembler::TruncateDoubleToI(Register result, |
// If we fell through then inline version didn't succeed - call stub instead. |
push(r14); |
// Put input on stack. |
- StoreDouble(double_input, MemOperand(sp, -kDoubleSize)); |
lay(sp, MemOperand(sp, -kDoubleSize)); |
+ StoreDouble(double_input, MemOperand(sp)); |
DoubleToIStub stub(isolate(), sp, result, 0, true, true); |
CallStub(&stub); |