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 #if V8_TARGET_ARCH_PPC | 5 #if V8_TARGET_ARCH_PPC |
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 103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
114 ExternalReference after_break_target = | 114 ExternalReference after_break_target = |
115 ExternalReference::debug_after_break_target_address(masm->isolate()); | 115 ExternalReference::debug_after_break_target_address(masm->isolate()); |
116 __ mov(ip, Operand(after_break_target)); | 116 __ mov(ip, Operand(after_break_target)); |
117 __ LoadP(ip, MemOperand(ip)); | 117 __ LoadP(ip, MemOperand(ip)); |
118 __ JumpToJSEntry(ip); | 118 __ JumpToJSEntry(ip); |
119 } | 119 } |
120 | 120 |
121 | 121 |
122 void DebugCodegen::GenerateFrameDropperLiveEdit(MacroAssembler* masm) { | 122 void DebugCodegen::GenerateFrameDropperLiveEdit(MacroAssembler* masm) { |
123 // Load the function pointer off of our current stack frame. | 123 // Load the function pointer off of our current stack frame. |
124 __ LoadP(r4, MemOperand(fp, StandardFrameConstants::kConstantPoolOffset - | 124 __ LoadP(r4, MemOperand(fp, FrameDropperFrameConstants::kFunctionOffset)); |
125 kPointerSize)); | |
126 | 125 |
127 // Pop return address and frame | 126 // Pop return address and frame |
128 __ LeaveFrame(StackFrame::INTERNAL); | 127 __ LeaveFrame(StackFrame::INTERNAL); |
129 | 128 |
130 ParameterCount dummy(0); | 129 ParameterCount dummy(0); |
131 __ FloodFunctionIfStepping(r4, no_reg, dummy, dummy); | 130 __ FloodFunctionIfStepping(r4, no_reg, dummy, dummy); |
132 | 131 |
133 // Load context from the function. | 132 // Load context from the function. |
134 __ LoadP(cp, FieldMemOperand(r4, JSFunction::kContextOffset)); | 133 __ LoadP(cp, FieldMemOperand(r4, JSFunction::kContextOffset)); |
135 | 134 |
(...skipping 10 matching lines...) Expand all Loading... |
146 } | 145 } |
147 | 146 |
148 | 147 |
149 const bool LiveEdit::kFrameDropperSupported = true; | 148 const bool LiveEdit::kFrameDropperSupported = true; |
150 | 149 |
151 #undef __ | 150 #undef __ |
152 } // namespace internal | 151 } // namespace internal |
153 } // namespace v8 | 152 } // namespace v8 |
154 | 153 |
155 #endif // V8_TARGET_ARCH_PPC | 154 #endif // V8_TARGET_ARCH_PPC |
OLD | NEW |