| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 #if V8_TARGET_ARCH_X64 | 5 #if V8_TARGET_ARCH_X64 |
| 6 | 6 |
| 7 #include "src/base/bits.h" | 7 #include "src/base/bits.h" |
| 8 #include "src/base/division-by-constant.h" | 8 #include "src/base/division-by-constant.h" |
| 9 #include "src/bootstrapper.h" | 9 #include "src/bootstrapper.h" |
| 10 #include "src/codegen.h" | 10 #include "src/codegen.h" |
| (...skipping 4053 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4064 if (FLAG_native_code_counters && counter->Enabled()) { | 4064 if (FLAG_native_code_counters && counter->Enabled()) { |
| 4065 Operand counter_operand = ExternalOperand(ExternalReference(counter)); | 4065 Operand counter_operand = ExternalOperand(ExternalReference(counter)); |
| 4066 if (value == 1) { | 4066 if (value == 1) { |
| 4067 decl(counter_operand); | 4067 decl(counter_operand); |
| 4068 } else { | 4068 } else { |
| 4069 subl(counter_operand, Immediate(value)); | 4069 subl(counter_operand, Immediate(value)); |
| 4070 } | 4070 } |
| 4071 } | 4071 } |
| 4072 } | 4072 } |
| 4073 | 4073 |
| 4074 void MacroAssembler::DebugBreak() { | |
| 4075 Call(isolate()->builtins()->HandleDebuggerStatement(), | |
| 4076 RelocInfo::DEBUGGER_STATEMENT); | |
| 4077 } | |
| 4078 | |
| 4079 void MacroAssembler::MaybeDropFrames() { | 4074 void MacroAssembler::MaybeDropFrames() { |
| 4080 // Check whether we need to drop frames to restart a function on the stack. | 4075 // Check whether we need to drop frames to restart a function on the stack. |
| 4081 ExternalReference restart_fp = | 4076 ExternalReference restart_fp = |
| 4082 ExternalReference::debug_restart_fp_address(isolate()); | 4077 ExternalReference::debug_restart_fp_address(isolate()); |
| 4083 Load(rbx, restart_fp); | 4078 Load(rbx, restart_fp); |
| 4084 testp(rbx, rbx); | 4079 testp(rbx, rbx); |
| 4085 j(not_zero, isolate()->builtins()->FrameDropperTrampoline(), | 4080 j(not_zero, isolate()->builtins()->FrameDropperTrampoline(), |
| 4086 RelocInfo::CODE_TARGET); | 4081 RelocInfo::CODE_TARGET); |
| 4087 } | 4082 } |
| 4088 | 4083 |
| (...skipping 1200 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5289 movl(rax, dividend); | 5284 movl(rax, dividend); |
| 5290 shrl(rax, Immediate(31)); | 5285 shrl(rax, Immediate(31)); |
| 5291 addl(rdx, rax); | 5286 addl(rdx, rax); |
| 5292 } | 5287 } |
| 5293 | 5288 |
| 5294 | 5289 |
| 5295 } // namespace internal | 5290 } // namespace internal |
| 5296 } // namespace v8 | 5291 } // namespace v8 |
| 5297 | 5292 |
| 5298 #endif // V8_TARGET_ARCH_X64 | 5293 #endif // V8_TARGET_ARCH_X64 |
| OLD | NEW |