objdump反汇编使用-marm编译的可执行文件作为thumb指令

时间:2013-07-01 12:00:16

标签: gcc arm disassembly thumb objdump

我用gcc -marm编译了一些代码,然后当我尝试用objdump反汇编它时,一半的指令是16位,所以我猜它是拇指指令。为什么?

我见过这个问题: objdump and ARM vs Thumb

所以我试着用objdump -marm -b二进制-D来反汇编它,但是反汇编似乎很奇怪......

我怎么知道这是否是使用拇指指令的gcc,尽管有-marm选项,或者它是否是错误的objdump?

编辑:这里是16位指令的反汇编的一小部分:

  

反汇编部分.init:

     

00008304< _init>:      8304:b508按{r3,lr}
     8306:f000 f849 bl 839c
     830a:bf00 nop
     830c:bd08 pop {r3,pc}

0 个答案:

没有答案