如何强制gcc生成拇指32位指令?

时间:2016-12-31 07:06:59

标签: gcc arm thumb

是否有可能在可能的情况下强制生成拇指32位指令?

例如我有:

{{1}}

但他们都是拇指16位。出于测试原因,我想要拇指32位指令。

1 个答案:

答案 0 :(得分:1)

嗯,我认为你不能直接做到这一点,但有一种非常奇怪的方式是以非常间接的方式实现这一点。就在几天前,我看到一个项目,编译过程不仅仅是一个简单的arm-none-eabi-gcc ... -c file.c -o file.o。该项目正在调用arm-none-eabi-gcc以生成扩展程序集列表,稍后将arm-none-eabi-as手动汇编到目标文件中。如果您这样做,那么在这两个步骤之间您可以修改程序集列表以仅包含大量说明 - 在大多数(所有?)情况下,您可以使用sed添加.w后缀说明(将add r3, r2更改为add.w r3, r2,依此类推)。这样的构建复杂程度是否值得,取决于你......