Native开发工具之CPU-和架构(三,中高级Android开发应该要了解_hwcap-程序员宅基地

技术标签: android  移动开发  Android  

NDK 工具链假设在函数调用之前进行 16 字节堆栈对齐。默认工具和选项会强制实施此规则。如果编写的是汇编代码,必须确保堆栈对齐,而且其他编译器也遵守此规则。

请参阅以下文档了解更多详情:

x86_64

此 ABI 适用于支持通常称为“x86-64”的指令集的 CPU。它支持 GCC 通常使用以下编译器标记生成的指令:

 -march=x86-64 -msse4.2 -mpopcnt -m64 -mtune=intel

这些标记指向 x86-64 指令集(根据 GCC 文档),以及 MMXSSESSE2SSE3SSSE3SSE4.1SSE4.2 和 POPCNT 扩展指令集。生成的代码在顶层 Intel 64 位 CPU 之间进行了均衡优化。

如需了解有关编译器标记的更多信息,特别是与性能优化相关的信息,请参阅 GCC x86 性能

此 ABI 不含任何其他可选的 x86-64 扩展指令集,例如:

  • MOVBE
  • SHA
  • AVX
  • AVX2

您仍可使用这些扩展指令集,只要您使用运行时功能探测来启用它们,并且为不支持它们的设备提供回退机制。

请参阅以下文档了解更多详情:

为特定 ABI 生成代码

默认情况下,NDK 指向所有非弃用 ABI。您可通过在 Application.mk 文件中设置 APP_ABI 来指向单个 ABI。以下代码段演示了使用 APP_ABI 的几个示例

  APP_ABI := arm64-v8a  # Target only arm64-v8a
  APP_ABI := all  # Target all ABIs, including those that are deprecated.
  APP_ABI := armeabi-v7a x86_64  # Target only armeabi-v7a and x86_64.

要详细了解您可以为 APP_ABI 变量指定的值,请参阅 Android.mk

编译系统的默认行为是将每个 ABI 的二进制文件包括在单个 APK(也称为胖 APK)内。与仅包含单个 ABI 的二进制文件的 APK 相比,胖 APK 要大得多;要权衡的是兼容性更广,但 APK 更大。强烈建议您利用

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_61417864/article/details/120145800

智能推荐

Python报错ModuleNotFoundError: No module named 'numpy'-程序员宅基地

文章浏览阅读10w+次,点赞108次,收藏197次。Python报错ModuleNotFoundError: No module named ‘numpy’这种情况一般是缺少numpy所致,需要安装numpy。安装numpy的时候需要先更新pip,使用最新版的pip来安装:python -m pip install --upgrade pip然后pip install numpy接下来在命令行窗口运行python然后运行fr..._modulenotfounderror: no module named 'numpy

Python手记-9:Python LXML库XPath的爬取晋江书目_authorid=1322620-程序员宅基地

文章浏览阅读3w次。1. lxml库lxml是功能最丰富且易于使用的库,用于处理Python语言中的XML和HTML,还可实现WEB爬取,官文参考:https://lxml.de/,完整的PDF文档下载链接https://lxml.de/lxmldoc-4.5.0.pdf,但是阅读起来……em……怪自己不够聪明的样子。Linux下安装lxml库:[root@chengyu ~]# pip3 instal..._authorid=1322620

left join查询可能出现重复数据 (主表中一条变两条)_a left join b a有两条数据-程序员宅基地

文章浏览阅读6.7w次,点赞5次,收藏17次。创建两个表 执行下列查询语句SELECT * from person a LEFT JOIN people b on a.action_id = b.action_id显然 person表中的数据出现了两次 ,left join 以主表为主 ,我们在今后的开发要注意类似的问题执行下面的语句也是同样的效果SELECT * from person_a left join b a有两条数据

redis客户端RedisDesktopManager连接常见问题_redis desktop manager 新建连接点击不了ok-程序员宅基地

文章浏览阅读1.9k次。RedisDesktopManager是一款连接redis数据库的客户端。背景:我是在自己机器上装的redis,使用的是虚拟机,系统是linux 版本是centeros-6.4在使用这个连接redis的时候,发现连接不上。第一步:在自己的本机外面试下能不能连接上虚拟机,打开cmd,使用 ping 192.168.232.132 (192.168.232.132这个为虚拟机的ip地址..._redis desktop manager 新建连接点击不了ok

无法安装此app,因为无法验证其完整性 ,解决方案_无法验证完整性的app怎么安装苹果-程序员宅基地

文章浏览阅读3.4k次。(╯□╰)o一群小币崽子没看我资源介绍直接点下载地址一顿操作。证书及描述文件过期 (没有签名或者不完整)_无法验证完整性的app怎么安装苹果

pringMVC-程序员宅基地

文章浏览阅读109次。http://elim.iteye.com/category/175984

随便推点

6-16 2017Final 乐观的中考生 (20分)_作为参加首届全省统一中考的学生,小林同学的压力非常大。每天老师都会布置很多批-程序员宅基地

文章浏览阅读680次。作为参加首届全省统一中考的学生,小林同学的压力非常大。每天老师都会布置很多批作业,每批作业具有相同的优先值(不同批的任务的优先值不一样),由若干个不同的任务组成,每个任务都有唯一的编号,小林同学会把每批作业先按照编号顺序整理好,然后按照这批作业的优先值,放入活页夹里。接下来,她将按照任务在活页夹的顺序依次把作业完成。但近期情况有改变了:妈妈给她生了一个弟弟,所以她要时不时帮妈妈照看一下他。令她欣慰的是:可爱的弟弟非常乖,每次吵闹的时间和程度都是可以预期的。因此她可以确定当前能用于完成作业的最长时间,每项_作为参加首届全省统一中考的学生,小林同学的压力非常大。每天老师都会布置很多批

杂谈(一)-程序员宅基地

文章浏览阅读57次。当初,选择前端这条路,是因为自己java学的一般,无实际项目经验,同时觉得后端太过无聊。选前端,想着回老家后,就算找不到对口的工作,做个网页设计的工作,整整ps,毕竟是做技术,工资也说得过去。于是,就加入前端大军。一转眼,从实习毕业,到现在已经两年了,所在项目组也没有发展空间了,此时,我停下脚步回想,在前端的这个行业里到底要做成什么样子呢,我以后的职业规划又是什么样子的,一时间很迷茫...

排序算法总结_excel排序的算法原理-程序员宅基地

文章浏览阅读166次。选择排序:(1)选择排序:两层循环,内层找最小值,外层遍历,进而实现交换,可以用于求Top K的问题,这种情况下内层循环只要执行K次。(2)堆排序:先构建一个堆(有序的完全二叉树),这个过程中最多执行N次比较与2N次交换,之后依次取出堆顶元素,然后将处于数组最后的元素置于堆顶,下沉,使得二叉堆再次有序。(利用一个数组的1-N+1存储堆中的元素)。取堆顶元素然后下沉的过程有点类似选择排序,只..._excel排序的算法原理

找到一个数组中只出现一次的数_一个整数数组一个数只出现了1次-程序员宅基地

文章浏览阅读3.2k次,点赞5次,收藏10次。你有没有遇到这样的题,在一个数组中,只有1个数字出现一次,其他的数字都出现了两次,那么你能找到这个只出现一次的数字么?这只是简单的1.0版本,还有如果在这个数组中,有两个数字出现了一次,其他的数字都出现了两次,那么你能找到这两个数字么?还有2.0版本,三个数字出现一次呢?四个呢?五个呢?你要怎么去实现呢?首先,我们一步一步来,从找一个数字开始,其实,如果不是考虑到内存的关系,用桶排序是..._一个整数数组一个数只出现了1次

Java HotSpot(TM) 64-Bit Server VM warning: Sharing is only supported for boot loader classes解决方法-程序员宅基地

文章浏览阅读3.5w次,点赞33次,收藏41次。在我尝试用IDEA进行调试时,IDAE报错:Java HotSpot 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended翻译过来就是:Java HotSpot(TM)64位服务器虚拟机警告:共享仅支持引导加载程序类,因为已附加引导程序类路径解决方案:打开设置,在搜索框内输入:async,然后去掉以下勾选即_java hotspot(tm) 64-bit server vm warning: sharing is only supported for boo

新型高强度铝合金焊条_变形铝合金焊条-程序员宅基地

文章浏览阅读404次。1.2mm)的Al-12.7Si-0.7Mg成分铝合金焊丝,自制焊丝表面质量良好,内部组织与成分均匀。这种铝合金焊条的焊芯由铝合金组成,它的成分质量分数如下SC钪0.05%~0.8%,Er铒0.05%~0.6%,硼铬稀土0.01%~0.8%,B硼0.01%~0.5%,Ti钛0.1%~0.3%,Cr铬0.05%~0.4%,Zr锆0.05%.:铁0.15%,硅0.12%,铜0.1%,锰0.02%,镁4.5% ,锌5.5%,TiC碳化钛0.05%,TiB硼化钛0.05%,石墨0.22%其余为6061铝合金。_变形铝合金焊条