0

我知道要获取劳特巴赫的符号地址,使用了 Address.Offset() ,但是此命令不适用于静态函数!找不到静态符号。那么获取静态符号地址偏移量的命令是什么呢?

4

2 回答 2

1

我正在使用 GreenHills 编译器。通过在Data.Load.Elf上添加/GHS选项,问题解决

于 2015-12-04T12:02:40.843 回答
0

我假设您的编译器优化了您的静态函数,例如将函数的主体直接包含在调用者中。编译器可能会这样做,如果他们这样做,静态函数的入口符号将不再可用,因此不能在任何调试器中使用。

因此,在您的 makefile 中,确保您编译的代码没有优化(或较少优化),并确保您为调试而编译。或者将您的函数声明为外部。或者使用一些供应商特定的编译器编译指示或属性来保留静态函数。

还要确保你的静态函数被调用 - 否则它也可能被编译器转储。

于 2015-12-04T10:08:50.320 回答