You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GCC编译器-march选项中未文档化的atom等参数有何作用?

GCC -march 未文档化参数说明

GCC编译器支持-march=cpu-type编译选项,根据官方定义:

为指定cpu-type类型的处理器生成指令。与仅针对指定cpu-type优化代码的-mtune=cpu-type不同,-march=cpu-type允许GCC生成仅能在指定处理器上运行的代码。除非另有说明,指定-march=cpu-type默认包含-mtune=cpu-type的效果。

官方文档列出的合法cpu-type选项里没有atom、corei7、corei7-avx和slm,但这些值作为-march=参数时GCC可正常运行,它们的具体作用如下:

  • atom:针对Silvermont架构之前的Intel Atom处理器(如Bonnell、Saltwell)生成指令,启用SSSE3、SSE4.1等该架构支持的指令集,同时适配Atom低功耗、顺序执行的特性做优化。
  • corei7:对应初代Intel Core i7的Nehalem架构,启用SSE4.2、POPCNT等指令集,适配Nehalem的超标量乱序执行架构做代码生成与优化。
  • corei7-avx:对应支持AVX指令集的Intel Core i7(Sandy Bridge架构),在corei7的基础上额外启用AVX指令集,允许生成256位向量操作的代码。
  • slm:针对Intel Silvermont架构的Atom处理器(如Bay Trail、Cherry Trail),支持AVX、AES-NI等指令集,适配Silvermont的超标量乱序执行微架构做优化。

这些属于GCC保留的向下兼容别名,功能上等价于对应架构的正式参数(比如slm等价于silvermont),但未被官方文档收录,新代码建议优先使用文档明确标注的正式参数。

内容的提问来源于stack exchange,提问作者VL-80

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 06:42:25