Cortex A15上的ARM THUMB模式问题

时间:2013-06-14 09:56:25

标签: arm thumb

我们使用的是皮质A15和内核3.8。 如果我编译 arm-gcc-4.7.3 test.c -o test_thumb -mthumb

在内核中,如果我设置CONFIG_ARM_THUMB或取消设置。我的THUMB(用户空间)总是运行,

所以我无法理解这种行为。

1 个答案:

答案 0 :(得分:1)

好吧,所以,我看不出有什么理由去做你想做的事......所以我会假设你是出于纯粹的好奇心。

(在处理器中)无法禁用解码Thumb指令或切换到Thumb状态。 CONFIG_ARM_THUMB选项是关于在操作系统如何操作的应用程序中使用Thumb代码。这意味着,在理论层面上,没有这种禁用可能意味着在某些情况下程序将无法正常工作 - 而不是它会阻止执行Thumb代码。

实际上,它产生的主要影响是OABI,它使用SWI(现在的SVC)指令中的嵌入值来识别它请求的系统调用。 我认为最新版本的GCC / binutils甚至不支持OABI ...... 任何4.7工具链都很可能是EABI。