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 |