6

gccにThumb1のみの命令にコンパイルするように指示するにはどうすればよいですか?

誰もがhelloworld.cを知っています:

#include <stdio.h>  
main() {  
 printf("Hello world");  
}  

そしてこれは私のコマンドラインです:

user @ debian-armel:〜$ gcc -mcpu = cortex-m3 -mthumb helloworld.c && objdump -d a.out

そしてvoilá:私が期待した16ビットとは対照的に、ほとんどの命令は32ビット幅です。

だから、私は何が間違っているのですか?

4

1 に答える 1

4

Cortex-M3 は Thumb-2 をサポートしているため、コンパイラは自由に 32 ビット バージョンを生成できます。次のいずれかが必要なものを達成する必要があります。

-march=ARMv5 -mthumb
-march=ARMv4T -mthumb
-march=ARMv6-M
-mcpu=Cortex-M0
于 2012-11-20T13:56:41.443 に答える