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

如何获取rustc使用的所有目标特性(类似gcc -v的输出)

获取rustc使用的目标特定标志

要查看rustc针对target-cpu=native启用的所有目标特性,有几种直接的方法:

1. 直接打印目标特性列表

使用--print target-features参数,rustc会直接列出启用和禁用的CPU特性:

rustc -C target-cpu=native --print target-features

输出格式类似:

+adx,+aes,+avx,+avx2,+bmi,+bmi2,+clflushopt,+clwb,+cx16,+f16c,+fma,+fsgsbase,+fxsave,+fxsavec,+lzcnt,+mmx,+movbe,+pclmulqdq,+popcnt,+prfchw,+rdpid,+rdrnd,+rdseed,+sahf,+sse,+sse2,+sse3,+sse4.1,+sse4.2,+ssse3,+xsave,+xsavec,+xsaveopt,+xsaves,-3dnow,-3dnowa,-amx-bf16,-amx-complex,-amx-fp16,-amx-int8,-amx-tile,...

其中+开头的是启用的特性,对应gcc的-m<feature>参数;-开头的是禁用的特性,对应gcc的-mno-<feature>参数。

2. 查看rustc调用底层编译器的完整命令

如果想看到rustc传递给clang/gcc的实际命令行参数(和你示例中gcc的cc1参数类似),可以用-v配合--emit=asm(只生成汇编,避免链接阶段的额外输出):

rustc a.rs -C target-cpu=native -v --emit=asm

在输出中找到以Running开头的行,里面包含rustc调用底层编译器的完整命令,其中就能看到所有目标相关的-m标志。

3. 打印目标配置宏

使用--print cfg可以输出rustc用于条件编译的目标配置信息,其中包含启用的特性:

rustc -C target-cpu=native --print cfg

输出里会有类似target_feature="avx2"的条目,每条对应一个启用的CPU特性。


内容的提问来源于stack exchange,提问作者A. K.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 16:50:09