<html lang="en">
<head>
<title>Output Section Description - Untitled</title>
<meta http-equiv="Content-Type" content="text/html">
<meta name="description" content="Untitled">
<meta name="generator" content="makeinfo 4.13">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="SECTIONS.html#SECTIONS" title="SECTIONS">
<link rel="next" href="Output-Section-Name.html#Output-Section-Name" title="Output Section Name">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
This file documents the GNU linker LD
(Sourcery G++ Lite 2011.03-41)
version 2.20.51.

Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 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="Output-Section-Description"></a>
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="Output-Section-Name.html#Output-Section-Name">Output Section Name</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="SECTIONS.html#SECTIONS">SECTIONS</a>
<hr>
</div>

<h4 class="subsection">3.6.1 Output Section Description</h4>

<p>The full description of an output section looks like this:
<pre class="smallexample">     <var>section</var> [<var>address</var>] [(<var>type</var>)] :
       [AT(<var>lma</var>)]
       [ALIGN(<var>section_align</var>)]
       [SUBALIGN(<var>subsection_align</var>)]
       [<var>constraint</var>]
       {
         <var>output-section-command</var>
         <var>output-section-command</var>
         ...
       } [&gt;<var>region</var>] [AT&gt;<var>lma_region</var>] [:<var>phdr</var> :<var>phdr</var> ...] [=<var>fillexp</var>]
</pre>
   <p>Most output sections do not use most of the optional section attributes.

   <p>The whitespace around <var>section</var> is required, so that the section
name is unambiguous.  The colon and the curly braces are also required. 
The line breaks and other white space are optional.

   <p>Each <var>output-section-command</var> may be one of the following:

     <ul>
<li>a symbol assignment (see <a href="Assignments.html#Assignments">Assignments</a>)
<li>an input section description (see <a href="Input-Section.html#Input-Section">Input Section</a>)
<li>data values to include directly (see <a href="Output-Section-Data.html#Output-Section-Data">Output Section Data</a>)
<li>a special output section keyword (see <a href="Output-Section-Keywords.html#Output-Section-Keywords">Output Section Keywords</a>)
</ul>

   </body></html>

