![]() |
1
32
提供给ndk的选项只会影响代码的编译方式。它不会改变gl libs或平台中的其他任何内容,这些内容总是以适当的方式生成的。如果你只是把几何图形扔到GL硬件上,你不会看到有什么不同。 如果您想看看您的选项是否有效果,请下载(或创建)一个简单的基准测试,该基准测试使用双精度浮点值执行一系列操作,以及在执行之前和之后执行所需的时间。 -mfloat abi=softp参数确定函数之间如何传递浮点值。Softfp意味着它们总是以整数寄存器或堆栈的形式传递。如果android没有指定softfp,armv7-a版本的库将期望在硬件寄存器中出现浮动,为armv5te构建的任何代码都将中断。 “Softfp”增加了一些函数的开销,但是在ARM上,将值移入和移出fp寄存器的指令是便宜的,而且提供的ABI兼容性使其值得使用。 “-mthumb”允许生成thumb/thumb2代码。Thumb代码的速度会慢一点,但比等效的ARM要小一点;有时较小的代码意味着您可以更好地适应CPU I-cache,并且实际运行速度更快。在这些设备上,大小始终是一个问题,因此默认情况下会启用Thumb。 如果有疑问,“arm eabi objdump-d whatever.o”将向您展示代码的反汇编。 更新: NDK r9b 增加了对-mhard float的支持。这允许您为armeabi-v7a目标构建具有硬浮点API约定的NDK库。 |
![]() |
Abhilash Das · 输入文本时,编辑文本与工具栏重叠 1 年前 |
![]() |
Community wiki · 局部变量可能尚未初始化 2 年前 |
![]() |
jvargas · 如何获取上个月的第一天和最后一天以及一年的第一天 2 年前 |