This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具/软件:Code Composer Studio
您好,
我的代码基于C++,使用TI模拟器,我尝试在类函数内的ASM标签上设置断点,并且:
读取 本地变量地址
读取 私有类变量地址
我可以设置断点,但在尝试读取变量地址时,就好像它们不在范围内一样。
我的代码看起来像这样(编译时没有优化):
MyClass.h:
类MyClass { 私人: int m_var; 公共: MyClass():m_VAR(0){} 作废钙化(void) { 内部本地= 0; 本地++; asm (".global dump\ndump:");//断点标签 本地++; } }
我的DSS脚本如下所示:
var script = ScriptingEnvironment.instance(); DS = script.getServer("DebugServer.1"); var DS; ds.setConfig(...);//simulator var debugSession0 = DS.openSession(".*_0"); debugSession0.target.connect(); debugSession0.memory.debugProgram(...); var pcsave = debugSession0.symbol.getAddress("debugSession0.)" debugSession0.breakpoint.add(pcsave); debugSession0.target.run(); = debugSession0.gpsetfulfulfc.express 打印(pcsave) var my_address = debugSession0.symbol.getAddress("local"); 打印(my_address); var my_address = debugSession0.symbol.getAddress("this->m_var");//也尝试了(*this).m_var,并使用.expression.evaluate 打印(my_address); debugSession0.target.run(); }
大概调试器应该在断点停在标签处时看到这两个变量,它们应该在范围内,但我从„DSS收到“无法获取符号的地址”错误。
请帮我解决此问题吗?
你好,Ki-Soo
我也尝试了.expression.evaluate,但它仍然像不在范围内一样工作。 您能否验证在这种情况下它是否应在范围内?
谢谢!
丹尼尔