|
- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
- <html>
- <!-- This file documents the GNU Assembler "as".
-
- Copyright (C) 1991-2020 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".
- -->
- <!-- Created by GNU Texinfo 6.5, http://www.gnu.org/software/texinfo/ -->
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <title>GNU Object Attributes (Using as)</title>
-
- <meta name="description" content="GNU Object Attributes (Using as)">
- <meta name="keywords" content="GNU Object Attributes (Using as)">
- <meta name="resource-type" content="document">
- <meta name="distribution" content="global">
- <meta name="Generator" content="makeinfo">
- <link href="index.html#Top" rel="start" title="Top">
- <link href="AS-Index.html#AS-Index" rel="index" title="AS Index">
- <link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
- <link href="Object-Attributes.html#Object-Attributes" rel="up" title="Object Attributes">
- <link href="Defining-New-Object-Attributes.html#Defining-New-Object-Attributes" rel="next" title="Defining New Object Attributes">
- <link href="Object-Attributes.html#Object-Attributes" rel="prev" title="Object Attributes">
- <style type="text/css">
- <!--
- a.summary-letter {text-decoration: none}
- blockquote.indentedblock {margin-right: 0em}
- blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
- blockquote.smallquotation {font-size: smaller}
- div.display {margin-left: 3.2em}
- div.example {margin-left: 3.2em}
- div.lisp {margin-left: 3.2em}
- div.smalldisplay {margin-left: 3.2em}
- div.smallexample {margin-left: 3.2em}
- div.smalllisp {margin-left: 3.2em}
- kbd {font-style: oblique}
- pre.display {font-family: inherit}
- pre.format {font-family: inherit}
- pre.menu-comment {font-family: serif}
- pre.menu-preformatted {font-family: serif}
- pre.smalldisplay {font-family: inherit; font-size: smaller}
- pre.smallexample {font-size: smaller}
- pre.smallformat {font-family: inherit; font-size: smaller}
- pre.smalllisp {font-size: smaller}
- span.nolinebreak {white-space: nowrap}
- span.roman {font-family: initial; font-weight: normal}
- span.sansserif {font-family: sans-serif; font-weight: normal}
- ul.no-bullet {list-style: none}
- -->
- </style>
-
-
- </head>
-
- <body lang="en">
- <a name="GNU-Object-Attributes"></a>
- <div class="header">
- <p>
- Next: <a href="Defining-New-Object-Attributes.html#Defining-New-Object-Attributes" accesskey="n" rel="next">Defining New Object Attributes</a>, Up: <a href="Object-Attributes.html#Object-Attributes" accesskey="u" rel="up">Object Attributes</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="AS-Index.html#AS-Index" title="Index" rel="index">Index</a>]</p>
- </div>
- <hr>
- <a name="GNU-Object-Attributes-1"></a>
- <h3 class="section">8.1 <small>GNU</small> Object Attributes</h3>
-
- <p>The <code>.gnu_attribute</code> directive records an object attribute
- with vendor ‘<samp>gnu</samp>’.
- </p>
- <p>Except for ‘<samp>Tag_compatibility</samp>’, which has both an integer and a string for
- its value, <small>GNU</small> attributes have a string value if the tag number is odd and
- an integer value if the tag number is even. The second bit (<code><var>tag</var> &
- 2</code> is set for architecture-independent attributes and clear for
- architecture-dependent ones.
- </p>
- <a name="Common-GNU-attributes"></a>
- <h4 class="subsection">8.1.1 Common <small>GNU</small> attributes</h4>
-
- <p>These attributes are valid on all architectures.
- </p>
- <dl compact="compact">
- <dt><span class="roman">Tag_compatibility (32)</span></dt>
- <dd><p>The compatibility attribute takes an integer flag value and a vendor name. If
- the flag value is 0, the file is compatible with other toolchains. If it is 1,
- then the file is only compatible with the named toolchain. If it is greater
- than 1, the file can only be processed by other toolchains under some private
- arrangement indicated by the flag value and the vendor name.
- </p></dd>
- </dl>
-
- <a name="M680x0-Attributes"></a>
- <h4 class="subsection">8.1.2 M680x0 Attributes</h4>
-
- <dl compact="compact">
- <dt><span class="roman">Tag_GNU_M68K_ABI_FP (4)</span></dt>
- <dd><p>The floating-point ABI used by this object file. The value will be:
- </p>
- <ul>
- <li> 0 for files not affected by the floating-point ABI.
- </li><li> 1 for files using double-precision hardware floating-point ABI.
- </li><li> 2 for files using the software floating-point ABI.
- </li></ul>
- </dd>
- </dl>
-
- <a name="MIPS-Attributes"></a>
- <h4 class="subsection">8.1.3 MIPS Attributes</h4>
-
- <dl compact="compact">
- <dt><span class="roman">Tag_GNU_MIPS_ABI_FP (4)</span></dt>
- <dd><p>The floating-point ABI used by this object file. The value will be:
- </p>
- <ul>
- <li> 0 for files not affected by the floating-point ABI.
- </li><li> 1 for files using the hardware floating-point ABI with a standard
- double-precision FPU.
- </li><li> 2 for files using the hardware floating-point ABI with a single-precision FPU.
- </li><li> 3 for files using the software floating-point ABI.
- </li><li> 4 for files using the deprecated hardware floating-point ABI which used 64-bit
- floating-point registers, 32-bit general-purpose registers and increased the
- number of callee-saved floating-point registers.
- </li><li> 5 for files using the hardware floating-point ABI with a double-precision FPU
- with either 32-bit or 64-bit floating-point registers and 32-bit
- general-purpose registers.
- </li><li> 6 for files using the hardware floating-point ABI with 64-bit floating-point
- registers and 32-bit general-purpose registers.
- </li><li> 7 for files using the hardware floating-point ABI with 64-bit floating-point
- registers, 32-bit general-purpose registers and a rule that forbids the
- direct use of odd-numbered single-precision floating-point registers.
- </li></ul>
- </dd>
- </dl>
-
- <a name="PowerPC-Attributes"></a>
- <h4 class="subsection">8.1.4 PowerPC Attributes</h4>
-
- <dl compact="compact">
- <dt><span class="roman">Tag_GNU_Power_ABI_FP (4)</span></dt>
- <dd><p>The floating-point ABI used by this object file. The value will be:
- </p>
- <ul>
- <li> 0 for files not affected by the floating-point ABI.
- </li><li> 1 for files using double-precision hardware floating-point ABI.
- </li><li> 2 for files using the software floating-point ABI.
- </li><li> 3 for files using single-precision hardware floating-point ABI.
- </li></ul>
-
- </dd>
- <dt><span class="roman">Tag_GNU_Power_ABI_Vector (8)</span></dt>
- <dd><p>The vector ABI used by this object file. The value will be:
- </p>
- <ul>
- <li> 0 for files not affected by the vector ABI.
- </li><li> 1 for files using general purpose registers to pass vectors.
- </li><li> 2 for files using AltiVec registers to pass vectors.
- </li><li> 3 for files using SPE registers to pass vectors.
- </li></ul>
- </dd>
- </dl>
-
- <a name="IBM-z-Systems-Attributes"></a>
- <h4 class="subsection">8.1.5 IBM z Systems Attributes</h4>
-
- <dl compact="compact">
- <dt><span class="roman">Tag_GNU_S390_ABI_Vector (8)</span></dt>
- <dd><p>The vector ABI used by this object file. The value will be:
- </p>
- <ul>
- <li> 0 for files not affected by the vector ABI.
- </li><li> 1 for files using software vector ABI.
- </li><li> 2 for files using hardware vector ABI.
- </li></ul>
- </dd>
- </dl>
-
- <a name="MSP430-Attributes"></a>
- <h4 class="subsection">8.1.6 MSP430 Attributes</h4>
-
- <dl compact="compact">
- <dt><span class="roman">Tag_GNU_MSP430_Data_Region (4)</span></dt>
- <dd><p>The data region used by this object file. The value will be:
- </p>
- <ul>
- <li> 0 for files not using the large memory model.
- </li><li> 1 for files which have been compiled with the condition that all
- data is in the lower memory region, i.e. below address 0x10000.
- </li><li> 2 for files which allow data to be placed in the full 20-bit memory range.
- </li></ul>
- </dd>
- </dl>
-
- <hr>
- <div class="header">
- <p>
- Next: <a href="Defining-New-Object-Attributes.html#Defining-New-Object-Attributes" accesskey="n" rel="next">Defining New Object Attributes</a>, Up: <a href="Object-Attributes.html#Object-Attributes" accesskey="u" rel="up">Object Attributes</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="AS-Index.html#AS-Index" title="Index" rel="index">Index</a>]</p>
- </div>
-
-
-
- </body>
- </html>
|