我已经要求评估Android平台为我们的产品,我期待在各种选项,我才刚刚刮伤表面,正好现在有一件事是困扰我的是,我看不到如何编译代码直ARM代码(没有拇指),我知道,拇指运行速度较慢,我们需要在我们的代码重点路段的性能。

我的认为的它应该只是被设置-march国旗在LOCAL_CFLAGS文件的Android.mk,但我不能得到那个工作...

谁能帮助?

有帮助吗?

解决方案

指定以下标志用于Android.mk一个模块将编译直ARM代码。

LOCAL_ARM_MODE := arm

启用优化还可以帮助:

LOCAL_CFLAGS := -O3

其他提示

可以构建在ARM,拇指,或两者的混合。

在Makefile中,在LOCAL_SRC_FILES,在那里你会列出MyFile.c,指定MyFile.c.arm(不要重命名磁盘上的文件,只是做它的源文件的列表)。这种约定在整个的Android用于代码,性能关键(或只是需要ARM出于某种原因)。

通常的说明适用,当然:Thumb代码往往需要更多的指令来完成的东西,但是每个指令是一半大小,所以代码通常是有点慢,而且公平位小。在某些情况下,较小的尺寸允许更好地配合在ARM CPU上的(小)的高速缓存,而实际上可能会更快。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top