1<html lang="en"> 2<head> 3<title>Input Section Common - Untitled</title> 4<meta http-equiv="Content-Type" content="text/html"> 5<meta name="description" content="Untitled"> 6<meta name="generator" content="makeinfo 4.13"> 7<link title="Top" rel="start" href="index.html#Top"> 8<link rel="up" href="Input-Section.html#Input-Section" title="Input Section"> 9<link rel="prev" href="Input-Section-Wildcards.html#Input-Section-Wildcards" title="Input Section Wildcards"> 10<link rel="next" href="Input-Section-Keep.html#Input-Section-Keep" title="Input Section Keep"> 11<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage"> 12<!-- 13This file documents the GNU linker LD 14(Sourcery CodeBench Lite 2011.09-69) 15version 2.21.53. 16 17Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 182001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. 19 20Permission is granted to copy, distribute and/or modify this document 21under the terms of the GNU Free Documentation License, Version 1.3 22or any later version published by the Free Software Foundation; 23with no Invariant Sections, with no Front-Cover Texts, and with no 24Back-Cover Texts. A copy of the license is included in the 25section entitled ``GNU Free Documentation License''.--> 26<meta http-equiv="Content-Style-Type" content="text/css"> 27<style type="text/css"><!-- 28 pre.display { font-family:inherit } 29 pre.format { font-family:inherit } 30 pre.smalldisplay { font-family:inherit; font-size:smaller } 31 pre.smallformat { font-family:inherit; font-size:smaller } 32 pre.smallexample { font-size:smaller } 33 pre.smalllisp { font-size:smaller } 34 span.sc { font-variant:small-caps } 35 span.roman { font-family:serif; font-weight:normal; } 36 span.sansserif { font-family:sans-serif; font-weight:normal; } 37--></style> 38<link rel="stylesheet" type="text/css" href="../cs.css"> 39</head> 40<body> 41<div class="node"> 42<a name="Input-Section-Common"></a> 43<p> 44Next: <a rel="next" accesskey="n" href="Input-Section-Keep.html#Input-Section-Keep">Input Section Keep</a>, 45Previous: <a rel="previous" accesskey="p" href="Input-Section-Wildcards.html#Input-Section-Wildcards">Input Section Wildcards</a>, 46Up: <a rel="up" accesskey="u" href="Input-Section.html#Input-Section">Input Section</a> 47<hr> 48</div> 49 50<h5 class="subsubsection">3.6.4.3 Input Section for Common Symbols</h5> 51 52<p><a name="index-common-symbol-placement-416"></a><a name="index-uninitialized-data-placement-417"></a>A special notation is needed for common symbols, because in many object 53file formats common symbols do not have a particular input section. The 54linker treats common symbols as though they are in an input section 55named ‘<samp><span class="samp">COMMON</span></samp>’. 56 57 <p>You may use file names with the ‘<samp><span class="samp">COMMON</span></samp>’ section just as with any 58other input sections. You can use this to place common symbols from a 59particular input file in one section while common symbols from other 60input files are placed in another section. 61 62 <p>In most cases, common symbols in input files will be placed in the 63‘<samp><span class="samp">.bss</span></samp>’ section in the output file. For example: 64<pre class="smallexample"> .bss { *(.bss) *(COMMON) } 65</pre> 66 <p><a name="index-scommon-section-418"></a><a name="index-small-common-symbols-419"></a>Some object file formats have more than one type of common symbol. For 67example, the MIPS ELF object file format distinguishes standard common 68symbols and small common symbols. In this case, the linker will use a 69different special section name for other types of common symbols. In 70the case of MIPS ELF, the linker uses ‘<samp><span class="samp">COMMON</span></samp>’ for standard common 71symbols and ‘<samp><span class="samp">.scommon</span></samp>’ for small common symbols. This permits you 72to map the different types of common symbols into memory at different 73locations. 74 75 <p><a name="index-g_t_005bCOMMON_005d-420"></a>You will sometimes see ‘<samp><span class="samp">[COMMON]</span></samp>’ in old linker scripts. This 76notation is now considered obsolete. It is equivalent to 77‘<samp><span class="samp">*(COMMON)</span></samp>’. 78 79 </body></html> 80 81