Lauterbach CMM脚本symbol.exit <myfunc>始终不一致

时间:2018-01-18 07:10:40

标签: powerpc trace32 lauterbach

我正在调用命令 go symbol.exit(myfunc)。有时程序控制在函数结束时到达,但有时它以函数的开头结束。

我们还有其他方法可以在功能结束时到达。请问我为什么在我的环境中观察到这种行为。

1 个答案:

答案 0 :(得分:2)

我建议使用 Go.Return 命令。

将Go.Return与最新版本的TRACE32一起使用将使CPU停止在当前函数的结尾处。再次使用Go.Return,在功能的退出点停止CPU。

但是Go sYmbol.EXIT(myfunc)也应该在函数“myfunc”的出口处停止CPU(除非之前没有其他断点停止CPU)。

如果失败,我可以想象这可能是由编译器优化引起的。 (例如,如果内联函数,则调试器可能找不到退出点)。因此,请尝试将编译器优化级别设置为较低的值。

否则,您可以联系Lauterbach支持部门,告诉他们您的问题以及您正在使用的PowerPC,编译器(及其版本)以及您正在使用的TRACE32版本号。