9fef8fd21f
BytecodeArrayBreakIterator doesn't iterate through locations in position() order. SkipToPosition is looking for closest break_index to passed one. So we should iterate through all breakable locations in function to get all of them. R=jgruber@chromium.org Bug: v8:6469 Change-Id: Ida0b849e9df40458a13e0a0f7af6a00349088228 Reviewed-on: https://chromium-review.googlesource.com/527135 Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#45765}
220 lines
2.8 KiB
Plaintext
220 lines
2.8 KiB
Plaintext
Break locations around function calls
|
|
|
|
Running test: testFunctionCallAsArgument
|
|
Break locations in expression:
|
|
function test() {
|
|
|C|foo2(|C|foo1())
|
|
}
|
|
|
|
Breakpoint at:
|
|
function test() {
|
|
#foo2(foo1())
|
|
}
|
|
|
|
Break at:
|
|
function test() {
|
|
#foo2(foo1())
|
|
}
|
|
|
|
Debugger.stepInto called
|
|
|
|
function foo1() {#}
|
|
function foo2() {}
|
|
|
|
Breakpoint at:
|
|
function test() {
|
|
foo2(#foo1())
|
|
}
|
|
|
|
Break at:
|
|
function test() {
|
|
foo2(#foo1())
|
|
}
|
|
|
|
Debugger.stepInto called
|
|
|
|
function foo1() {#}
|
|
function foo2() {}
|
|
|
|
Breakpoint at expression line.
|
|
function test() {
|
|
#foo2(foo1())
|
|
}
|
|
|
|
Debugger.stepInto called
|
|
|
|
function foo1() {#}
|
|
function foo2() {}
|
|
|
|
|
|
Running test: testFunctionCallAsArgument
|
|
Break locations in expression:
|
|
function test() {
|
|
|C|foo2(|C|foo1());
|
|
}
|
|
|
|
Breakpoint at:
|
|
function test() {
|
|
#foo2(foo1());
|
|
}
|
|
|
|
Break at:
|
|
function test() {
|
|
#foo2(foo1());
|
|
}
|
|
|
|
Debugger.stepInto called
|
|
|
|
function foo1() {#}
|
|
function foo2() {}
|
|
|
|
Breakpoint at:
|
|
function test() {
|
|
foo2(#foo1());
|
|
}
|
|
|
|
Break at:
|
|
function test() {
|
|
foo2(#foo1());
|
|
}
|
|
|
|
Debugger.stepInto called
|
|
|
|
function foo1() {#}
|
|
function foo2() {}
|
|
|
|
Breakpoint at expression line.
|
|
function test() {
|
|
#foo2(foo1());
|
|
}
|
|
|
|
Debugger.stepInto called
|
|
|
|
function foo1() {#}
|
|
function foo2() {}
|
|
|
|
|
|
Running test: testFunctionCallAsArguments
|
|
Break locations in expression:
|
|
function test() {
|
|
|C|foo3(|C|foo1(), |C|foo2());
|
|
}
|
|
|
|
Breakpoint at:
|
|
function test() {
|
|
#foo3(foo1(), foo2());
|
|
}
|
|
|
|
Break at:
|
|
function test() {
|
|
#foo3(foo1(), foo2());
|
|
}
|
|
|
|
Debugger.stepInto called
|
|
|
|
function foo1() {#}
|
|
function foo2() {}
|
|
|
|
Breakpoint at:
|
|
function test() {
|
|
foo3(#foo1(), foo2());
|
|
}
|
|
|
|
Break at:
|
|
function test() {
|
|
foo3(#foo1(), foo2());
|
|
}
|
|
|
|
Debugger.stepInto called
|
|
|
|
function foo1() {#}
|
|
function foo2() {}
|
|
|
|
Breakpoint at:
|
|
function test() {
|
|
foo3(foo1(), #foo2());
|
|
}
|
|
|
|
Break at:
|
|
function test() {
|
|
foo3(foo1(), #foo2());
|
|
}
|
|
|
|
Debugger.stepInto called
|
|
function foo1() {}
|
|
function foo2() {#}
|
|
function foo3() {}
|
|
|
|
Breakpoint at expression line.
|
|
function test() {
|
|
#foo3(foo1(), foo2());
|
|
}
|
|
|
|
Debugger.stepInto called
|
|
|
|
function foo1() {#}
|
|
function foo2() {}
|
|
|
|
|
|
Running test: testFunctionCallInBinaryExpression
|
|
Break locations in expression:
|
|
function test() {
|
|
|C|foo3(|C|foo1() + |C|foo2());
|
|
}
|
|
|
|
Breakpoint at:
|
|
function test() {
|
|
#foo3(foo1() + foo2());
|
|
}
|
|
|
|
Break at:
|
|
function test() {
|
|
#foo3(foo1() + foo2());
|
|
}
|
|
|
|
Debugger.stepInto called
|
|
|
|
function foo1() {#}
|
|
function foo2() {}
|
|
|
|
Breakpoint at:
|
|
function test() {
|
|
foo3(#foo1() + foo2());
|
|
}
|
|
|
|
Break at:
|
|
function test() {
|
|
foo3(#foo1() + foo2());
|
|
}
|
|
|
|
Debugger.stepInto called
|
|
|
|
function foo1() {#}
|
|
function foo2() {}
|
|
|
|
Breakpoint at:
|
|
function test() {
|
|
foo3(foo1() + #foo2());
|
|
}
|
|
|
|
Break at:
|
|
function test() {
|
|
foo3(foo1() + #foo2());
|
|
}
|
|
|
|
Debugger.stepInto called
|
|
function foo1() {}
|
|
function foo2() {#}
|
|
function foo3() {}
|
|
|
|
Breakpoint at expression line.
|
|
function test() {
|
|
#foo3(foo1() + foo2());
|
|
}
|
|
|
|
Debugger.stepInto called
|
|
|
|
function foo1() {#}
|
|
function foo2() {}
|
|
|