Makefile中常见不支持ARM架构的编译参数

举报
HBK0.8 发表于 2025/03/05 17:54:58 2025/03/05
【摘要】 x86/x86_64 特有的指令集优化参数这些参数用于启用x86架构的特定指令集,ARM架构不支持这些指令集。-msse : 启用SSE(Streaming SIMD Extensions)指令集。-msse2 : 启用SSE2指令集。-msse3 : 启用SSE3指令集。-mssse3 : 启用SSSE3指令集。-msse4.1 : 启用SSE4.1指令集。-msse4.2 : 启用SSE...
  1. x86/x86_64 特有的指令集优化参数
    这些参数用于启用x86架构的特定指令集,ARM架构不支持这些指令集。
  • -msse : 启用SSE(Streaming SIMD Extensions)指令集。
  • -msse2 : 启用SSE2指令集。
  • -msse3 : 启用SSE3指令集。
  • -mssse3 : 启用SSSE3指令集。
  • -msse4.1 : 启用SSE4.1指令集。
  • -msse4.2 : 启用SSE4.2指令集。
  • -mavx : 启用AVX(Advanced Vector Extensions)指令集。
  • -mavx2 : 启用AVX2指令集。
  • -mavx512f : 启用AVX-512指令集。
  • -mpopcnt : 启用POPCNT指令集(用于快速计算整数中1的位数)。
  • -mbmi : 启用BMI(Bit Manipulation Instructions)指令集。
  • -mbmi2 : 启用BMI2指令集。
  1. x86/x86_64 特有的架构参数
    这些参数用于指定x86架构的特定版本或特性,ARM架构不支持。
  • -march=native : 自动检测并优化当前机器的架构(通常是x86/x86_64)。
  • -mtune=native : 自动检测并优化当前机器的微架构(通常是x86/x86_64)。
  • -m32 : 生成32位x86代码。
  • -m64 : 生成64位x86_64代码。
  1. x86/x86_64 特有的其他参数
    这些参数与x86架构的特性或优化相关,ARM架构不支持。
  • -mfpmath=sse : 使用SSE指令集进行浮点运算(默认是x87浮点单元)。
  • -mno-sse : 禁用SSE指令集。
  • -mno-avx : 禁用AVX指令集。
  • -mno-sse2 : 禁用SSE2指令集。
  1. 其他架构特有的参数
    某些参数是针对特定架构的,ARM架构不支持。
  • -march=armv7-a : 指定ARM32架构(ARMv7-A),不适用于ARM64。
  • -march=armv8-a : 指定ARM64架构(ARMv8-A),不适用于ARM32。
  • -mthumb : 使用Thumb指令集(ARM32特有,ARM64不支持)。
【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。