命中断点时如何在劳特巴赫保存堆栈帧
How to save the stackframe in Lauterbach when the breakpoints is hit
所以我想在到达断点时将带有局部变量的完整堆栈帧转储到 .txt 文件,然后使用“恢复”选项再次重新启动,当再次到达断点时创建新的 .txt 文件并保存再次调用堆栈。我刚刚浏览了文档,但找不到保存堆栈框架的选项,断点中的 CMD window 对我来说很清楚。
在 TRACE32 中,您可以使用命令 Frame /Args /Locals
.
查看显示调用堆栈(带有局部变量)的 window
与任何其他命令一样,您可以使用 pre-command WinPrint.
.[=18 将 window 的显示重定向到文本文件=]
因此,首先在 TRACE32 中设置打印以将每个“打印”保存到文件中。
例如PRinTer.FILE c:/myProject/myLogfile-001.txt ASCIIE
如果选择的文件名以数字结尾,TRACE32会在每次打印后自动增加数字。
现在,命令 WinPrint.Frame /Args /Locals
会将调用堆栈保存到文件 c:/myProject/myLogfile-001.txt 并递增文件索引。
放在一起:
- 设置打印到文件,例如
PRinTer.FILE c:/myProject/myLogfile-001.txt ASCIIE
- 使用 E.g. 设置断点
Break.Set <address> /CMD "WinPrint.Frame /Args /Locals" /RESUME
当您写“stackframe”时,您可能只指当前函数的局部变量,而不是完整的调用堆栈。在这种情况下,使用命令 Var.Local
而不是 Frame /Args /Locals
所以我想在到达断点时将带有局部变量的完整堆栈帧转储到 .txt 文件,然后使用“恢复”选项再次重新启动,当再次到达断点时创建新的 .txt 文件并保存再次调用堆栈。我刚刚浏览了文档,但找不到保存堆栈框架的选项,断点中的 CMD window 对我来说很清楚。
在 TRACE32 中,您可以使用命令 Frame /Args /Locals
.
与任何其他命令一样,您可以使用 pre-command WinPrint.
.[=18 将 window 的显示重定向到文本文件=]
因此,首先在 TRACE32 中设置打印以将每个“打印”保存到文件中。
例如PRinTer.FILE c:/myProject/myLogfile-001.txt ASCIIE
如果选择的文件名以数字结尾,TRACE32会在每次打印后自动增加数字。
现在,命令 WinPrint.Frame /Args /Locals
会将调用堆栈保存到文件 c:/myProject/myLogfile-001.txt 并递增文件索引。
放在一起:
- 设置打印到文件,例如
PRinTer.FILE c:/myProject/myLogfile-001.txt ASCIIE
- 使用 E.g. 设置断点
Break.Set <address> /CMD "WinPrint.Frame /Args /Locals" /RESUME
当您写“stackframe”时,您可能只指当前函数的局部变量,而不是完整的调用堆栈。在这种情况下,使用命令 Var.Local
而不是 Frame /Args /Locals