用法:

as [option...] [asmfile...]

选项:

  -a[sub-option...]  打开列表

                       子选项[默认hls]:

                       c      忽略错误条件

                       d      忽略调试指令

                       g      包括通用信息

                       h      包含高级语言源码

                       l      包含汇编

                       m      包括宏扩展

                       n      忽略表单处理

                       s      包括符号

                       =FILE  列表到FILE(必须是最后一个子选项)

  --alternate             最初打开备用宏语法

  --compress-debug-sections

                          使用zlib压缩DWARF调试部分

  --nocompress-debug-sections

                          不压缩DWARF调试部分

  -D                      产生汇编器调试消息

  --debug-prefix-map OLD=NEW

                         将OLD映射到新的调试信息

  --defsym SYM=VAL        将符号SYM定义为给定值

  --execstack             需要此对象的可执行堆栈

  --noexecstack           不需要此对象的可执行堆栈

  --size-check=[error|warning]

 ELF .size指令检查(默认--size-check = error)

  -f                      跳过空格并注释预处理

  -g --gen-debug          生成调试信息

  --gstabs                生成STABS调试信息

  --gstabs+               使用GNU扩展生成STABS调试信息

  --gdwarf-2              生成DWARF2调试信息

  --hash-size=<value>    将哈希表大小设置为接近<value>

  --help                  显示帮助

  --target-help           显示目标具体选项

  -I DIR                  将DIR添加到.include指令的搜索列表中

  -J                      不警告符号溢出

  -K                      当差异改变为长位移时发出警告

  -L,--keep-locals        保留本地符号(例如以'L'开头)

  -M,--mri                以MRI兼容模式组合

  --MD FILE               在FILE中写入依赖关系信息(默认为无)

  -nocpp                  忽略

  -o OBJFILE              命名对象文件输出OBJFILE(默认a.out)

  -R                    折叠数据部分到文本部分

  --reduce-memory-overheads 

                         使用更小的内存使用,更大的组装时间

  --statistics            从执行打印各种测量统计信息

  --strip-local-absolute  带本地绝对符号

  --traditional-format    尽可能使用与本机汇编器相同的格式

  --version              打印汇编器版本号并退出

  -W  --no-warn           不显示警告

  --warn                  显示警告

  --fatal-warnings        将警告视为错误

  -w                    忽略

  -X                     忽略

  -Z                     生成对象文件即使错误

  --listing-lhs-width    用输出数据列的字来设置宽度清单

  --listing-lhs-width2    以连续行的单词设置宽度的输出数据列; 忽略如果小于第一行的宽度

  --listing-rhs-width    设置行的最大宽度(以字符为单位)源文件

  --listing-cont-lines    设置使用的连续行的最大数量用于列表的输出数据列

  @FILE                  读取选项从FILE

  -Q                      忽略

  -V                      打印汇编器版本号

  -k                      忽略

  -n                     不优化代码对齐

  -q                      显示警告摘要

  -s                      忽略

  --32/--64/--x32        生成32位/64位/x32代码

  --divide                忽略

  -march=CPU[,+EXTENSION...]

                          生成CPU和EXTENSION的代码,CPU是以下之一:

                           generic32, generic64, i386, i486, i586, i686,

                           pentium, pentiumpro, pentiumii, pentiumiii, pentium4,

                           prescott, nocona, core, core2, corei7, l1om, k1om,

                           k6, k6_2, athlon, opteron, k8, amdfam10, bdver1,

                           bdver2, bdver3, btver1, btver2

                         EXTENSION是以下组合:

                           8087, 287, 387, no87, mmx, nommx, sse, sse2, sse3,

                           ssse3, sse4.1, sse4.2, sse4, nosse, avx, avx2,

                           avx512f, avx512cd, avx512er, avx512pf, noavx, vmx,

                           vmfunc, smx, xsave, xsaveopt, aes, pclmul, fsgsbase,

                           rdrnd, f16c, bmi2, fma, fma4, xop, lwp, movbe, cx16,

                           ept, lzcnt, hle, rtm, invpcid, clflush, nop, syscall,

                           rdtscp, 3dnow, 3dnowa, padlock, svme, sse4a, abm,

                           bmi, tbm, adx, rdseed, prfchw, smap, mpx, sha,

                           clflushopt, xsavec, xsaves, prefetchwt1, se1,

                           avx512dq, avx512bw, avx512vl

  -mtune=CPU              优化CPU,CPU是其中之一:

                           generic32, generic64, i8086, i186, i286, i386, i486,

                           i586, i686, pentium, pentiumpro, pentiumii,

                           pentiumiii, pentium4, prescott, nocona, core, core2,

                           corei7, l1om, k1om, k6, k6_2, athlon, opteron, k8,

                           amdfam10, bdver1, bdver2, bdver3, btver1, btver2

  -msse2avx              用VEX前缀编码SSE指令

  -msse-check=[none|error|warning]

                          检查SSE说明

  -moperand-check=[none|error|warning]

                          检查操作数组合的有效性

  -mavxscalar=[128|256]  用特定向量编码标量AVX指令长度

  -mevexlig=[128|256|512] 用特定向量编码标量EVEX指令长度

  -mevexwig=[0|1]        用特定的EVEX.W值对EVEX指令进行编码对于EVEX.W位忽略指令

  -mmnemonic=[att|intel]  使用AT&T / Intel助记符

  -msyntax=[att|intel]    使用AT&T / Intel语法

  -mindex-reg             支持伪索引寄存器

  -mnaked-reg            对寄存器不需要'%'前缀

  -mold-gcc               支持旧的(<= 2.8.1)版本的gcc

  -madd-bnd-prefix        为所有有效分支添加BND前缀