|
Implement breakpoint for closure calls
Introduce a new PcDescriptor kind to distinguish closure calls from other runtime calls. The debugger can patch these calls to set a breakpoint. When stepping into a closure call, the debugger must fish out the closure object from the stack, find the function and set breakpoints in it.
Arm and Mips breakpoint stubs are not implemented yet. ia32 and x64 stubs tested by hand. Automated test to follow.
R=srdjan@google.com
Committed: https://code.google.com/p/dart/source/detail?r=22596
Total comments: 4
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+235 lines, -6 lines) |
Patch |
|
M |
runtime/vm/code_generator.h
|
View
|
1
2
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/code_generator.cc
|
View
|
1
2
|
1 chunk |
+10 lines, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/code_patcher.h
|
View
|
1
2
|
1 chunk |
+5 lines, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/code_patcher_arm.cc
|
View
|
1
2
|
1 chunk |
+8 lines, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/code_patcher_ia32.cc
|
View
|
1
2
|
1 chunk |
+45 lines, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/code_patcher_mips.cc
|
View
|
1
2
|
1 chunk |
+8 lines, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/code_patcher_x64.cc
|
View
|
1
2
|
1 chunk |
+40 lines, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/debugger.h
|
View
|
1
2
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/debugger.cc
|
View
|
1
2
|
6 chunks |
+33 lines, -1 line |
0 comments
|
Download
|
|
M |
runtime/vm/debugger_arm.cc
|
View
|
1
2
|
1 chunk |
+10 lines, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/debugger_ia32.cc
|
View
|
1
2
|
1 chunk |
+10 lines, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/debugger_mips.cc
|
View
|
1
2
|
1 chunk |
+10 lines, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/debugger_x64.cc
|
View
|
1
2
|
1 chunk |
+10 lines, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/intermediate_language_arm.cc
|
View
|
1
2
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
runtime/vm/intermediate_language_ia32.cc
|
View
|
1
2
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
runtime/vm/intermediate_language_mips.cc
|
View
|
1
2
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
runtime/vm/intermediate_language_x64.cc
|
View
|
1
2
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
runtime/vm/object.h
|
View
|
1
2
|
1 chunk |
+2 lines, -1 line |
0 comments
|
Download
|
|
M |
runtime/vm/object.cc
|
View
|
1
2
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/stub_code.h
|
View
|
1
2
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/stub_code_arm.cc
|
View
|
1
2
|
1 chunk |
+6 lines, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/stub_code_ia32.cc
|
View
|
1
2
|
1 chunk |
+11 lines, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/stub_code_mips.cc
|
View
|
1
2
|
1 chunk |
+6 lines, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/stub_code_x64.cc
|
View
|
1
2
|
1 chunk |
+13 lines, -0 lines |
0 comments
|
Download
|
Total messages: 4 (0 generated)
|