<html lang="en"> <head> <title>Entry Point - Untitled</title> <meta http-equiv="Content-Type" content="text/html"> <meta name="description" content="Untitled"> <meta name="generator" content="makeinfo 4.7"> <link title="Top" rel="start" href="index.html#Top"> <link rel="up" href="Simple-Commands.html#Simple-Commands" title="Simple Commands"> <link rel="next" href="File-Commands.html#File-Commands" title="File Commands"> <link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage"> <!-- This file documents the GNU linker LD (GNU Binutils) version 2.19. Copyright (C) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 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.1 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; } --></style> </head> <body> <div class="node"> <p> <a name="Entry-Point"></a>Next: <a rel="next" accesskey="n" href="File-Commands.html#File-Commands">File Commands</a>, Up: <a rel="up" accesskey="u" href="Simple-Commands.html#Simple-Commands">Simple Commands</a> <hr><br> </div> <h4 class="subsection">3.4.1 Setting the Entry Point</h4> <p><a name="index-ENTRY_0028_0040var_007bsymbol_007d_0029-315"></a><a name="index-start-of-execution-316"></a><a name="index-first-instruction-317"></a><a name="index-entry-point-318"></a>The first instruction to execute in a program is called the <dfn>entry point</dfn>. You can use the <code>ENTRY</code> linker script command to set the entry point. The argument is a symbol name: <pre class="smallexample"> ENTRY(<var>symbol</var>) </pre> <p>There are several ways to set the entry point. The linker will set the entry point by trying each of the following methods in order, and stopping when one of them succeeds: <ul> <li>the <span class="samp">-e</span> <var>entry</var> command-line option; <li>the <code>ENTRY(</code><var>symbol</var><code>)</code> command in a linker script; <li>the value of the symbol <code>start</code>, if defined; <li>the address of the first byte of the <span class="samp">.text</span> section, if present; <li>The address <code>0</code>. </ul> </body></html>