<html lang="en">
<head>
<title>Defining New Object Attributes - 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="up" href="Object-Attributes.html#Object-Attributes" title="Object Attributes">
<link rel="prev" href="GNU-Object-Attributes.html#GNU-Object-Attributes" title="GNU Object Attributes">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
This file documents the GNU Assembler "as".

Copyright (C) 1991-2019 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>
</head>
<body>
<div class="node">
<a name="Defining-New-Object-Attributes"></a>
<p>
Previous:&nbsp;<a rel="previous" accesskey="p" href="GNU-Object-Attributes.html#GNU-Object-Attributes">GNU Object Attributes</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="Object-Attributes.html#Object-Attributes">Object Attributes</a>
<hr>
</div>

<h3 class="section">8.2 Defining New Object Attributes</h3>

<p>If you want to define a new <span class="sc">gnu</span> object attribute, here are the places you
will need to modify.  New attributes should be discussed on the &lsquo;<samp><span class="samp">binutils</span></samp>&rsquo;
mailing list.

     <ul>
<li>This manual, which is the official register of attributes. 
<li>The header for your architecture <samp><span class="file">include/elf</span></samp>, to define the tag. 
<li>The <samp><span class="file">bfd</span></samp> support file for your architecture, to merge the attribute
and issue any appropriate link warnings. 
<li>Test cases in <samp><span class="file">ld/testsuite</span></samp> for merging and link warnings. 
<li><samp><span class="file">binutils/readelf.c</span></samp> to display your attribute. 
<li>GCC, if you want the compiler to mark the attribute automatically. 
</ul>

   </body></html>

