首页 > 其他分享 >编译指令 -mcpu -march

编译指令 -mcpu -march

时间:2022-08-15 19:02:23浏览次数:94  
标签:march mcpu enabled disabled 编译 protector tsv110

这俩指令都会根据当前系统使用的微架构对程序进行优化,优点是针对计算密集型任务会有较大程度的优化,但是可移植性不好,因为是针对特定架构的优化

一。确定选项 使用如下命令可查询编译器自己查询到的微系统结构

gcc -mcpu=native -Q --help=target

点击查看代码

The following options are target specific:
-mabi= lp64
-march= armv8.2-a
-mbig-endian [disabled]
-mbionic [disabled]
-mbranch-protection=
-mcmodel= small
-mcpu= tsv110+dotprod+fp16fml
-mfix-cortex-a53-835769 [enabled]
-mfix-cortex-a53-843419 [enabled]
-mgeneral-regs-only [disabled]
-mglibc [enabled]
-mlittle-endian [enabled]
-mlow-precision-div [disabled]
-mlow-precision-recip-sqrt [disabled]
-mlow-precision-sqrt [disabled]
-mmusl [disabled]
-momit-leaf-frame-pointer [enabled]
-moverride=
-mpc-relative-literal-loads [enabled]
-msign-return-address= none
-mstack-protector-guard-offset=
-mstack-protector-guard-reg=
-mstack-protector-guard= global
-mstrict-align [disabled]
-msve-vector-bits= scalable
-mtls-dialect= desc
-mtls-size= 24
-mtrack-speculation [disabled]
-mtune= tsv110
-muclibc [disabled]
-mverbose-cost-dump [disabled]


注意gcc有bug,可能会错误的识别系统微结构,有时需要手动指定,例如编译时,使用选项
`g++ -O3 -mcpu=tsv110  -o main main.cpp  `

二。 指令集相关
对于ARM结构,使用  -mcpu
对于X86结构,使用  -march
tips: 能使用 -mcpu时不要使用 -march

标签:march,mcpu,enabled,disabled,编译,protector,tsv110
From: https://www.cnblogs.com/cofludy/p/16589339.html

相关文章

  • 4、编译安装nginx,实现多域名 https
    4、编译安装nginx,实现多域名https 一、编译安装nginx1.源码包下载https://nginx.org/en/download.html2.编译安装[root@CentOS8~]#yum-yinstallgccpcre-devel......
  • Win10+VS2019+Qt5.15.2下编译QCAD
    Win10+VS2019+Qt5.15.2下编译QCAD目录Win10+VS2019+Qt5.15.2下编译QCAD环境配置Qt安装VisualStudio2019安装QCAD编译Clone编译QCAD编译QtScripts插件运行问题总结参考......
  • Chez Scheme 编译指南
    ChezScheme编译指南https://phikn1ght.github.io/chez_scheme_compiling_guide/ 关于ChezSchemeChezScheme是由R.KentDybvig编写的Scheme的具体实现,......
  • c语言中输出char类型所占据的位数(因编译器而异)
     001、#include<stdio.h>#include<limits.h>intmain(void){printf("CHAR_BIT:%d\n",CHAR_BIT);return0;}  ......
  • vite — 超快且方便的编译工具
    我们编写的代码,比如ES6、TypeScript、react等是不能被浏览器直接识别的,需要通过webpack、rollup这样的构建工具来对代码进行转换、编译。但随着项目越来越大,需要处......
  • Verilog编译指令
    编译指令编译指令(Compilerdirective)能够让仿真器和综合工具执行一些特殊的操作。特点:以`(重音符号)为前缀从处理位置一直保持有效,除非被其他指令覆盖或者取消`rese......
  • imx6 buildroot编译
    1.下载源码地址:https://buildroot.org/   随便选一个,下载后解决解压2.配置Targetoptions->TargetArchitecture=ARM(littleendian)->TargetBinaryF......
  • 解决 MAUI 在mac上编译提示 The path 'XXXXXXX\Shared\MainLayout.razor.css' would
    路径'XXXXXXX\Shared\MainLayout.razor.css'将导致应用程序包之外的文件并且无法使用DescriptionTheerrorhappenswithBlazorMAUIHybridProject.Projectcompil......