| Index: src/arm/debug-arm.cc
|
| diff --git a/src/arm/debug-arm.cc b/src/arm/debug-arm.cc
|
| index c9100576d2f61813654edfb34f3b91f0d50c42c7..d9c25c6588c6a64cec29709d9443cf6541d4b39f 100644
|
| --- a/src/arm/debug-arm.cc
|
| +++ b/src/arm/debug-arm.cc
|
| @@ -12,12 +12,7 @@
|
| namespace v8 {
|
| namespace internal {
|
|
|
| -bool BreakLocationIterator::IsDebugBreakAtReturn() {
|
| - return Debug::IsDebugBreakAtReturn(rinfo());
|
| -}
|
| -
|
| -
|
| -void BreakLocationIterator::SetDebugBreakAtReturn() {
|
| +void BreakLocation::SetDebugBreakAtReturn() {
|
| // Patch the code changing the return from JS function sequence from
|
| // mov sp, fp
|
| // ldmia sp!, {fp, lr}
|
| @@ -28,7 +23,7 @@ void BreakLocationIterator::SetDebugBreakAtReturn() {
|
| // blx ip
|
| // <debug break return code entry point address>
|
| // bkpt 0
|
| - CodePatcher patcher(rinfo()->pc(), Assembler::kJSReturnSequenceInstructions);
|
| + CodePatcher patcher(pc(), Assembler::kJSReturnSequenceInstructions);
|
| patcher.masm()->ldr(v8::internal::ip, MemOperand(v8::internal::pc, 0));
|
| patcher.masm()->blx(v8::internal::ip);
|
| patcher.Emit(
|
| @@ -37,29 +32,7 @@ void BreakLocationIterator::SetDebugBreakAtReturn() {
|
| }
|
|
|
|
|
| -// Restore the JS frame exit code.
|
| -void BreakLocationIterator::ClearDebugBreakAtReturn() {
|
| - rinfo()->PatchCode(original_rinfo()->pc(),
|
| - Assembler::kJSReturnSequenceInstructions);
|
| -}
|
| -
|
| -
|
| -// A debug break in the frame exit code is identified by the JS frame exit code
|
| -// having been patched with a call instruction.
|
| -bool Debug::IsDebugBreakAtReturn(RelocInfo* rinfo) {
|
| - DCHECK(RelocInfo::IsJSReturn(rinfo->rmode()));
|
| - return rinfo->IsPatchedReturnSequence();
|
| -}
|
| -
|
| -
|
| -bool BreakLocationIterator::IsDebugBreakAtSlot() {
|
| - DCHECK(IsDebugBreakSlot());
|
| - // Check whether the debug break slot instructions have been patched.
|
| - return rinfo()->IsPatchedDebugBreakSlotSequence();
|
| -}
|
| -
|
| -
|
| -void BreakLocationIterator::SetDebugBreakAtSlot() {
|
| +void BreakLocation::SetDebugBreakAtSlot() {
|
| DCHECK(IsDebugBreakSlot());
|
| // Patch the code changing the debug break slot code from
|
| // mov r2, r2
|
| @@ -69,7 +42,7 @@ void BreakLocationIterator::SetDebugBreakAtSlot() {
|
| // ldr ip, [pc, #0]
|
| // blx ip
|
| // <debug break slot code entry point address>
|
| - CodePatcher patcher(rinfo()->pc(), Assembler::kDebugBreakSlotInstructions);
|
| + CodePatcher patcher(pc(), Assembler::kDebugBreakSlotInstructions);
|
| patcher.masm()->ldr(v8::internal::ip, MemOperand(v8::internal::pc, 0));
|
| patcher.masm()->blx(v8::internal::ip);
|
| patcher.Emit(
|
| @@ -77,13 +50,6 @@ void BreakLocationIterator::SetDebugBreakAtSlot() {
|
| }
|
|
|
|
|
| -void BreakLocationIterator::ClearDebugBreakAtSlot() {
|
| - DCHECK(IsDebugBreakSlot());
|
| - rinfo()->PatchCode(original_rinfo()->pc(),
|
| - Assembler::kDebugBreakSlotInstructions);
|
| -}
|
| -
|
| -
|
| #define __ ACCESS_MASM(masm)
|
|
|
|
|
|
|