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 1434 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1445 } | 1445 } |
1446 | 1446 |
1447 void MacroAssembler::IsObjectNameType(Register object, Register scratch, | 1447 void MacroAssembler::IsObjectNameType(Register object, Register scratch, |
1448 Label* fail) { | 1448 Label* fail) { |
1449 LoadP(scratch, FieldMemOperand(object, HeapObject::kMapOffset)); | 1449 LoadP(scratch, FieldMemOperand(object, HeapObject::kMapOffset)); |
1450 LoadlB(scratch, FieldMemOperand(scratch, Map::kInstanceTypeOffset)); | 1450 LoadlB(scratch, FieldMemOperand(scratch, Map::kInstanceTypeOffset)); |
1451 CmpP(scratch, Operand(LAST_NAME_TYPE)); | 1451 CmpP(scratch, Operand(LAST_NAME_TYPE)); |
1452 bgt(fail); | 1452 bgt(fail); |
1453 } | 1453 } |
1454 | 1454 |
1455 void MacroAssembler::DebugBreak() { | |
1456 LoadImmP(r2, Operand::Zero()); | |
1457 mov(r3, | |
1458 Operand(ExternalReference(Runtime::kHandleDebuggerStatement, isolate()))); | |
1459 CEntryStub ces(isolate(), 1); | |
1460 DCHECK(AllowThisStubCall(&ces)); | |
1461 Call(ces.GetCode(), RelocInfo::DEBUGGER_STATEMENT); | |
1462 } | |
1463 | |
1464 void MacroAssembler::MaybeDropFrames() { | 1455 void MacroAssembler::MaybeDropFrames() { |
1465 // Check whether we need to drop frames to restart a function on the stack. | 1456 // Check whether we need to drop frames to restart a function on the stack. |
1466 ExternalReference restart_fp = | 1457 ExternalReference restart_fp = |
1467 ExternalReference::debug_restart_fp_address(isolate()); | 1458 ExternalReference::debug_restart_fp_address(isolate()); |
1468 mov(r3, Operand(restart_fp)); | 1459 mov(r3, Operand(restart_fp)); |
1469 LoadP(r3, MemOperand(r3)); | 1460 LoadP(r3, MemOperand(r3)); |
1470 CmpP(r3, Operand::Zero()); | 1461 CmpP(r3, Operand::Zero()); |
1471 Jump(isolate()->builtins()->FrameDropperTrampoline(), RelocInfo::CODE_TARGET, | 1462 Jump(isolate()->builtins()->FrameDropperTrampoline(), RelocInfo::CODE_TARGET, |
1472 ne); | 1463 ne); |
1473 } | 1464 } |
(...skipping 3871 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5345 } | 5336 } |
5346 if (mag.shift > 0) ShiftRightArith(result, result, Operand(mag.shift)); | 5337 if (mag.shift > 0) ShiftRightArith(result, result, Operand(mag.shift)); |
5347 ExtractBit(r0, dividend, 31); | 5338 ExtractBit(r0, dividend, 31); |
5348 AddP(result, r0); | 5339 AddP(result, r0); |
5349 } | 5340 } |
5350 | 5341 |
5351 } // namespace internal | 5342 } // namespace internal |
5352 } // namespace v8 | 5343 } // namespace v8 |
5353 | 5344 |
5354 #endif // V8_TARGET_ARCH_S390 | 5345 #endif // V8_TARGET_ARCH_S390 |
OLD | NEW |