| OLD | NEW |
| 1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include <assert.h> // For assert | 5 #include <assert.h> // For assert |
| 6 #include <limits.h> // For LONG_MIN, LONG_MAX. | 6 #include <limits.h> // For LONG_MIN, LONG_MAX. |
| 7 | 7 |
| 8 #if V8_TARGET_ARCH_S390 | 8 #if V8_TARGET_ARCH_S390 |
| 9 | 9 |
| 10 #include "src/base/bits.h" | 10 #include "src/base/bits.h" |
| (...skipping 1291 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1302 Jump(adaptor, RelocInfo::CODE_TARGET); | 1302 Jump(adaptor, RelocInfo::CODE_TARGET); |
| 1303 } | 1303 } |
| 1304 bind(®ular_invoke); | 1304 bind(®ular_invoke); |
| 1305 } | 1305 } |
| 1306 } | 1306 } |
| 1307 | 1307 |
| 1308 void MacroAssembler::FloodFunctionIfStepping(Register fun, Register new_target, | 1308 void MacroAssembler::FloodFunctionIfStepping(Register fun, Register new_target, |
| 1309 const ParameterCount& expected, | 1309 const ParameterCount& expected, |
| 1310 const ParameterCount& actual) { | 1310 const ParameterCount& actual) { |
| 1311 Label skip_flooding; | 1311 Label skip_flooding; |
| 1312 ExternalReference step_in_enabled = | 1312 ExternalReference last_step_action = |
| 1313 ExternalReference::debug_step_in_enabled_address(isolate()); | 1313 ExternalReference::debug_last_step_action_address(isolate()); |
| 1314 mov(r6, Operand(step_in_enabled)); | 1314 STATIC_ASSERT(StepFrame > StepIn); |
| 1315 LoadlB(r6, MemOperand(r6)); | 1315 mov(r6, Operand(last_step_action)); |
| 1316 CmpP(r6, Operand::Zero()); | 1316 LoadB(r6, MemOperand(r6)); |
| 1317 beq(&skip_flooding); | 1317 CmpP(r6, Operand(StepIn)); |
| 1318 blt(&skip_flooding); |
| 1318 { | 1319 { |
| 1319 FrameScope frame(this, | 1320 FrameScope frame(this, |
| 1320 has_frame() ? StackFrame::NONE : StackFrame::INTERNAL); | 1321 has_frame() ? StackFrame::NONE : StackFrame::INTERNAL); |
| 1321 if (expected.is_reg()) { | 1322 if (expected.is_reg()) { |
| 1322 SmiTag(expected.reg()); | 1323 SmiTag(expected.reg()); |
| 1323 Push(expected.reg()); | 1324 Push(expected.reg()); |
| 1324 } | 1325 } |
| 1325 if (actual.is_reg()) { | 1326 if (actual.is_reg()) { |
| 1326 SmiTag(actual.reg()); | 1327 SmiTag(actual.reg()); |
| 1327 Push(actual.reg()); | 1328 Push(actual.reg()); |
| (...skipping 4195 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5523 } | 5524 } |
| 5524 if (mag.shift > 0) ShiftRightArith(result, result, Operand(mag.shift)); | 5525 if (mag.shift > 0) ShiftRightArith(result, result, Operand(mag.shift)); |
| 5525 ExtractBit(r0, dividend, 31); | 5526 ExtractBit(r0, dividend, 31); |
| 5526 AddP(result, r0); | 5527 AddP(result, r0); |
| 5527 } | 5528 } |
| 5528 | 5529 |
| 5529 } // namespace internal | 5530 } // namespace internal |
| 5530 } // namespace v8 | 5531 } // namespace v8 |
| 5531 | 5532 |
| 5532 #endif // V8_TARGET_ARCH_S390 | 5533 #endif // V8_TARGET_ARCH_S390 |
| OLD | NEW |