| 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 #include "v8.h" | 5 #include "v8.h" | 
| 6 | 6 | 
| 7 #if V8_TARGET_ARCH_ARM | 7 #if V8_TARGET_ARCH_ARM | 
| 8 | 8 | 
| 9 #include "codegen.h" | 9 #include "codegen.h" | 
| 10 #include "debug.h" | 10 #include "debug.h" | 
| (...skipping 14 matching lines...) Expand all  Loading... | 
| 25   //   bx lr | 25   //   bx lr | 
| 26   // to a call to the debug break return code. | 26   // to a call to the debug break return code. | 
| 27   //   ldr ip, [pc, #0] | 27   //   ldr ip, [pc, #0] | 
| 28   //   blx ip | 28   //   blx ip | 
| 29   //   <debug break return code entry point address> | 29   //   <debug break return code entry point address> | 
| 30   //   bktp 0 | 30   //   bktp 0 | 
| 31   CodePatcher patcher(rinfo()->pc(), Assembler::kJSReturnSequenceInstructions); | 31   CodePatcher patcher(rinfo()->pc(), Assembler::kJSReturnSequenceInstructions); | 
| 32   patcher.masm()->ldr(v8::internal::ip, MemOperand(v8::internal::pc, 0)); | 32   patcher.masm()->ldr(v8::internal::ip, MemOperand(v8::internal::pc, 0)); | 
| 33   patcher.masm()->blx(v8::internal::ip); | 33   patcher.masm()->blx(v8::internal::ip); | 
| 34   patcher.Emit( | 34   patcher.Emit( | 
| 35       debug_info_->GetIsolate()->debug()->debug_break_return()->entry()); | 35       debug_info_->GetIsolate()->builtins()->Return_DebugBreak()->entry()); | 
| 36   patcher.masm()->bkpt(0); | 36   patcher.masm()->bkpt(0); | 
| 37 } | 37 } | 
| 38 | 38 | 
| 39 | 39 | 
| 40 // Restore the JS frame exit code. | 40 // Restore the JS frame exit code. | 
| 41 void BreakLocationIterator::ClearDebugBreakAtReturn() { | 41 void BreakLocationIterator::ClearDebugBreakAtReturn() { | 
| 42   rinfo()->PatchCode(original_rinfo()->pc(), | 42   rinfo()->PatchCode(original_rinfo()->pc(), | 
| 43                      Assembler::kJSReturnSequenceInstructions); | 43                      Assembler::kJSReturnSequenceInstructions); | 
| 44 } | 44 } | 
| 45 | 45 | 
| (...skipping 20 matching lines...) Expand all  Loading... | 
| 66   //   mov r2, r2 | 66   //   mov r2, r2 | 
| 67   //   mov r2, r2 | 67   //   mov r2, r2 | 
| 68   // to a call to the debug break slot code. | 68   // to a call to the debug break slot code. | 
| 69   //   ldr ip, [pc, #0] | 69   //   ldr ip, [pc, #0] | 
| 70   //   blx ip | 70   //   blx ip | 
| 71   //   <debug break slot code entry point address> | 71   //   <debug break slot code entry point address> | 
| 72   CodePatcher patcher(rinfo()->pc(), Assembler::kDebugBreakSlotInstructions); | 72   CodePatcher patcher(rinfo()->pc(), Assembler::kDebugBreakSlotInstructions); | 
| 73   patcher.masm()->ldr(v8::internal::ip, MemOperand(v8::internal::pc, 0)); | 73   patcher.masm()->ldr(v8::internal::ip, MemOperand(v8::internal::pc, 0)); | 
| 74   patcher.masm()->blx(v8::internal::ip); | 74   patcher.masm()->blx(v8::internal::ip); | 
| 75   patcher.Emit( | 75   patcher.Emit( | 
| 76       debug_info_->GetIsolate()->debug()->debug_break_slot()->entry()); | 76       debug_info_->GetIsolate()->builtins()->Slot_DebugBreak()->entry()); | 
| 77 } | 77 } | 
| 78 | 78 | 
| 79 | 79 | 
| 80 void BreakLocationIterator::ClearDebugBreakAtSlot() { | 80 void BreakLocationIterator::ClearDebugBreakAtSlot() { | 
| 81   ASSERT(IsDebugBreakSlot()); | 81   ASSERT(IsDebugBreakSlot()); | 
| 82   rinfo()->PatchCode(original_rinfo()->pc(), | 82   rinfo()->PatchCode(original_rinfo()->pc(), | 
| 83                      Assembler::kDebugBreakSlotInstructions); | 83                      Assembler::kDebugBreakSlotInstructions); | 
| 84 } | 84 } | 
| 85 | 85 | 
| 86 const bool Debug::FramePaddingLayout::kIsSupported = false; | 86 const bool Debug::FramePaddingLayout::kIsSupported = false; | 
| (...skipping 204 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 291   masm->Abort(kLiveEditFrameDroppingIsNotSupportedOnArm); | 291   masm->Abort(kLiveEditFrameDroppingIsNotSupportedOnArm); | 
| 292 } | 292 } | 
| 293 | 293 | 
| 294 const bool Debug::kFrameDropperSupported = false; | 294 const bool Debug::kFrameDropperSupported = false; | 
| 295 | 295 | 
| 296 #undef __ | 296 #undef __ | 
| 297 | 297 | 
| 298 } }  // namespace v8::internal | 298 } }  // namespace v8::internal | 
| 299 | 299 | 
| 300 #endif  // V8_TARGET_ARCH_ARM | 300 #endif  // V8_TARGET_ARCH_ARM | 
| OLD | NEW | 
|---|