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_ARM | 5 #if V8_TARGET_ARCH_ARM |
6 | 6 |
7 #include "src/codegen.h" | 7 #include "src/codegen.h" |
8 #include "src/debug/debug.h" | 8 #include "src/debug/debug.h" |
9 | 9 |
10 namespace v8 { | 10 namespace v8 { |
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
112 ExternalReference after_break_target = | 112 ExternalReference after_break_target = |
113 ExternalReference::debug_after_break_target_address(masm->isolate()); | 113 ExternalReference::debug_after_break_target_address(masm->isolate()); |
114 __ mov(ip, Operand(after_break_target)); | 114 __ mov(ip, Operand(after_break_target)); |
115 __ ldr(ip, MemOperand(ip)); | 115 __ ldr(ip, MemOperand(ip)); |
116 __ Jump(ip); | 116 __ Jump(ip); |
117 } | 117 } |
118 | 118 |
119 | 119 |
120 void DebugCodegen::GenerateFrameDropperLiveEdit(MacroAssembler* masm) { | 120 void DebugCodegen::GenerateFrameDropperLiveEdit(MacroAssembler* masm) { |
121 // Load the function pointer off of our current stack frame. | 121 // Load the function pointer off of our current stack frame. |
122 __ ldr(r1, MemOperand(fp, | 122 __ ldr(r1, MemOperand(fp, FrameDropperFrameConstants::kFunctionOffset)); |
123 StandardFrameConstants::kConstantPoolOffset - kPointerSize)); | |
124 | 123 |
125 // Pop return address, frame and constant pool pointer (if | 124 // Pop return address, frame and constant pool pointer (if |
126 // FLAG_enable_embedded_constant_pool). | 125 // FLAG_enable_embedded_constant_pool). |
127 __ LeaveFrame(StackFrame::INTERNAL); | 126 __ LeaveFrame(StackFrame::INTERNAL); |
128 | 127 |
129 ParameterCount dummy(0); | 128 ParameterCount dummy(0); |
130 __ FloodFunctionIfStepping(r1, no_reg, dummy, dummy); | 129 __ FloodFunctionIfStepping(r1, no_reg, dummy, dummy); |
131 | 130 |
132 { ConstantPoolUnavailableScope constant_pool_unavailable(masm); | 131 { ConstantPoolUnavailableScope constant_pool_unavailable(masm); |
133 // Load context from the function. | 132 // Load context from the function. |
(...skipping 14 matching lines...) Expand all Loading... |
148 | 147 |
149 | 148 |
150 const bool LiveEdit::kFrameDropperSupported = true; | 149 const bool LiveEdit::kFrameDropperSupported = true; |
151 | 150 |
152 #undef __ | 151 #undef __ |
153 | 152 |
154 } // namespace internal | 153 } // namespace internal |
155 } // namespace v8 | 154 } // namespace v8 |
156 | 155 |
157 #endif // V8_TARGET_ARCH_ARM | 156 #endif // V8_TARGET_ARCH_ARM |
OLD | NEW |