| <html lang="en"> | 
 | <head> | 
 | <title>Overview - Using as</title> | 
 | <meta http-equiv="Content-Type" content="text/html"> | 
 | <meta name="description" content="Using as"> | 
 | <meta name="generator" content="makeinfo 4.13"> | 
 | <link title="Top" rel="start" href="index.html#Top"> | 
 | <link rel="prev" href="index.html#Top" title="Top"> | 
 | <link rel="next" href="Invoking.html#Invoking" title="Invoking"> | 
 | <link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage"> | 
 | <!-- | 
 | This file documents the GNU Assembler "as". | 
 |  | 
 | Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, | 
 | 2000, 2001, 2002, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. | 
 |  | 
 | Permission is granted to copy, distribute and/or modify this document | 
 | under the terms of the GNU Free Documentation License, Version 1.3 | 
 | or any later version published by the Free Software Foundation; | 
 | with no Invariant Sections, with no Front-Cover Texts, and with no | 
 | Back-Cover Texts.  A copy of the license is included in the | 
 | section entitled ``GNU Free Documentation License''. | 
 |  | 
 | --> | 
 | <meta http-equiv="Content-Style-Type" content="text/css"> | 
 | <style type="text/css"><!-- | 
 |   pre.display { font-family:inherit } | 
 |   pre.format  { font-family:inherit } | 
 |   pre.smalldisplay { font-family:inherit; font-size:smaller } | 
 |   pre.smallformat  { font-family:inherit; font-size:smaller } | 
 |   pre.smallexample { font-size:smaller } | 
 |   pre.smalllisp    { font-size:smaller } | 
 |   span.sc    { font-variant:small-caps } | 
 |   span.roman { font-family:serif; font-weight:normal; }  | 
 |   span.sansserif { font-family:sans-serif; font-weight:normal; }  | 
 | --></style> | 
 | <link rel="stylesheet" type="text/css" href="../cs.css"> | 
 | </head> | 
 | <body> | 
 | <div class="node"> | 
 | <a name="Overview"></a> | 
 | <p> | 
 | Next: <a rel="next" accesskey="n" href="Invoking.html#Invoking">Invoking</a>, | 
 | Previous: <a rel="previous" accesskey="p" href="index.html#Top">Top</a>, | 
 | Up: <a rel="up" accesskey="u" href="index.html#Top">Top</a> | 
 | <hr> | 
 | </div> | 
 |  | 
 | <h2 class="chapter">1 Overview</h2> | 
 |  | 
 | <p><a name="index-invocation-summary-1"></a><a name="index-option-summary-2"></a><a name="index-summary-of-options-3"></a>Here is a brief summary of how to invoke <samp><span class="command">as</span></samp>.  For details, | 
 | see <a href="Invoking.html#Invoking">Command-Line Options</a>. | 
 |  | 
 | <!-- man title AS the portable GNU assembler. --> | 
 | <!-- We don't use deffn and friends for the following because they seem --> | 
 | <!-- to be limited to one line for the header. --> | 
 | <pre class="smallexample">     <!-- man begin SYNOPSIS --> | 
 |      as [<b>-a</b>[<b>cdghlns</b>][=<var>file</var>]] [<b>--alternate</b>] [<b>-D</b>] | 
 |       [<b>--debug-prefix-map</b> <var>old</var>=<var>new</var>] | 
 |       [<b>--defsym</b> <var>sym</var>=<var>val</var>] [<b>-f</b>] [<b>-g</b>] [<b>--gstabs</b>] | 
 |       [<b>--gstabs+</b>] [<b>--gdwarf-2</b>] [<b>--help</b>] [<b>-I</b> <var>dir</var>] [<b>-J</b>] | 
 |       [<b>-K</b>] [<b>-L</b>] [<b>--listing-lhs-width</b>=<var>NUM</var>] | 
 |       [<b>--listing-lhs-width2</b>=<var>NUM</var>] [<b>--listing-rhs-width</b>=<var>NUM</var>] | 
 |       [<b>--listing-cont-lines</b>=<var>NUM</var>] [<b>--keep-locals</b>] [<b>-o</b> | 
 |       <var>objfile</var>] [<b>-R</b>] [<b>--reduce-memory-overheads</b>] [<b>--statistics</b>] | 
 |       [<b>-v</b>] [<b>-version</b>] [<b>--version</b>] [<b>-W</b>] [<b>--warn</b>] | 
 |       [<b>--fatal-warnings</b>] [<b>-w</b>] [<b>-x</b>] [<b>-Z</b>] [<b>@</b><var>FILE</var>] | 
 |       [<b>--target-help</b>] [<var>target-options</var>] | 
 |       [<b>--</b>|<var>files</var> ...] | 
 |      <!-- Target dependent options are listed below.  Keep the list sorted. --> | 
 |      <!-- Add an empty line for separation. --> | 
 |       | 
 |      <em>Target Alpha options:</em> | 
 |         [<b>-m</b><var>cpu</var>] | 
 |         [<b>-mdebug</b> | <b>-no-mdebug</b>] | 
 |         [<b>-replace</b> | <b>-noreplace</b>] | 
 |         [<b>-relax</b>] [<b>-g</b>] [<b>-G</b><var>size</var>] | 
 |         [<b>-F</b>] [<b>-32addr</b>] | 
 |       | 
 |      <em>Target ARC options:</em> | 
 |         [<b>-marc[5|6|7|8]</b>] | 
 |         [<b>-EB</b>|<b>-EL</b>] | 
 |       | 
 |      <em>Target ARM options:</em> | 
 |      <!-- Don't document the deprecated options --> | 
 |         [<b>-mcpu</b>=<var>processor</var>[+<var>extension</var>...]] | 
 |         [<b>-march</b>=<var>architecture</var>[+<var>extension</var>...]] | 
 |         [<b>-mfpu</b>=<var>floating-point-format</var>] | 
 |         [<b>-mfloat-abi</b>=<var>abi</var>] | 
 |         [<b>-meabi</b>=<var>ver</var>] | 
 |         [<b>-mthumb</b>] | 
 |         [<b>-EB</b>|<b>-EL</b>] | 
 |         [<b>-mapcs-32</b>|<b>-mapcs-26</b>|<b>-mapcs-float</b>| | 
 |          <b>-mapcs-reentrant</b>] | 
 |         [<b>-mthumb-interwork</b>] [<b>-k</b>] | 
 |       | 
 |      <em>Target Blackfin options:</em> | 
 |         [<b>-mcpu</b>=<var>processor</var>[-<var>sirevision</var>]] | 
 |         [<b>-mfdpic</b>] | 
 |         [<b>-mno-fdpic</b>] | 
 |         [<b>-mnopic</b>] | 
 |       | 
 |      <em>Target CRIS options:</em> | 
 |         [<b>--underscore</b> | <b>--no-underscore</b>] | 
 |         [<b>--pic</b>] [<b>-N</b>] | 
 |         [<b>--emulation=criself</b> | <b>--emulation=crisaout</b>] | 
 |         [<b>--march=v0_v10</b> | <b>--march=v10</b> | <b>--march=v32</b> | <b>--march=common_v10_v32</b>] | 
 |      <!-- Deprecated - deliberately not documented. --> | 
 |      <!-- [@b{-h}] [@b{-H}] --> | 
 |       | 
 |      <em>Target D10V options:</em> | 
 |         [<b>-O</b>] | 
 |       | 
 |      <em>Target D30V options:</em> | 
 |         [<b>-O</b>|<b>-n</b>|<b>-N</b>] | 
 |       | 
 |      <em>Target H8/300 options:</em> | 
 |         [-h-tick-hex] | 
 |      <!-- HPPA has no machine-dependent assembler options (yet). --> | 
 |       | 
 |      <em>Target i386 options:</em> | 
 |         [<b>--32</b>|<b>--64</b>] [<b>-n</b>] | 
 |         [<b>-march</b>=<var>CPU</var>[+<var>EXTENSION</var>...]] [<b>-mtune</b>=<var>CPU</var>] | 
 |       | 
 |      <em>Target i960 options:</em> | 
 |      <!-- see md_parse_option in tc-i960.c --> | 
 |         [<b>-ACA</b>|<b>-ACA_A</b>|<b>-ACB</b>|<b>-ACC</b>|<b>-AKA</b>|<b>-AKB</b>| | 
 |          <b>-AKC</b>|<b>-AMC</b>] | 
 |         [<b>-b</b>] [<b>-no-relax</b>] | 
 |       | 
 |      <em>Target IA-64 options:</em> | 
 |         [<b>-mconstant-gp</b>|<b>-mauto-pic</b>] | 
 |         [<b>-milp32</b>|<b>-milp64</b>|<b>-mlp64</b>|<b>-mp64</b>] | 
 |         [<b>-mle</b>|<b>mbe</b>] | 
 |         [<b>-mtune=itanium1</b>|<b>-mtune=itanium2</b>] | 
 |         [<b>-munwind-check=warning</b>|<b>-munwind-check=error</b>] | 
 |         [<b>-mhint.b=ok</b>|<b>-mhint.b=warning</b>|<b>-mhint.b=error</b>] | 
 |         [<b>-x</b>|<b>-xexplicit</b>] [<b>-xauto</b>] [<b>-xdebug</b>] | 
 |       | 
 |      <em>Target IP2K options:</em> | 
 |         [<b>-mip2022</b>|<b>-mip2022ext</b>] | 
 |       | 
 |      <em>Target M32C options:</em> | 
 |         [<b>-m32c</b>|<b>-m16c</b>] [-relax] [-h-tick-hex] | 
 |       | 
 |      <em>Target M32R options:</em> | 
 |         [<b>--m32rx</b>|<b>--[no-]warn-explicit-parallel-conflicts</b>| | 
 |         <b>--W[n]p</b>] | 
 |       | 
 |      <em>Target M680X0 options:</em> | 
 |         [<b>-l</b>] [<b>-m68000</b>|<b>-m68010</b>|<b>-m68020</b>|...] | 
 |       | 
 |      <em>Target M68HC11 options:</em> | 
 |         [<b>-m68hc11</b>|<b>-m68hc12</b>|<b>-m68hcs12</b>] | 
 |         [<b>-mshort</b>|<b>-mlong</b>] | 
 |         [<b>-mshort-double</b>|<b>-mlong-double</b>] | 
 |         [<b>--force-long-branches</b>] [<b>--short-branches</b>] | 
 |         [<b>--strict-direct-mode</b>] [<b>--print-insn-syntax</b>] | 
 |         [<b>--print-opcodes</b>] [<b>--generate-example</b>] | 
 |       | 
 |      <em>Target MCORE options:</em> | 
 |         [<b>-jsri2bsr</b>] [<b>-sifilter</b>] [<b>-relax</b>] | 
 |         [<b>-mcpu=[210|340]</b>] | 
 |      <em>Target MICROBLAZE options:</em> | 
 |      <!-- MicroBlaze has no machine-dependent assembler options. --> | 
 |       | 
 |      <em>Target MIPS options:</em> | 
 |         [<b>-nocpp</b>] [<b>-EL</b>] [<b>-EB</b>] [<b>-O</b>[<var>optimization level</var>]] | 
 |         [<b>-g</b>[<var>debug level</var>]] [<b>-G</b> <var>num</var>] [<b>-KPIC</b>] [<b>-call_shared</b>] | 
 |         [<b>-non_shared</b>] [<b>-xgot</b> [<b>-mvxworks-pic</b>] | 
 |         [<b>-mabi</b>=<var>ABI</var>] [<b>-32</b>] [<b>-n32</b>] [<b>-64</b>] [<b>-mfp32</b>] [<b>-mgp32</b>] | 
 |         [<b>-march</b>=<var>CPU</var>] [<b>-mtune</b>=<var>CPU</var>] [<b>-mips1</b>] [<b>-mips2</b>] | 
 |         [<b>-mips3</b>] [<b>-mips4</b>] [<b>-mips5</b>] [<b>-mips32</b>] [<b>-mips32r2</b>] | 
 |         [<b>-mips64</b>] [<b>-mips64r2</b>] | 
 |         [<b>-construct-floats</b>] [<b>-no-construct-floats</b>] | 
 |         [<b>-trap</b>] [<b>-no-break</b>] [<b>-break</b>] [<b>-no-trap</b>] | 
 |         [<b>-mips16</b>] [<b>-no-mips16</b>] | 
 |         [<b>-mmicromips</b>] [<b>-mno-micromips</b>] | 
 |         [<b>-msmartmips</b>] [<b>-mno-smartmips</b>] | 
 |         [<b>-mips3d</b>] [<b>-no-mips3d</b>] | 
 |         [<b>-mdmx</b>] [<b>-no-mdmx</b>] | 
 |         [<b>-mdsp</b>] [<b>-mno-dsp</b>] | 
 |         [<b>-mdspr2</b>] [<b>-mno-dspr2</b>] | 
 |         [<b>-mmt</b>] [<b>-mno-mt</b>] | 
 |         [<b>-mmcu</b>] [<b>-mno-mcu</b>] | 
 |         [<b>-mfix7000</b>] [<b>-mno-fix7000</b>] | 
 |         [<b>-mfix-vr4120</b>] [<b>-mno-fix-vr4120</b>] | 
 |         [<b>-mfix-vr4130</b>] [<b>-mno-fix-vr4130</b>] | 
 |         [<b>-mdebug</b>] [<b>-no-mdebug</b>] | 
 |         [<b>-mpdr</b>] [<b>-mno-pdr</b>] | 
 |       | 
 |      <em>Target MMIX options:</em> | 
 |         [<b>--fixed-special-register-names</b>] [<b>--globalize-symbols</b>] | 
 |         [<b>--gnu-syntax</b>] [<b>--relax</b>] [<b>--no-predefined-symbols</b>] | 
 |         [<b>--no-expand</b>] [<b>--no-merge-gregs</b>] [<b>-x</b>] | 
 |         [<b>--linker-allocated-gregs</b>] | 
 |       | 
 |      <em>Target PDP11 options:</em> | 
 |         [<b>-mpic</b>|<b>-mno-pic</b>] [<b>-mall</b>] [<b>-mno-extensions</b>] | 
 |         [<b>-m</b><var>extension</var>|<b>-mno-</b><var>extension</var>] | 
 |         [<b>-m</b><var>cpu</var>] [<b>-m</b><var>machine</var>] | 
 |       | 
 |      <em>Target picoJava options:</em> | 
 |         [<b>-mb</b>|<b>-me</b>] | 
 |       | 
 |      <em>Target PowerPC options:</em> | 
 |         [<b>-mpwrx</b>|<b>-mpwr2</b>|<b>-mpwr</b>|<b>-m601</b>|<b>-mppc</b>|<b>-mppc32</b>|<b>-m603</b>|<b>-m604</b>| | 
 |          <b>-m403</b>|<b>-m405</b>|<b>-mppc64</b>|<b>-m620</b>|<b>-mppc64bridge</b>|<b>-mbooke</b>] | 
 |         [<b>-mcom</b>|<b>-many</b>|<b>-maltivec</b>|<b>-mvsx</b>] [<b>-memb</b>] | 
 |         [<b>-mregnames</b>|<b>-mno-regnames</b>] | 
 |         [<b>-mrelocatable</b>|<b>-mrelocatable-lib</b>] | 
 |         [<b>-mlittle</b>|<b>-mlittle-endian</b>|<b>-mbig</b>|<b>-mbig-endian</b>] | 
 |         [<b>-msolaris</b>|<b>-mno-solaris</b>] | 
 |       | 
 |      <em>Target RX options:</em> | 
 |         [<b>-mlittle-endian</b>|<b>-mbig-endian</b>] | 
 |         [<b>-m32bit-ints</b>|<b>-m16bit-ints</b>] | 
 |         [<b>-m32bit-doubles</b>|<b>-m64bit-doubles</b>] | 
 |       | 
 |      <em>Target s390 options:</em> | 
 |         [<b>-m31</b>|<b>-m64</b>] [<b>-mesa</b>|<b>-mzarch</b>] [<b>-march</b>=<var>CPU</var>] | 
 |         [<b>-mregnames</b>|<b>-mno-regnames</b>] | 
 |         [<b>-mwarn-areg-zero</b>] | 
 |       | 
 |      <em>Target SCORE options:</em> | 
 |         [<b>-EB</b>][<b>-EL</b>][<b>-FIXDD</b>][<b>-NWARN</b>] | 
 |         [<b>-SCORE5</b>][<b>-SCORE5U</b>][<b>-SCORE7</b>][<b>-SCORE3</b>] | 
 |         [<b>-march=score7</b>][<b>-march=score3</b>] | 
 |         [<b>-USE_R1</b>][<b>-KPIC</b>][<b>-O0</b>][<b>-G</b> <var>num</var>][<b>-V</b>] | 
 |       | 
 |      <em>Target SPARC options:</em> | 
 |      <!-- The order here is important.  See c-sparc.texi. --> | 
 |         [<b>-Av6</b>|<b>-Av7</b>|<b>-Av8</b>|<b>-Asparclet</b>|<b>-Asparclite</b> | 
 |          <b>-Av8plus</b>|<b>-Av8plusa</b>|<b>-Av9</b>|<b>-Av9a</b>] | 
 |         [<b>-xarch=v8plus</b>|<b>-xarch=v8plusa</b>] [<b>-bump</b>] | 
 |         [<b>-32</b>|<b>-64</b>] | 
 |       | 
 |      <em>Target TIC54X options:</em> | 
 |       [<b>-mcpu=54[123589]</b>|<b>-mcpu=54[56]lp</b>] [<b>-mfar-mode</b>|<b>-mf</b>] | 
 |       [<b>-merrors-to-file</b> <var><filename></var>|<b>-me</b> <var><filename></var>] | 
 |       | 
 |       | 
 |      <em>Target TIC6X options:</em> | 
 |         [<b>-march=</b><var>arch</var>] [<b>-matomic</b>|<b>-mno-atomic</b>] | 
 |         [<b>-mbig-endian</b>|<b>-mlittle-endian</b>] [<b>-mdsbt</b>|<b>-mno-dsbt</b>] | 
 |         [<b>-mpid=no</b>|<b>-mpid=near</b>|<b>-mpid=far</b>] [<b>-mpic</b>|<b>-mno-pic</b>] | 
 |       | 
 |       | 
 |      <em>Target Z80 options:</em> | 
 |        [<b>-z80</b>] [<b>-r800</b>] | 
 |        [<b> -ignore-undocumented-instructions</b>] [<b>-Wnud</b>] | 
 |        [<b> -ignore-unportable-instructions</b>] [<b>-Wnup</b>] | 
 |        [<b> -warn-undocumented-instructions</b>] [<b>-Wud</b>] | 
 |        [<b> -warn-unportable-instructions</b>] [<b>-Wup</b>] | 
 |        [<b> -forbid-undocumented-instructions</b>] [<b>-Fud</b>] | 
 |        [<b> -forbid-unportable-instructions</b>] [<b>-Fup</b>] | 
 |       | 
 |      <!-- Z8000 has no machine-dependent assembler options --> | 
 |       | 
 |      <em>Target Xtensa options:</em> | 
 |       [<b>--[no-]text-section-literals</b>] [<b>--[no-]absolute-literals</b>] | 
 |       [<b>--[no-]target-align</b>] [<b>--[no-]longcalls</b>] | 
 |       [<b>--[no-]transform</b>] | 
 |       [<b>--rename-section</b> <var>oldname</var>=<var>newname</var>] | 
 |      <!-- man end --> | 
 | </pre> | 
 |    <!-- man begin OPTIONS --> | 
 |      <dl> | 
 | <!-- This file is designed to be included in manuals that use --> | 
 | <!-- expandargv. --> | 
 |  | 
 |      <dt><code>@</code><var>file</var><dd>Read command-line options from <var>file</var>.  The options read are | 
 | inserted in place of the original @<var>file</var> option.  If <var>file</var> | 
 | does not exist, or cannot be read, then the option will be treated | 
 | literally, and not removed. | 
 |  | 
 |      <p>Options in <var>file</var> are separated by whitespace.  A whitespace | 
 | character may be included in an option by surrounding the entire | 
 | option in either single or double quotes.  Any character (including a | 
 | backslash) may be included by prefixing the character to be included | 
 | with a backslash.  The <var>file</var> may itself contain additional | 
 | @<var>file</var> options; any such options will be processed recursively. | 
 |  | 
 |      <br><dt><code>-a[cdghlmns]</code><dd>Turn on listings, in any of a variety of ways: | 
 |  | 
 |           <dl> | 
 | <dt><code>-ac</code><dd>omit false conditionals | 
 |  | 
 |           <br><dt><code>-ad</code><dd>omit debugging directives | 
 |  | 
 |           <br><dt><code>-ag</code><dd>include general information, like as version and options passed | 
 |  | 
 |           <br><dt><code>-ah</code><dd>include high-level source | 
 |  | 
 |           <br><dt><code>-al</code><dd>include assembly | 
 |  | 
 |           <br><dt><code>-am</code><dd>include macro expansions | 
 |  | 
 |           <br><dt><code>-an</code><dd>omit forms processing | 
 |  | 
 |           <br><dt><code>-as</code><dd>include symbols | 
 |  | 
 |           <br><dt><code>=file</code><dd>set the name of the listing file | 
 | </dl> | 
 |  | 
 |      <p>You may combine these options; for example, use ‘<samp><span class="samp">-aln</span></samp>’ for assembly | 
 | listing without forms processing.  The ‘<samp><span class="samp">=file</span></samp>’ option, if used, must be | 
 | the last one.  By itself, ‘<samp><span class="samp">-a</span></samp>’ defaults to ‘<samp><span class="samp">-ahls</span></samp>’. | 
 |  | 
 |      <br><dt><code>--alternate</code><dd>Begin in alternate macro mode.  | 
 | See <a href="Altmacro.html#Altmacro"><code>.altmacro</code></a>. | 
 |  | 
 |      <br><dt><code>-D</code><dd>Ignored.  This option is accepted for script compatibility with calls to | 
 | other assemblers. | 
 |  | 
 |      <br><dt><code>--debug-prefix-map </code><var>old</var><code>=</code><var>new</var><dd>When assembling files in directory <samp><var>old</var></samp>, record debugging | 
 | information describing them as in <samp><var>new</var></samp> instead. | 
 |  | 
 |      <br><dt><code>--defsym </code><var>sym</var><code>=</code><var>value</var><dd>Define the symbol <var>sym</var> to be <var>value</var> before assembling the input file.  | 
 | <var>value</var> must be an integer constant.  As in C, a leading ‘<samp><span class="samp">0x</span></samp>’ | 
 | indicates a hexadecimal value, and a leading ‘<samp><span class="samp">0</span></samp>’ indicates an octal | 
 | value.  The value of the symbol can be overridden inside a source file via the | 
 | use of a <code>.set</code> pseudo-op. | 
 |  | 
 |      <br><dt><code>-f</code><dd>“fast”—skip whitespace and comment preprocessing (assume source is | 
 | compiler output). | 
 |  | 
 |      <br><dt><code>-g</code><dt><code>--gen-debug</code><dd>Generate debugging information for each assembler source line using whichever | 
 | debug format is preferred by the target.  This currently means either STABS, | 
 | ECOFF or DWARF2. | 
 |  | 
 |      <br><dt><code>--gstabs</code><dd>Generate stabs debugging information for each assembler line.  This | 
 | may help debugging assembler code, if the debugger can handle it. | 
 |  | 
 |      <br><dt><code>--gstabs+</code><dd>Generate stabs debugging information for each assembler line, with GNU | 
 | extensions that probably only gdb can handle, and that could make other | 
 | debuggers crash or refuse to read your program.  This | 
 | may help debugging assembler code.  Currently the only GNU extension is | 
 | the location of the current working directory at assembling time. | 
 |  | 
 |      <br><dt><code>--gdwarf-2</code><dd>Generate DWARF2 debugging information for each assembler line.  This | 
 | may help debugging assembler code, if the debugger can handle it.  Note—this | 
 | option is only supported by some targets, not all of them. | 
 |  | 
 |      <br><dt><code>--help</code><dd>Print a summary of the command line options and exit. | 
 |  | 
 |      <br><dt><code>--target-help</code><dd>Print a summary of all target specific options and exit. | 
 |  | 
 |      <br><dt><code>-I </code><var>dir</var><dd>Add directory <var>dir</var> to the search list for <code>.include</code> directives. | 
 |  | 
 |      <br><dt><code>-J</code><dd>Don't warn about signed overflow. | 
 |  | 
 |      <br><dt><code>-K</code><dd>Issue warnings when difference tables altered for long displacements. | 
 |  | 
 |      <br><dt><code>-L</code><dt><code>--keep-locals</code><dd>Keep (in the symbol table) local symbols.  These symbols start with | 
 | system-specific local label prefixes, typically ‘<samp><span class="samp">.L</span></samp>’ for ELF systems | 
 | or ‘<samp><span class="samp">L</span></samp>’ for traditional a.out systems.  | 
 | See <a href="Symbol-Names.html#Symbol-Names">Symbol Names</a>. | 
 |  | 
 |      <br><dt><code>--listing-lhs-width=</code><var>number</var><dd>Set the maximum width, in words, of the output data column for an assembler | 
 | listing to <var>number</var>. | 
 |  | 
 |      <br><dt><code>--listing-lhs-width2=</code><var>number</var><dd>Set the maximum width, in words, of the output data column for continuation | 
 | lines in an assembler listing to <var>number</var>. | 
 |  | 
 |      <br><dt><code>--listing-rhs-width=</code><var>number</var><dd>Set the maximum width of an input source line, as displayed in a listing, to | 
 | <var>number</var> bytes. | 
 |  | 
 |      <br><dt><code>--listing-cont-lines=</code><var>number</var><dd>Set the maximum number of lines printed in a listing for a single line of input | 
 | to <var>number</var> + 1. | 
 |  | 
 |      <br><dt><code>-o </code><var>objfile</var><dd>Name the object-file output from <samp><span class="command">as</span></samp> <var>objfile</var>. | 
 |  | 
 |      <br><dt><code>-R</code><dd>Fold the data section into the text section. | 
 |  | 
 |      <p><a name="index-g_t_002d_002dhash_002dsize_003d_0040var_007bnumber_007d-4"></a>Set the default size of GAS's hash tables to a prime number close to | 
 | <var>number</var>.  Increasing this value can reduce the length of time it takes the | 
 | assembler to perform its tasks, at the expense of increasing the assembler's | 
 | memory requirements.  Similarly reducing this value can reduce the memory | 
 | requirements at the expense of speed. | 
 |  | 
 |      <br><dt><code>--reduce-memory-overheads</code><dd>This option reduces GAS's memory requirements, at the expense of making the | 
 | assembly processes slower.  Currently this switch is a synonym for | 
 | ‘<samp><span class="samp">--hash-size=4051</span></samp>’, but in the future it may have other effects as well. | 
 |  | 
 |      <br><dt><code>--statistics</code><dd>Print the maximum space (in bytes) and total time (in seconds) used by | 
 | assembly. | 
 |  | 
 |      <br><dt><code>--strip-local-absolute</code><dd>Remove local absolute symbols from the outgoing symbol table. | 
 |  | 
 |      <br><dt><code>-v</code><dt><code>-version</code><dd>Print the <samp><span class="command">as</span></samp> version. | 
 |  | 
 |      <br><dt><code>--version</code><dd>Print the <samp><span class="command">as</span></samp> version and exit. | 
 |  | 
 |      <br><dt><code>-W</code><dt><code>--no-warn</code><dd>Suppress warning messages. | 
 |  | 
 |      <br><dt><code>--fatal-warnings</code><dd>Treat warnings as errors. | 
 |  | 
 |      <br><dt><code>--warn</code><dd>Don't suppress warning messages or treat them as errors. | 
 |  | 
 |      <br><dt><code>-w</code><dd>Ignored. | 
 |  | 
 |      <br><dt><code>-x</code><dd>Ignored. | 
 |  | 
 |      <br><dt><code>-Z</code><dd>Generate an object file even after errors. | 
 |  | 
 |      <br><dt><code>-- | </code><var>files</var><code> ...</code><dd>Standard input, or source files to assemble. | 
 |  | 
 |    </dl> | 
 |  | 
 |    <p>The following options are available when as is configured for | 
 | an ARC processor. | 
 |  | 
 |      <dl> | 
 | <dt><code>-marc[5|6|7|8]</code><dd>This option selects the core processor variant.  | 
 | <br><dt><code>-EB | -EL</code><dd>Select either big-endian (-EB) or little-endian (-EL) output.  | 
 | </dl> | 
 |  | 
 |    <p>The following options are available when as is configured for the ARM | 
 | processor family. | 
 |  | 
 |      <dl> | 
 | <dt><code>-mcpu=</code><var>processor</var><code>[+</code><var>extension</var><code>...]</code><dd>Specify which ARM processor variant is the target.  | 
 | <br><dt><code>-march=</code><var>architecture</var><code>[+</code><var>extension</var><code>...]</code><dd>Specify which ARM architecture variant is used by the target.  | 
 | <br><dt><code>-mfpu=</code><var>floating-point-format</var><dd>Select which Floating Point architecture is the target.  | 
 | <br><dt><code>-mfloat-abi=</code><var>abi</var><dd>Select which floating point ABI is in use.  | 
 | <br><dt><code>-mthumb</code><dd>Enable Thumb only instruction decoding.  | 
 | <br><dt><code>-mapcs-32 | -mapcs-26 | -mapcs-float | -mapcs-reentrant</code><dd>Select which procedure calling convention is in use.  | 
 | <br><dt><code>-EB | -EL</code><dd>Select either big-endian (-EB) or little-endian (-EL) output.  | 
 | <br><dt><code>-mthumb-interwork</code><dd>Specify that the code has been generated with interworking between Thumb and | 
 | ARM code in mind.  | 
 | <br><dt><code>-k</code><dd>Specify that PIC code has been generated.  | 
 | </dl> | 
 |  | 
 |    <p>The following options are available when as is configured for | 
 | the Blackfin processor family. | 
 |  | 
 |      <dl> | 
 | <dt><code>-mcpu=</code><var>processor</var><span class="roman">[</span><code>-</code><var>sirevision</var><span class="roman">]</span><dd>This option specifies the target processor.  The optional <var>sirevision</var> | 
 | is not used in assembler.  | 
 | <br><dt><code>-mfdpic</code><dd>Assemble for the FDPIC ABI.  | 
 | <br><dt><code>-mno-fdpic</code><dt><code>-mnopic</code><dd>Disable -mfdpic.  | 
 | </dl> | 
 |  | 
 |    <p>See the info pages for documentation of the CRIS-specific options. | 
 |  | 
 |    <p>The following options are available when as is configured for | 
 | a D10V processor. | 
 |       | 
 | <a name="index-D10V-optimization-5"></a> | 
 | <a name="index-optimization_002c-D10V-6"></a> | 
 | <dl><dt><code>-O</code><dd>Optimize output by parallelizing instructions.  | 
 | </dl> | 
 |  | 
 |    <p>The following options are available when as is configured for a D30V | 
 | processor. | 
 |       | 
 | <a name="index-D30V-optimization-7"></a> | 
 | <a name="index-optimization_002c-D30V-8"></a> | 
 | <dl><dt><code>-O</code><dd>Optimize output by parallelizing instructions. | 
 |  | 
 |      <p><a name="index-D30V-nops-9"></a><br><dt><code>-n</code><dd>Warn when nops are generated. | 
 |  | 
 |      <p><a name="index-D30V-nops-after-32_002dbit-multiply-10"></a><br><dt><code>-N</code><dd>Warn when a nop after a 32-bit multiply instruction is generated.  | 
 | </dl> | 
 |  | 
 |    <p>The following options are available when as is configured for the | 
 | Intel 80960 processor. | 
 |  | 
 |      <dl> | 
 | <dt><code>-ACA | -ACA_A | -ACB | -ACC | -AKA | -AKB | -AKC | -AMC</code><dd>Specify which variant of the 960 architecture is the target. | 
 |  | 
 |      <br><dt><code>-b</code><dd>Add code to collect statistics about branches taken. | 
 |  | 
 |      <br><dt><code>-no-relax</code><dd>Do not alter compare-and-branch instructions for long displacements; | 
 | error if necessary. | 
 |  | 
 |    </dl> | 
 |  | 
 |    <p>The following options are available when as is configured for the | 
 | Ubicom IP2K series. | 
 |  | 
 |      <dl> | 
 | <dt><code>-mip2022ext</code><dd>Specifies that the extended IP2022 instructions are allowed. | 
 |  | 
 |      <br><dt><code>-mip2022</code><dd>Restores the default behaviour, which restricts the permitted instructions to | 
 | just the basic IP2022 ones. | 
 |  | 
 |    </dl> | 
 |  | 
 |    <p>The following options are available when as is configured for the | 
 | Renesas M32C and M16C processors. | 
 |  | 
 |      <dl> | 
 | <dt><code>-m32c</code><dd>Assemble M32C instructions. | 
 |  | 
 |      <br><dt><code>-m16c</code><dd>Assemble M16C instructions (the default). | 
 |  | 
 |      <br><dt><code>-relax</code><dd>Enable support for link-time relaxations. | 
 |  | 
 |      <br><dt><code>-h-tick-hex</code><dd>Support H'00 style hex constants in addition to 0x00 style. | 
 |  | 
 |    </dl> | 
 |  | 
 |    <p>The following options are available when as is configured for the | 
 | Renesas M32R (formerly Mitsubishi M32R) series. | 
 |  | 
 |      <dl> | 
 | <dt><code>--m32rx</code><dd>Specify which processor in the M32R family is the target.  The default | 
 | is normally the M32R, but this option changes it to the M32RX. | 
 |  | 
 |      <br><dt><code>--warn-explicit-parallel-conflicts or --Wp</code><dd>Produce warning messages when questionable parallel constructs are | 
 | encountered. | 
 |  | 
 |      <br><dt><code>--no-warn-explicit-parallel-conflicts or --Wnp</code><dd>Do not produce warning messages when questionable parallel constructs are | 
 | encountered. | 
 |  | 
 |    </dl> | 
 |  | 
 |    <p>The following options are available when as is configured for the | 
 | Motorola 68000 series. | 
 |  | 
 |      <dl> | 
 | <dt><code>-l</code><dd>Shorten references to undefined symbols, to one word instead of two. | 
 |  | 
 |      <br><dt><code>-m68000 | -m68008 | -m68010 | -m68020 | -m68030</code><dt><code>| -m68040 | -m68060 | -m68302 | -m68331 | -m68332</code><dt><code>| -m68333 | -m68340 | -mcpu32 | -m5200</code><dd>Specify what processor in the 68000 family is the target.  The default | 
 | is normally the 68020, but this can be changed at configuration time. | 
 |  | 
 |      <br><dt><code>-m68881 | -m68882 | -mno-68881 | -mno-68882</code><dd>The target machine does (or does not) have a floating-point coprocessor.  | 
 | The default is to assume a coprocessor for 68020, 68030, and cpu32.  Although | 
 | the basic 68000 is not compatible with the 68881, a combination of the | 
 | two can be specified, since it's possible to do emulation of the | 
 | coprocessor instructions with the main processor. | 
 |  | 
 |      <br><dt><code>-m68851 | -mno-68851</code><dd>The target machine does (or does not) have a memory-management | 
 | unit coprocessor.  The default is to assume an MMU for 68020 and up. | 
 |  | 
 |    </dl> | 
 |  | 
 |    <p>For details about the PDP-11 machine dependent features options, | 
 | see <a href="PDP_002d11_002dOptions.html#PDP_002d11_002dOptions">PDP-11-Options</a>. | 
 |  | 
 |      <dl> | 
 | <dt><code>-mpic | -mno-pic</code><dd>Generate position-independent (or position-dependent) code.  The | 
 | default is <samp><span class="option">-mpic</span></samp>. | 
 |  | 
 |      <br><dt><code>-mall</code><dt><code>-mall-extensions</code><dd>Enable all instruction set extensions.  This is the default. | 
 |  | 
 |      <br><dt><code>-mno-extensions</code><dd>Disable all instruction set extensions. | 
 |  | 
 |      <br><dt><code>-m</code><var>extension</var><code> | -mno-</code><var>extension</var><dd>Enable (or disable) a particular instruction set extension. | 
 |  | 
 |      <br><dt><code>-m</code><var>cpu</var><dd>Enable the instruction set extensions supported by a particular CPU, and | 
 | disable all other extensions. | 
 |  | 
 |      <br><dt><code>-m</code><var>machine</var><dd>Enable the instruction set extensions supported by a particular machine | 
 | model, and disable all other extensions.  | 
 | </dl> | 
 |  | 
 |    <p>The following options are available when as is configured for | 
 | a picoJava processor. | 
 |  | 
 |       | 
 | <a name="index-PJ-endianness-11"></a> | 
 | <a name="index-endianness_002c-PJ-12"></a> | 
 | <a name="index-big-endian-output_002c-PJ-13"></a> | 
 | <dl><dt><code>-mb</code><dd>Generate “big endian” format output. | 
 |  | 
 |      <p><a name="index-little-endian-output_002c-PJ-14"></a><br><dt><code>-ml</code><dd>Generate “little endian” format output. | 
 |  | 
 |    </dl> | 
 |  | 
 |    <p>The following options are available when as is configured for the | 
 | Motorola 68HC11 or 68HC12 series. | 
 |  | 
 |      <dl> | 
 | <dt><code>-m68hc11 | -m68hc12 | -m68hcs12</code><dd>Specify what processor is the target.  The default is | 
 | defined by the configuration option when building the assembler. | 
 |  | 
 |      <br><dt><code>-mshort</code><dd>Specify to use the 16-bit integer ABI. | 
 |  | 
 |      <br><dt><code>-mlong</code><dd>Specify to use the 32-bit integer ABI. | 
 |  | 
 |      <br><dt><code>-mshort-double</code><dd>Specify to use the 32-bit double ABI. | 
 |  | 
 |      <br><dt><code>-mlong-double</code><dd>Specify to use the 64-bit double ABI. | 
 |  | 
 |      <br><dt><code>--force-long-branches</code><dd>Relative branches are turned into absolute ones. This concerns | 
 | conditional branches, unconditional branches and branches to a | 
 | sub routine. | 
 |  | 
 |      <br><dt><code>-S | --short-branches</code><dd>Do not turn relative branches into absolute ones | 
 | when the offset is out of range. | 
 |  | 
 |      <br><dt><code>--strict-direct-mode</code><dd>Do not turn the direct addressing mode into extended addressing mode | 
 | when the instruction does not support direct addressing mode. | 
 |  | 
 |      <br><dt><code>--print-insn-syntax</code><dd>Print the syntax of instruction in case of error. | 
 |  | 
 |      <br><dt><code>--print-opcodes</code><dd>print the list of instructions with syntax and then exit. | 
 |  | 
 |      <br><dt><code>--generate-example</code><dd>print an example of instruction for each possible instruction and then exit.  | 
 | This option is only useful for testing <samp><span class="command">as</span></samp>. | 
 |  | 
 |    </dl> | 
 |  | 
 |    <p>The following options are available when <samp><span class="command">as</span></samp> is configured | 
 | for the SPARC architecture: | 
 |  | 
 |      <dl> | 
 | <dt><code>-Av6 | -Av7 | -Av8 | -Asparclet | -Asparclite</code><dt><code>-Av8plus | -Av8plusa | -Av9 | -Av9a</code><dd>Explicitly select a variant of the SPARC architecture. | 
 |  | 
 |      <p>‘<samp><span class="samp">-Av8plus</span></samp>’ and ‘<samp><span class="samp">-Av8plusa</span></samp>’ select a 32 bit environment.  | 
 | ‘<samp><span class="samp">-Av9</span></samp>’ and ‘<samp><span class="samp">-Av9a</span></samp>’ select a 64 bit environment. | 
 |  | 
 |      <p>‘<samp><span class="samp">-Av8plusa</span></samp>’ and ‘<samp><span class="samp">-Av9a</span></samp>’ enable the SPARC V9 instruction set with | 
 | UltraSPARC extensions. | 
 |  | 
 |      <br><dt><code>-xarch=v8plus | -xarch=v8plusa</code><dd>For compatibility with the Solaris v9 assembler.  These options are | 
 | equivalent to -Av8plus and -Av8plusa, respectively. | 
 |  | 
 |      <br><dt><code>-bump</code><dd>Warn when the assembler switches to another architecture.  | 
 | </dl> | 
 |  | 
 |    <p>The following options are available when as is configured for the 'c54x | 
 | architecture. | 
 |  | 
 |      <dl> | 
 | <dt><code>-mfar-mode</code><dd>Enable extended addressing mode.  All addresses and relocations will assume | 
 | extended addressing (usually 23 bits).  | 
 | <br><dt><code>-mcpu=</code><var>CPU_VERSION</var><dd>Sets the CPU version being compiled for.  | 
 | <br><dt><code>-merrors-to-file </code><var>FILENAME</var><dd>Redirect error output to a file, for broken systems which don't support such | 
 | behaviour in the shell.  | 
 | </dl> | 
 |  | 
 |    <p>The following options are available when as is configured for | 
 | a <span class="sc">mips</span> processor. | 
 |  | 
 |      <dl> | 
 | <dt><code>-G </code><var>num</var><dd>This option sets the largest size of an object that can be referenced | 
 | implicitly with the <code>gp</code> register.  It is only accepted for targets that | 
 | use ECOFF format, such as a DECstation running Ultrix.  The default value is 8. | 
 |  | 
 |      <p><a name="index-MIPS-endianness-15"></a><a name="index-endianness_002c-MIPS-16"></a><a name="index-big-endian-output_002c-MIPS-17"></a><br><dt><code>-EB</code><dd>Generate “big endian” format output. | 
 |  | 
 |      <p><a name="index-little-endian-output_002c-MIPS-18"></a><br><dt><code>-EL</code><dd>Generate “little endian” format output. | 
 |  | 
 |      <p><a name="index-MIPS-ISA-19"></a><br><dt><code>-mips1</code><dt><code>-mips2</code><dt><code>-mips3</code><dt><code>-mips4</code><dt><code>-mips5</code><dt><code>-mips32</code><dt><code>-mips32r2</code><dt><code>-mips64</code><dt><code>-mips64r2</code><dd>Generate code for a particular <span class="sc">mips</span> Instruction Set Architecture level.  | 
 | ‘<samp><span class="samp">-mips1</span></samp>’ is an alias for ‘<samp><span class="samp">-march=r3000</span></samp>’, ‘<samp><span class="samp">-mips2</span></samp>’ is an | 
 | alias for ‘<samp><span class="samp">-march=r6000</span></samp>’, ‘<samp><span class="samp">-mips3</span></samp>’ is an alias for | 
 | ‘<samp><span class="samp">-march=r4000</span></samp>’ and ‘<samp><span class="samp">-mips4</span></samp>’ is an alias for ‘<samp><span class="samp">-march=r8000</span></samp>’.  | 
 | ‘<samp><span class="samp">-mips5</span></samp>’, ‘<samp><span class="samp">-mips32</span></samp>’, ‘<samp><span class="samp">-mips32r2</span></samp>’, ‘<samp><span class="samp">-mips64</span></samp>’, and | 
 | ‘<samp><span class="samp">-mips64r2</span></samp>’ | 
 | correspond to generic | 
 | ‘<samp><span class="samp">MIPS V</span></samp>’, ‘<samp><span class="samp">MIPS32</span></samp>’, ‘<samp><span class="samp">MIPS32 Release 2</span></samp>’, ‘<samp><span class="samp">MIPS64</span></samp>’, | 
 | and ‘<samp><span class="samp">MIPS64 Release 2</span></samp>’ | 
 | ISA processors, respectively. | 
 |  | 
 |      <br><dt><code>-march=</code><var>CPU</var><dd>Generate code for a particular <span class="sc">mips</span> cpu. | 
 |  | 
 |      <br><dt><code>-mtune=</code><var>cpu</var><dd>Schedule and tune for a particular <span class="sc">mips</span> cpu. | 
 |  | 
 |      <br><dt><code>-mfix7000</code><dt><code>-mno-fix7000</code><dd>Cause nops to be inserted if the read of the destination register | 
 | of an mfhi or mflo instruction occurs in the following two instructions. | 
 |  | 
 |      <br><dt><code>-mdebug</code><dt><code>-no-mdebug</code><dd>Cause stabs-style debugging output to go into an ECOFF-style .mdebug | 
 | section instead of the standard ELF .stabs sections. | 
 |  | 
 |      <br><dt><code>-mpdr</code><dt><code>-mno-pdr</code><dd>Control generation of <code>.pdr</code> sections. | 
 |  | 
 |      <br><dt><code>-mgp32</code><dt><code>-mfp32</code><dd>The register sizes are normally inferred from the ISA and ABI, but these | 
 | flags force a certain group of registers to be treated as 32 bits wide at | 
 | all times.  ‘<samp><span class="samp">-mgp32</span></samp>’ controls the size of general-purpose registers | 
 | and ‘<samp><span class="samp">-mfp32</span></samp>’ controls the size of floating-point registers. | 
 |  | 
 |      <br><dt><code>-mips16</code><dt><code>-no-mips16</code><dd>Generate code for the MIPS 16 processor.  This is equivalent to putting | 
 | <code>.set mips16</code> at the start of the assembly file.  ‘<samp><span class="samp">-no-mips16</span></samp>’ | 
 | turns off this option. | 
 |  | 
 |      <br><dt><code>-mmicromips</code><dt><code>-mno-micromips</code><dd>Generate code for the microMIPS processor.  This is equivalent to putting | 
 | <code>.set micromips</code> at the start of the assembly file.  ‘<samp><span class="samp">-mno-micromips</span></samp>’ | 
 | turns off this option.  This is equivalent to putting <code>.set nomicromips</code> | 
 | at the start of the assembly file. | 
 |  | 
 |      <br><dt><code>-msmartmips</code><dt><code>-mno-smartmips</code><dd>Enables the SmartMIPS extension to the MIPS32 instruction set. This is | 
 | equivalent to putting <code>.set smartmips</code> at the start of the assembly file.  | 
 | ‘<samp><span class="samp">-mno-smartmips</span></samp>’ turns off this option. | 
 |  | 
 |      <br><dt><code>-mips3d</code><dt><code>-no-mips3d</code><dd>Generate code for the MIPS-3D Application Specific Extension.  | 
 | This tells the assembler to accept MIPS-3D instructions.  | 
 | ‘<samp><span class="samp">-no-mips3d</span></samp>’ turns off this option. | 
 |  | 
 |      <br><dt><code>-mdmx</code><dt><code>-no-mdmx</code><dd>Generate code for the MDMX Application Specific Extension.  | 
 | This tells the assembler to accept MDMX instructions.  | 
 | ‘<samp><span class="samp">-no-mdmx</span></samp>’ turns off this option. | 
 |  | 
 |      <br><dt><code>-mdsp</code><dt><code>-mno-dsp</code><dd>Generate code for the DSP Release 1 Application Specific Extension.  | 
 | This tells the assembler to accept DSP Release 1 instructions.  | 
 | ‘<samp><span class="samp">-mno-dsp</span></samp>’ turns off this option. | 
 |  | 
 |      <br><dt><code>-mdspr2</code><dt><code>-mno-dspr2</code><dd>Generate code for the DSP Release 2 Application Specific Extension.  | 
 | This option implies -mdsp.  | 
 | This tells the assembler to accept DSP Release 2 instructions.  | 
 | ‘<samp><span class="samp">-mno-dspr2</span></samp>’ turns off this option. | 
 |  | 
 |      <br><dt><code>-mmt</code><dt><code>-mno-mt</code><dd>Generate code for the MT Application Specific Extension.  | 
 | This tells the assembler to accept MT instructions.  | 
 | ‘<samp><span class="samp">-mno-mt</span></samp>’ turns off this option. | 
 |  | 
 |      <br><dt><code>-mmcu</code><dt><code>-mno-mcu</code><dd>Generate code for the MCU Application Specific Extension.  | 
 | This tells the assembler to accept MCU instructions.  | 
 | ‘<samp><span class="samp">-mno-mcu</span></samp>’ turns off this option. | 
 |  | 
 |      <br><dt><code>--construct-floats</code><dt><code>--no-construct-floats</code><dd>The ‘<samp><span class="samp">--no-construct-floats</span></samp>’ option disables the construction of | 
 | double width floating point constants by loading the two halves of the | 
 | value into the two single width floating point registers that make up | 
 | the double width register.  By default ‘<samp><span class="samp">--construct-floats</span></samp>’ is | 
 | selected, allowing construction of these floating point constants. | 
 |  | 
 |      <p><a name="index-emulation-20"></a><br><dt><code>--emulation=</code><var>name</var><dd>This option causes <samp><span class="command">as</span></samp> to emulate <samp><span class="command">as</span></samp> configured | 
 | for some other target, in all respects, including output format (choosing | 
 | between ELF and ECOFF only), handling of pseudo-opcodes which may generate | 
 | debugging information or store symbol table information, and default | 
 | endianness.  The available configuration names are: ‘<samp><span class="samp">mipsecoff</span></samp>’, | 
 | ‘<samp><span class="samp">mipself</span></samp>’, ‘<samp><span class="samp">mipslecoff</span></samp>’, ‘<samp><span class="samp">mipsbecoff</span></samp>’, ‘<samp><span class="samp">mipslelf</span></samp>’, | 
 | ‘<samp><span class="samp">mipsbelf</span></samp>’.  The first two do not alter the default endianness from that | 
 | of the primary target for which the assembler was configured; the others change | 
 | the default to little- or big-endian as indicated by the ‘<samp><span class="samp">b</span></samp>’ or ‘<samp><span class="samp">l</span></samp>’ | 
 | in the name.  Using ‘<samp><span class="samp">-EB</span></samp>’ or ‘<samp><span class="samp">-EL</span></samp>’ will override the endianness | 
 | selection in any case. | 
 |  | 
 |      <p>This option is currently supported only when the primary target | 
 | <samp><span class="command">as</span></samp> is configured for is a <span class="sc">mips</span> ELF or ECOFF target.  | 
 | Furthermore, the primary target or others specified with | 
 | ‘<samp><span class="samp">--enable-targets=...</span></samp>’ at configuration time must include support for | 
 | the other format, if both are to be available.  For example, the Irix 5 | 
 | configuration includes support for both. | 
 |  | 
 |      <p>Eventually, this option will support more configurations, with more | 
 | fine-grained control over the assembler's behavior, and will be supported for | 
 | more processors. | 
 |  | 
 |      <br><dt><code>-nocpp</code><dd><samp><span class="command">as</span></samp> ignores this option.  It is accepted for compatibility with | 
 | the native tools. | 
 |  | 
 |      <br><dt><code>--trap</code><dt><code>--no-trap</code><dt><code>--break</code><dt><code>--no-break</code><dd>Control how to deal with multiplication overflow and division by zero.  | 
 | ‘<samp><span class="samp">--trap</span></samp>’ or ‘<samp><span class="samp">--no-break</span></samp>’ (which are synonyms) take a trap exception | 
 | (and only work for Instruction Set Architecture level 2 and higher); | 
 | ‘<samp><span class="samp">--break</span></samp>’ or ‘<samp><span class="samp">--no-trap</span></samp>’ (also synonyms, and the default) take a | 
 | break exception. | 
 |  | 
 |      <br><dt><code>-n</code><dd>When this option is used, <samp><span class="command">as</span></samp> will issue a warning every | 
 | time it generates a nop instruction from a macro.  | 
 | </dl> | 
 |  | 
 |    <p>The following options are available when as is configured for | 
 | an MCore processor. | 
 |  | 
 |      <dl> | 
 | <dt><code>-jsri2bsr</code><dt><code>-nojsri2bsr</code><dd>Enable or disable the JSRI to BSR transformation.  By default this is enabled.  | 
 | The command line option ‘<samp><span class="samp">-nojsri2bsr</span></samp>’ can be used to disable it. | 
 |  | 
 |      <br><dt><code>-sifilter</code><dt><code>-nosifilter</code><dd>Enable or disable the silicon filter behaviour.  By default this is disabled.  | 
 | The default can be overridden by the ‘<samp><span class="samp">-sifilter</span></samp>’ command line option. | 
 |  | 
 |      <br><dt><code>-relax</code><dd>Alter jump instructions for long displacements. | 
 |  | 
 |      <br><dt><code>-mcpu=[210|340]</code><dd>Select the cpu type on the target hardware.  This controls which instructions | 
 | can be assembled. | 
 |  | 
 |      <br><dt><code>-EB</code><dd>Assemble for a big endian target. | 
 |  | 
 |      <br><dt><code>-EL</code><dd>Assemble for a little endian target. | 
 |  | 
 |    </dl> | 
 |  | 
 |    <p>See the info pages for documentation of the MMIX-specific options. | 
 |  | 
 |    <p>See the info pages for documentation of the RX-specific options. | 
 |  | 
 |    <p>The following options are available when as is configured for the s390 | 
 | processor family. | 
 |  | 
 |      <dl> | 
 | <dt><code>-m31</code><dt><code>-m64</code><dd>Select the word size, either 31/32 bits or 64 bits.  | 
 | <br><dt><code>-mesa</code><br><dt><code>-mzarch</code><dd>Select the architecture mode, either the Enterprise System | 
 | Architecture (esa) or the z/Architecture mode (zarch).  | 
 | <br><dt><code>-march=</code><var>processor</var><dd>Specify which s390 processor variant is the target, ‘<samp><span class="samp">g6</span></samp>’, ‘<samp><span class="samp">g6</span></samp>’, | 
 | ‘<samp><span class="samp">z900</span></samp>’, ‘<samp><span class="samp">z990</span></samp>’, ‘<samp><span class="samp">z9-109</span></samp>’, ‘<samp><span class="samp">z9-ec</span></samp>’, or ‘<samp><span class="samp">z10</span></samp>’.  | 
 | <br><dt><code>-mregnames</code><dt><code>-mno-regnames</code><dd>Allow or disallow symbolic names for registers.  | 
 | <br><dt><code>-mwarn-areg-zero</code><dd>Warn whenever the operand for a base or index register has been specified | 
 | but evaluates to zero.  | 
 | </dl> | 
 |  | 
 |    <p>The following options are available when as is configured for a | 
 | TMS320C6000 processor. | 
 |  | 
 |      <dl> | 
 | <dt><code>-march=</code><var>arch</var><dd>Enable (only) instructions from architecture <var>arch</var>.  By default, | 
 | all instructions are permitted. | 
 |  | 
 |      <p>The following values of <var>arch</var> are accepted: <code>c62x</code>, | 
 | <code>c64x</code>, <code>c64x+</code>, <code>c67x</code>, <code>c67x+</code>, <code>c674x</code>. | 
 |  | 
 |      <br><dt><code>-matomic</code><dt><code>-mno-atomic</code><dd>Enable or disable the optional C64x+ atomic operation instructions.  | 
 | By default, they are enabled if no <samp><span class="option">-march</span></samp> option is given, or | 
 | if an architecture is specified with <samp><span class="option">-march</span></samp> that implies | 
 | these instructions are present (currently, there are no such | 
 | architectures); they are disabled if an architecture is specified with | 
 | <samp><span class="option">-march</span></samp> on which the instructions are optional or not | 
 | present.  This option overrides such a default from the architecture, | 
 | independent of the order in which the <samp><span class="option">-march</span></samp> or | 
 | <samp><span class="option">-matomic</span></samp> or <samp><span class="option">-mno-atomic</span></samp> options are passed. | 
 |  | 
 |      <br><dt><code>-mdsbt</code><dt><code>-mno-dsbt</code><dd>The <samp><span class="option">-mdsbt</span></samp> option causes the assembler to generate the | 
 | <code>Tag_ABI_DSBT</code> attribute with a value of 1, indicating that the | 
 | code is using DSBT addressing.  The <samp><span class="option">-mno-dsbt</span></samp> option, the | 
 | default, causes the tag to have a value of 0, indicating that the code | 
 | does not use DSBT addressing.  The linker will emit a warning if | 
 | objects of different type (DSBT and non-DSBT) are linked together. | 
 |  | 
 |      <br><dt><code>-mpid=no</code><dt><code>-mpid=near</code><dt><code>-mpid=far</code><dd>The <samp><span class="option">-mpid=</span></samp> option causes the assembler to generate the | 
 | <code>Tag_ABI_PID</code> attribute with a value indicating the form of data | 
 | addressing used by the code.  <samp><span class="option">-mpid=no</span></samp>, the default, | 
 | indicates position-dependent data addressing, <samp><span class="option">-mpid=near</span></samp> | 
 | indicates position-independent addressing with GOT accesses using near | 
 | DP addressing, and <samp><span class="option">-mpid=far</span></samp> indicates position-independent | 
 | addressing with GOT accesses using far DP addressing.  The linker will | 
 | emit a warning if objects built with different settings of this option | 
 | are linked together. | 
 |  | 
 |      <br><dt><code>-mpic</code><dt><code>-mno-pic</code><dd>The <samp><span class="option">-mpic</span></samp> option causes the assembler to generate the | 
 | <code>Tag_ABI_PIC</code> attribute with a value of 1, indicating that the | 
 | code is using position-independent code addressing,  The | 
 | <code>-mno-pic</code> option, the default, causes the tag to have a value of | 
 | 0, indicating position-dependent code addressing.  The linker will | 
 | emit a warning if objects of different type (position-dependent and | 
 | position-independent) are linked together. | 
 |  | 
 |      <br><dt><code>-mbig-endian</code><dt><code>-mlittle-endian</code><dd>Generate code for the specified endianness.  The default is | 
 | little-endian.  | 
 | </dl> | 
 |  | 
 |    <p>The following options are available when as is configured for | 
 | an Xtensa processor. | 
 |  | 
 |      <dl> | 
 | <dt><code>--text-section-literals | --no-text-section-literals</code><dd>With <samp><span class="option">--text-section-literals</span></samp>, literal pools are interspersed | 
 | in the text section.  The default is | 
 | <samp><span class="option">--no-text-section-literals</span></samp>, which places literals in a | 
 | separate section in the output file.  These options only affect literals | 
 | referenced via PC-relative <code>L32R</code> instructions; literals for | 
 | absolute mode <code>L32R</code> instructions are handled separately. | 
 |  | 
 |      <br><dt><code>--absolute-literals | --no-absolute-literals</code><dd>Indicate to the assembler whether <code>L32R</code> instructions use absolute | 
 | or PC-relative addressing.  The default is to assume absolute addressing | 
 | if the Xtensa processor includes the absolute <code>L32R</code> addressing | 
 | option.  Otherwise, only the PC-relative <code>L32R</code> mode can be used. | 
 |  | 
 |      <br><dt><code>--target-align | --no-target-align</code><dd>Enable or disable automatic alignment to reduce branch penalties at the | 
 | expense of some code density.  The default is <samp><span class="option">--target-align</span></samp>. | 
 |  | 
 |      <br><dt><code>--longcalls | --no-longcalls</code><dd>Enable or disable transformation of call instructions to allow calls | 
 | across a greater range of addresses.  The default is | 
 | <samp><span class="option">--no-longcalls</span></samp>. | 
 |  | 
 |      <br><dt><code>--transform | --no-transform</code><dd>Enable or disable all assembler transformations of Xtensa instructions.  | 
 | The default is <samp><span class="option">--transform</span></samp>; | 
 | <samp><span class="option">--no-transform</span></samp> should be used only in the rare cases when the | 
 | instructions must be exactly as specified in the assembly source. | 
 |  | 
 |      <br><dt><code>--rename-section </code><var>oldname</var><code>=</code><var>newname</var><dd>When generating output sections, rename the <var>oldname</var> section to | 
 | <var>newname</var>.  | 
 | </dl> | 
 |  | 
 |    <p>The following options are available when as is configured for | 
 | a Z80 family processor. | 
 |      <dl> | 
 | <dt><code>-z80</code><dd>Assemble for Z80 processor.  | 
 | <br><dt><code>-r800</code><dd>Assemble for R800 processor.  | 
 | <br><dt><code>-ignore-undocumented-instructions</code><dt><code>-Wnud</code><dd>Assemble undocumented Z80 instructions that also work on R800 without warning.  | 
 | <br><dt><code>-ignore-unportable-instructions</code><dt><code>-Wnup</code><dd>Assemble all undocumented Z80 instructions without warning.  | 
 | <br><dt><code>-warn-undocumented-instructions</code><dt><code>-Wud</code><dd>Issue a warning for undocumented Z80 instructions that also work on R800.  | 
 | <br><dt><code>-warn-unportable-instructions</code><dt><code>-Wup</code><dd>Issue a warning for undocumented Z80 instructions that do not work on R800.  | 
 | <br><dt><code>-forbid-undocumented-instructions</code><dt><code>-Fud</code><dd>Treat all undocumented instructions as errors.  | 
 | <br><dt><code>-forbid-unportable-instructions</code><dt><code>-Fup</code><dd>Treat undocumented Z80 instructions that do not work on R800 as errors.  | 
 | </dl> | 
 |  | 
 | <!-- man end --> | 
 | <ul class="menu"> | 
 | <li><a accesskey="1" href="Manual.html#Manual">Manual</a>:                       Structure of this Manual | 
 | <li><a accesskey="2" href="GNU-Assembler.html#GNU-Assembler">GNU Assembler</a>:                The GNU Assembler | 
 | <li><a accesskey="3" href="Object-Formats.html#Object-Formats">Object Formats</a>:               Object File Formats | 
 | <li><a accesskey="4" href="Command-Line.html#Command-Line">Command Line</a>:                 Command Line | 
 | <li><a accesskey="5" href="Input-Files.html#Input-Files">Input Files</a>:                  Input Files | 
 | <li><a accesskey="6" href="Object.html#Object">Object</a>:                       Output (Object) File | 
 | <li><a accesskey="7" href="Errors.html#Errors">Errors</a>:                       Error and Warning Messages | 
 | </ul> | 
 |  | 
 |    </body></html> | 
 |  |