Android:在SIGPROF信号处理程序中获取回溯时的奇怪FP值

时间:2013-07-30 08:07:04

标签: android profiling arm backtrace

我正在对Android应用程序进行分析,并希望在每个SIGPROF的信号处理程序中获得回溯,但是ARM的reigster FP很奇怪,这不是存储帧指针并且可以执行回溯的原始目的。已设置-fno-omit-frame-pointer gcc标志。 FP的值如下:

I/PROFILING(29341): 0 : pc=0x5c6263a8, sp=0xbeb69e90, fp=0x4, lr=0x5c626540,
I/PROFILING(29341): 1 : pc=0x5c846288, sp=0xbeb6a018, fp=0x3, lr=0x5c8589e8,
I/PROFILING(29341): 2 : pc=0x5edfef90, sp=0x609ff32c, fp=0x609ff33c, lr=0x5dc38b9c,
I/PROFILING(29341): 3 : pc=0x5da09030, sp=0x609ff340, fp=0x609ff3f4, lr=0x5da09064, 
I/PROFILING(29341): 4 : pc=0x400adb64, sp=0xbeb69d40, fp=0x4, lr=0x400c8d79,
I/PROFILING(29341): 5 : pc=0x5c6263a0, sp=0xbeb69e90, fp=0x4, lr=0x5c626540,

第3行和第4行的FP值似乎是正确的,但其他人很奇怪,有人知道为什么FP的值是这些吗?

0 个答案:

没有答案