Index: src/debug/s390/debug-s390.cc |
diff --git a/src/debug/s390/debug-s390.cc b/src/debug/s390/debug-s390.cc |
index ab262630c487c0d71d92d4dc90f28ea3ee0eff24..8165bf98741b91775c02e0f82abc4cb542ab7a8a 100644 |
--- a/src/debug/s390/debug-s390.cc |
+++ b/src/debug/s390/debug-s390.cc |
@@ -88,15 +88,9 @@ |
__ LoadSmiLiteral(ip, Smi::FromInt(LiveEdit::kFramePaddingInitialSize)); |
__ push(ip); |
- // Push arguments for DebugBreak call. |
- if (mode == SAVE_RESULT_REGISTER) { |
- // Break on return. |
- __ push(r2); |
- } else { |
- // Non-return breaks. |
- __ Push(masm->isolate()->factory()->the_hole_value()); |
- } |
- __ mov(r2, Operand(1)); |
+ if (mode == SAVE_RESULT_REGISTER) __ push(r2); |
+ |
+ __ mov(r2, Operand::Zero()); // no arguments |
__ mov(r3, |
Operand(ExternalReference( |
Runtime::FunctionForId(Runtime::kDebugBreak), masm->isolate()))); |
@@ -107,13 +101,11 @@ |
if (FLAG_debug_code) { |
for (int i = 0; i < kNumJSCallerSaved; i++) { |
Register reg = {JSCallerSavedCode(i)}; |
- // Do not clobber r2 if SAVE_RESULT_REGISTER is set. It will |
- // contain return value of the function. |
- if (!(reg.is(r2) && SAVE_RESULT_REGISTER)) { |
- __ mov(reg, Operand(kDebugZapValue)); |
- } |
+ __ mov(reg, Operand(kDebugZapValue)); |
} |
} |
+ |
+ if (mode == SAVE_RESULT_REGISTER) __ pop(r2); |
// Don't bother removing padding bytes pushed on the stack |
// as the frame is going to be restored right away. |