You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

Entry-Point.html 4.2KB

3 vuotta sitten
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <html>
  3. <!-- This file documents the GNU linker LD
  4. (GNU Arm Embedded Toolchain 10-2020-q4-major)
  5. version 2.35.1.
  6. Copyright (C) 1991-2020 Free Software Foundation, Inc.
  7. Permission is granted to copy, distribute and/or modify this document
  8. under the terms of the GNU Free Documentation License, Version 1.3
  9. or any later version published by the Free Software Foundation;
  10. with no Invariant Sections, with no Front-Cover Texts, and with no
  11. Back-Cover Texts. A copy of the license is included in the
  12. section entitled "GNU Free Documentation License". -->
  13. <!-- Created by GNU Texinfo 6.5, http://www.gnu.org/software/texinfo/ -->
  14. <head>
  15. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  16. <title>Entry Point (LD)</title>
  17. <meta name="description" content="Entry Point (LD)">
  18. <meta name="keywords" content="Entry Point (LD)">
  19. <meta name="resource-type" content="document">
  20. <meta name="distribution" content="global">
  21. <meta name="Generator" content="makeinfo">
  22. <link href="index.html#Top" rel="start" title="Top">
  23. <link href="LD-Index.html#LD-Index" rel="index" title="LD Index">
  24. <link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
  25. <link href="Simple-Commands.html#Simple-Commands" rel="up" title="Simple Commands">
  26. <link href="File-Commands.html#File-Commands" rel="next" title="File Commands">
  27. <link href="Simple-Commands.html#Simple-Commands" rel="prev" title="Simple Commands">
  28. <style type="text/css">
  29. <!--
  30. a.summary-letter {text-decoration: none}
  31. blockquote.indentedblock {margin-right: 0em}
  32. blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
  33. blockquote.smallquotation {font-size: smaller}
  34. div.display {margin-left: 3.2em}
  35. div.example {margin-left: 3.2em}
  36. div.lisp {margin-left: 3.2em}
  37. div.smalldisplay {margin-left: 3.2em}
  38. div.smallexample {margin-left: 3.2em}
  39. div.smalllisp {margin-left: 3.2em}
  40. kbd {font-style: oblique}
  41. pre.display {font-family: inherit}
  42. pre.format {font-family: inherit}
  43. pre.menu-comment {font-family: serif}
  44. pre.menu-preformatted {font-family: serif}
  45. pre.smalldisplay {font-family: inherit; font-size: smaller}
  46. pre.smallexample {font-size: smaller}
  47. pre.smallformat {font-family: inherit; font-size: smaller}
  48. pre.smalllisp {font-size: smaller}
  49. span.nolinebreak {white-space: nowrap}
  50. span.roman {font-family: initial; font-weight: normal}
  51. span.sansserif {font-family: sans-serif; font-weight: normal}
  52. ul.no-bullet {list-style: none}
  53. -->
  54. </style>
  55. </head>
  56. <body lang="en">
  57. <a name="Entry-Point"></a>
  58. <div class="header">
  59. <p>
  60. Next: <a href="File-Commands.html#File-Commands" accesskey="n" rel="next">File Commands</a>, Up: <a href="Simple-Commands.html#Simple-Commands" accesskey="u" rel="up">Simple Commands</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>
  61. </div>
  62. <hr>
  63. <a name="Setting-the-Entry-Point"></a>
  64. <h4 class="subsection">3.4.1 Setting the Entry Point</h4>
  65. <a name="index-ENTRY_0028symbol_0029"></a>
  66. <a name="index-start-of-execution"></a>
  67. <a name="index-first-instruction"></a>
  68. <a name="index-entry-point"></a>
  69. <p>The first instruction to execute in a program is called the <em>entry
  70. point</em>. You can use the <code>ENTRY</code> linker script command to set the
  71. entry point. The argument is a symbol name:
  72. </p><div class="smallexample">
  73. <pre class="smallexample">ENTRY(<var>symbol</var>)
  74. </pre></div>
  75. <p>There are several ways to set the entry point. The linker will set the
  76. entry point by trying each of the following methods in order, and
  77. stopping when one of them succeeds:
  78. </p><ul>
  79. <li> the &lsquo;<samp>-e</samp>&rsquo; <var>entry</var> command-line option;
  80. </li><li> the <code>ENTRY(<var>symbol</var>)</code> command in a linker script;
  81. </li><li> the value of a target-specific symbol, if it is defined; For many
  82. targets this is <code>start</code>, but PE- and BeOS-based systems for example
  83. check a list of possible entry symbols, matching the first one found.
  84. </li><li> the address of the first byte of the &lsquo;<samp>.text</samp>&rsquo; section, if present;
  85. </li><li> The address <code>0</code>.
  86. </li></ul>
  87. </body>
  88. </html>