blob: 3f7f6153c6c7a062b5c7c69797588b630d86042b [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This file documents the GNU linker LD
(Linaro_Binutils-2017.01)
version 2.24.0.
Copyright (C) 1991-2013 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 5.2, http://www.gnu.org/software/texinfo/ -->
<head>
<title>LD: Expressions</title>
<meta name="description" content="LD: Expressions">
<meta name="keywords" content="LD: Expressions">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="LD-Index.html#LD-Index" rel="index" title="LD Index">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Scripts.html#Scripts" rel="up" title="Scripts">
<link href="Constants.html#Constants" rel="next" title="Constants">
<link href="VERSION.html#VERSION" rel="prev" title="VERSION">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.indentedblock {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
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.nocodebreak {white-space:nowrap}
span.nolinebreak {white-space:nowrap}
span.roman {font-family:serif; font-weight:normal}
span.sansserif {font-family:sans-serif; font-weight:normal}
ul.no-bullet {list-style: none}
-->
</style>
</head>
<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
<a name="Expressions"></a>
<div class="header">
<p>
Next: <a href="Implicit-Linker-Scripts.html#Implicit-Linker-Scripts" accesskey="n" rel="next">Implicit Linker Scripts</a>, Previous: <a href="VERSION.html#VERSION" accesskey="p" rel="prev">VERSION</a>, Up: <a href="Scripts.html#Scripts" accesskey="u" rel="up">Scripts</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="LD-Index.html#LD-Index" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<a name="Expressions-in-Linker-Scripts"></a>
<h3 class="section">3.10 Expressions in Linker Scripts</h3>
<a name="index-expressions"></a>
<a name="index-arithmetic"></a>
<p>The syntax for expressions in the linker script language is identical to
that of C expressions. All expressions are evaluated as integers. All
expressions are evaluated in the same size, which is 32 bits if both the
host and target are 32 bits, and is otherwise 64 bits.
</p>
<p>You can use and set symbol values in expressions.
</p>
<p>The linker defines several special purpose builtin functions for use in
expressions.
</p>
<table class="menu" border="0" cellspacing="0">
<tr><td align="left" valign="top">&bull; <a href="Constants.html#Constants" accesskey="1">Constants</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Constants
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="Symbolic-Constants.html#Symbolic-Constants" accesskey="2">Symbolic Constants</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Symbolic constants
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="Symbols.html#Symbols" accesskey="3">Symbols</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Symbol Names
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="Orphan-Sections.html#Orphan-Sections" accesskey="4">Orphan Sections</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Orphan Sections
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="Location-Counter.html#Location-Counter" accesskey="5">Location Counter</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">The Location Counter
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="Operators.html#Operators" accesskey="6">Operators</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Operators
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="Evaluation.html#Evaluation" accesskey="7">Evaluation</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Evaluation
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="Expression-Section.html#Expression-Section" accesskey="8">Expression Section</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">The Section of an Expression
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="Builtin-Functions.html#Builtin-Functions" accesskey="9">Builtin Functions</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Builtin Functions
</td></tr>
</table>
</body>
</html>