ARM.html 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380
  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 Binutils)
  5. version 2.28.
  6. Copyright (C) 1991-2017 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 5.2, http://www.gnu.org/software/texinfo/ -->
  14. <head>
  15. <title>LD: ARM</title>
  16. <meta name="description" content="LD: ARM">
  17. <meta name="keywords" content="LD: ARM">
  18. <meta name="resource-type" content="document">
  19. <meta name="distribution" content="global">
  20. <meta name="Generator" content="makeinfo">
  21. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  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="Machine-Dependent.html#Machine-Dependent" rel="up" title="Machine Dependent">
  26. <link href="HPPA-ELF32.html#HPPA-ELF32" rel="next" title="HPPA ELF32">
  27. <link href="M68HC11_002f68HC12.html#M68HC11_002f68HC12" rel="prev" title="M68HC11/68HC12">
  28. <style type="text/css">
  29. <!--
  30. a.summary-letter {text-decoration: none}
  31. blockquote.smallquotation {font-size: smaller}
  32. div.display {margin-left: 3.2em}
  33. div.example {margin-left: 3.2em}
  34. div.indentedblock {margin-left: 3.2em}
  35. div.lisp {margin-left: 3.2em}
  36. div.smalldisplay {margin-left: 3.2em}
  37. div.smallexample {margin-left: 3.2em}
  38. div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
  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.nocodebreak {white-space:nowrap}
  50. span.nolinebreak {white-space:nowrap}
  51. span.roman {font-family:serif; font-weight:normal}
  52. span.sansserif {font-family:sans-serif; font-weight:normal}
  53. ul.no-bullet {list-style: none}
  54. -->
  55. </style>
  56. </head>
  57. <body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
  58. <a name="ARM"></a>
  59. <div class="header">
  60. <p>
  61. Next: <a href="HPPA-ELF32.html#HPPA-ELF32" accesskey="n" rel="next">HPPA ELF32</a>, Previous: <a href="M68HC11_002f68HC12.html#M68HC11_002f68HC12" accesskey="p" rel="prev">M68HC11/68HC12</a>, Up: <a href="Machine-Dependent.html#Machine-Dependent" accesskey="u" rel="up">Machine Dependent</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>
  62. </div>
  63. <hr>
  64. <a name="ld-and-the-ARM-family"></a>
  65. <h3 class="section">4.4 <code>ld</code> and the ARM family</h3>
  66. <a name="index-ARM-interworking-support"></a>
  67. <a name="index-_002d_002dsupport_002dold_002dcode"></a>
  68. <p>For the ARM, <code>ld</code> will generate code stubs to allow functions calls
  69. between ARM and Thumb code. These stubs only work with code that has
  70. been compiled and assembled with the &lsquo;<samp>-mthumb-interwork</samp>&rsquo; command
  71. line option. If it is necessary to link with old ARM object files or
  72. libraries, which have not been compiled with the -mthumb-interwork
  73. option then the &lsquo;<samp>--support-old-code</samp>&rsquo; command line switch should be
  74. given to the linker. This will make it generate larger stub functions
  75. which will work with non-interworking aware ARM code. Note, however,
  76. the linker does not support generating stubs for function calls to
  77. non-interworking aware Thumb code.
  78. </p>
  79. <a name="index-thumb-entry-point"></a>
  80. <a name="index-entry-point_002c-thumb"></a>
  81. <a name="index-_002d_002dthumb_002dentry_003dentry"></a>
  82. <p>The &lsquo;<samp>--thumb-entry</samp>&rsquo; switch is a duplicate of the generic
  83. &lsquo;<samp>--entry</samp>&rsquo; switch, in that it sets the program&rsquo;s starting address.
  84. But it also sets the bottom bit of the address, so that it can be
  85. branched to using a BX instruction, and the program will start
  86. executing in Thumb mode straight away.
  87. </p>
  88. <a name="index-PE-import-table-prefixing"></a>
  89. <a name="index-_002d_002duse_002dnul_002dprefixed_002dimport_002dtables"></a>
  90. <p>The &lsquo;<samp>--use-nul-prefixed-import-tables</samp>&rsquo; switch is specifying, that
  91. the import tables idata4 and idata5 have to be generated with a zero
  92. element prefix for import libraries. This is the old style to generate
  93. import tables. By default this option is turned off.
  94. </p>
  95. <a name="index-BE8"></a>
  96. <a name="index-_002d_002dbe8"></a>
  97. <p>The &lsquo;<samp>--be8</samp>&rsquo; switch instructs <code>ld</code> to generate BE8 format
  98. executables. This option is only valid when linking big-endian
  99. objects - ie ones which have been assembled with the <samp>-EB</samp>
  100. option. The resulting image will contain big-endian data and
  101. little-endian code.
  102. </p>
  103. <a name="index-TARGET1"></a>
  104. <a name="index-_002d_002dtarget1_002drel"></a>
  105. <a name="index-_002d_002dtarget1_002dabs"></a>
  106. <p>The &lsquo;<samp>R_ARM_TARGET1</samp>&rsquo; relocation is typically used for entries in the
  107. &lsquo;<samp>.init_array</samp>&rsquo; section. It is interpreted as either &lsquo;<samp>R_ARM_REL32</samp>&rsquo;
  108. or &lsquo;<samp>R_ARM_ABS32</samp>&rsquo;, depending on the target. The &lsquo;<samp>--target1-rel</samp>&rsquo;
  109. and &lsquo;<samp>--target1-abs</samp>&rsquo; switches override the default.
  110. </p>
  111. <a name="index-TARGET2"></a>
  112. <a name="index-_002d_002dtarget2_003dtype"></a>
  113. <p>The &lsquo;<samp>--target2=type</samp>&rsquo; switch overrides the default definition of the
  114. &lsquo;<samp>R_ARM_TARGET2</samp>&rsquo; relocation. Valid values for &lsquo;<samp>type</samp>&rsquo;, their
  115. meanings, and target defaults are as follows:
  116. </p><dl compact="compact">
  117. <dt>&lsquo;<samp>rel</samp>&rsquo;</dt>
  118. <dd><p>&lsquo;<samp>R_ARM_REL32</samp>&rsquo; (arm*-*-elf, arm*-*-eabi)
  119. </p></dd>
  120. <dt>&lsquo;<samp>abs</samp>&rsquo;</dt>
  121. <dd><p>&lsquo;<samp>R_ARM_ABS32</samp>&rsquo; (arm*-*-symbianelf)
  122. </p></dd>
  123. <dt>&lsquo;<samp>got-rel</samp>&rsquo;</dt>
  124. <dd><p>&lsquo;<samp>R_ARM_GOT_PREL</samp>&rsquo; (arm*-*-linux, arm*-*-*bsd)
  125. </p></dd>
  126. </dl>
  127. <a name="index-FIX_005fV4BX"></a>
  128. <a name="index-_002d_002dfix_002dv4bx"></a>
  129. <p>The &lsquo;<samp>R_ARM_V4BX</samp>&rsquo; relocation (defined by the ARM AAELF
  130. specification) enables objects compiled for the ARMv4 architecture to be
  131. interworking-safe when linked with other objects compiled for ARMv4t, but
  132. also allows pure ARMv4 binaries to be built from the same ARMv4 objects.
  133. </p>
  134. <p>In the latter case, the switch <samp>--fix-v4bx</samp> must be passed to the
  135. linker, which causes v4t <code>BX rM</code> instructions to be rewritten as
  136. <code>MOV PC,rM</code>, since v4 processors do not have a <code>BX</code> instruction.
  137. </p>
  138. <p>In the former case, the switch should not be used, and &lsquo;<samp>R_ARM_V4BX</samp>&rsquo;
  139. relocations are ignored.
  140. </p>
  141. <a name="index-FIX_005fV4BX_005fINTERWORKING"></a>
  142. <a name="index-_002d_002dfix_002dv4bx_002dinterworking"></a>
  143. <p>Replace <code>BX rM</code> instructions identified by &lsquo;<samp>R_ARM_V4BX</samp>&rsquo;
  144. relocations with a branch to the following veneer:
  145. </p>
  146. <div class="smallexample">
  147. <pre class="smallexample">TST rM, #1
  148. MOVEQ PC, rM
  149. BX Rn
  150. </pre></div>
  151. <p>This allows generation of libraries/applications that work on ARMv4 cores
  152. and are still interworking safe. Note that the above veneer clobbers the
  153. condition flags, so may cause incorrect program behavior in rare cases.
  154. </p>
  155. <a name="index-USE_005fBLX"></a>
  156. <a name="index-_002d_002duse_002dblx"></a>
  157. <p>The &lsquo;<samp>--use-blx</samp>&rsquo; switch enables the linker to use ARM/Thumb
  158. BLX instructions (available on ARMv5t and above) in various
  159. situations. Currently it is used to perform calls via the PLT from Thumb
  160. code using BLX rather than using BX and a mode-switching stub before
  161. each PLT entry. This should lead to such calls executing slightly faster.
  162. </p>
  163. <p>This option is enabled implicitly for SymbianOS, so there is no need to
  164. specify it if you are using that target.
  165. </p>
  166. <a name="index-VFP11_005fDENORM_005fFIX"></a>
  167. <a name="index-_002d_002dvfp11_002ddenorm_002dfix"></a>
  168. <p>The &lsquo;<samp>--vfp11-denorm-fix</samp>&rsquo; switch enables a link-time workaround for a
  169. bug in certain VFP11 coprocessor hardware, which sometimes allows
  170. instructions with denorm operands (which must be handled by support code)
  171. to have those operands overwritten by subsequent instructions before
  172. the support code can read the intended values.
  173. </p>
  174. <p>The bug may be avoided in scalar mode if you allow at least one
  175. intervening instruction between a VFP11 instruction which uses a register
  176. and another instruction which writes to the same register, or at least two
  177. intervening instructions if vector mode is in use. The bug only affects
  178. full-compliance floating-point mode: you do not need this workaround if
  179. you are using &quot;runfast&quot; mode. Please contact ARM for further details.
  180. </p>
  181. <p>If you know you are using buggy VFP11 hardware, you can
  182. enable this workaround by specifying the linker option
  183. &lsquo;<samp>--vfp-denorm-fix=scalar</samp>&rsquo; if you are using the VFP11 scalar
  184. mode only, or &lsquo;<samp>--vfp-denorm-fix=vector</samp>&rsquo; if you are using
  185. vector mode (the latter also works for scalar code). The default is
  186. &lsquo;<samp>--vfp-denorm-fix=none</samp>&rsquo;.
  187. </p>
  188. <p>If the workaround is enabled, instructions are scanned for
  189. potentially-troublesome sequences, and a veneer is created for each
  190. such sequence which may trigger the erratum. The veneer consists of the
  191. first instruction of the sequence and a branch back to the subsequent
  192. instruction. The original instruction is then replaced with a branch to
  193. the veneer. The extra cycles required to call and return from the veneer
  194. are sufficient to avoid the erratum in both the scalar and vector cases.
  195. </p>
  196. <a name="index-ARM1176-erratum-workaround"></a>
  197. <a name="index-_002d_002dfix_002darm1176"></a>
  198. <a name="index-_002d_002dno_002dfix_002darm1176"></a>
  199. <p>The &lsquo;<samp>--fix-arm1176</samp>&rsquo; switch enables a link-time workaround for an erratum
  200. in certain ARM1176 processors. The workaround is enabled by default if you
  201. are targeting ARM v6 (excluding ARM v6T2) or earlier. It can be disabled
  202. unconditionally by specifying &lsquo;<samp>--no-fix-arm1176</samp>&rsquo;.
  203. </p>
  204. <p>Further information is available in the &ldquo;ARM1176JZ-S and ARM1176JZF-S
  205. Programmer Advice Notice&rdquo; available on the ARM documentation website at:
  206. http://infocenter.arm.com/.
  207. </p>
  208. <a name="index-STM32L4xx-erratum-workaround"></a>
  209. <a name="index-_002d_002dfix_002dstm32l4xx_002d629360"></a>
  210. <p>The &lsquo;<samp>--fix-stm32l4xx-629360</samp>&rsquo; switch enables a link-time
  211. workaround for a bug in the bus matrix / memory controller for some of
  212. the STM32 Cortex-M4 based products (STM32L4xx). When accessing
  213. off-chip memory via the affected bus for bus reads of 9 words or more,
  214. the bus can generate corrupt data and/or abort. These are only
  215. core-initiated accesses (not DMA), and might affect any access:
  216. integer loads such as LDM, POP and floating-point loads such as VLDM,
  217. VPOP. Stores are not affected.
  218. </p>
  219. <p>The bug can be avoided by splitting memory accesses into the
  220. necessary chunks to keep bus reads below 8 words.
  221. </p>
  222. <p>The workaround is not enabled by default, this is equivalent to use
  223. &lsquo;<samp>--fix-stm32l4xx-629360=none</samp>&rsquo;. If you know you are using buggy
  224. STM32L4xx hardware, you can enable the workaround by specifying the
  225. linker option &lsquo;<samp>--fix-stm32l4xx-629360</samp>&rsquo;, or the equivalent
  226. &lsquo;<samp>--fix-stm32l4xx-629360=default</samp>&rsquo;.
  227. </p>
  228. <p>If the workaround is enabled, instructions are scanned for
  229. potentially-troublesome sequences, and a veneer is created for each
  230. such sequence which may trigger the erratum. The veneer consists in a
  231. replacement sequence emulating the behaviour of the original one and a
  232. branch back to the subsequent instruction. The original instruction is
  233. then replaced with a branch to the veneer.
  234. </p>
  235. <p>The workaround does not always preserve the memory access order for
  236. the LDMDB instruction, when the instruction loads the PC.
  237. </p>
  238. <p>The workaround is not able to handle problematic instructions when
  239. they are in the middle of an IT block, since a branch is not allowed
  240. there. In that case, the linker reports a warning and no replacement
  241. occurs.
  242. </p>
  243. <p>The workaround is not able to replace problematic instructions with a
  244. PC-relative branch instruction if the &lsquo;<samp>.text</samp>&rsquo; section is too
  245. large. In that case, when the branch that replaces the original code
  246. cannot be encoded, the linker reports a warning and no replacement
  247. occurs.
  248. </p>
  249. <a name="index-NO_005fENUM_005fSIZE_005fWARNING"></a>
  250. <a name="index-_002d_002dno_002denum_002dsize_002dwarning"></a>
  251. <p>The <samp>--no-enum-size-warning</samp> switch prevents the linker from
  252. warning when linking object files that specify incompatible EABI
  253. enumeration size attributes. For example, with this switch enabled,
  254. linking of an object file using 32-bit enumeration values with another
  255. using enumeration values fitted into the smallest possible space will
  256. not be diagnosed.
  257. </p>
  258. <a name="index-NO_005fWCHAR_005fSIZE_005fWARNING"></a>
  259. <a name="index-_002d_002dno_002dwchar_002dsize_002dwarning"></a>
  260. <p>The <samp>--no-wchar-size-warning</samp> switch prevents the linker from
  261. warning when linking object files that specify incompatible EABI
  262. <code>wchar_t</code> size attributes. For example, with this switch enabled,
  263. linking of an object file using 32-bit <code>wchar_t</code> values with another
  264. using 16-bit <code>wchar_t</code> values will not be diagnosed.
  265. </p>
  266. <a name="index-PIC_005fVENEER"></a>
  267. <a name="index-_002d_002dpic_002dveneer"></a>
  268. <p>The &lsquo;<samp>--pic-veneer</samp>&rsquo; switch makes the linker use PIC sequences for
  269. ARM/Thumb interworking veneers, even if the rest of the binary
  270. is not PIC. This avoids problems on uClinux targets where
  271. &lsquo;<samp>--emit-relocs</samp>&rsquo; is used to generate relocatable binaries.
  272. </p>
  273. <a name="index-STUB_005fGROUP_005fSIZE"></a>
  274. <a name="index-_002d_002dstub_002dgroup_002dsize_003dN"></a>
  275. <p>The linker will automatically generate and insert small sequences of
  276. code into a linked ARM ELF executable whenever an attempt is made to
  277. perform a function call to a symbol that is too far away. The
  278. placement of these sequences of instructions - called stubs - is
  279. controlled by the command line option <samp>--stub-group-size=N</samp>.
  280. The placement is important because a poor choice can create a need for
  281. duplicate stubs, increasing the code size. The linker will try to
  282. group stubs together in order to reduce interruptions to the flow of
  283. code, but it needs guidance as to how big these groups should be and
  284. where they should be placed.
  285. </p>
  286. <p>The value of &lsquo;<samp>N</samp>&rsquo;, the parameter to the
  287. <samp>--stub-group-size=</samp> option controls where the stub groups are
  288. placed. If it is negative then all stubs are placed after the first
  289. branch that needs them. If it is positive then the stubs can be
  290. placed either before or after the branches that need them. If the
  291. value of &lsquo;<samp>N</samp>&rsquo; is 1 (either +1 or -1) then the linker will choose
  292. exactly where to place groups of stubs, using its built in heuristics.
  293. A value of &lsquo;<samp>N</samp>&rsquo; greater than 1 (or smaller than -1) tells the
  294. linker that a single group of stubs can service at most &lsquo;<samp>N</samp>&rsquo; bytes
  295. from the input sections.
  296. </p>
  297. <p>The default, if <samp>--stub-group-size=</samp> is not specified, is
  298. &lsquo;<samp>N = +1</samp>&rsquo;.
  299. </p>
  300. <p>Farcalls stubs insertion is fully supported for the ARM-EABI target
  301. only, because it relies on object files properties not present
  302. otherwise.
  303. </p>
  304. <a name="index-Cortex_002dA8-erratum-workaround"></a>
  305. <a name="index-_002d_002dfix_002dcortex_002da8"></a>
  306. <a name="index-_002d_002dno_002dfix_002dcortex_002da8"></a>
  307. <p>The &lsquo;<samp>--fix-cortex-a8</samp>&rsquo; switch enables a link-time workaround for an erratum in certain Cortex-A8 processors. The workaround is enabled by default if you are targeting the ARM v7-A architecture profile. It can be enabled otherwise by specifying &lsquo;<samp>--fix-cortex-a8</samp>&rsquo;, or disabled unconditionally by specifying &lsquo;<samp>--no-fix-cortex-a8</samp>&rsquo;.
  308. </p>
  309. <p>The erratum only affects Thumb-2 code. Please contact ARM for further details.
  310. </p>
  311. <a name="index-Cortex_002dA53-erratum-835769-workaround"></a>
  312. <a name="index-_002d_002dfix_002dcortex_002da53_002d835769"></a>
  313. <a name="index-_002d_002dno_002dfix_002dcortex_002da53_002d835769"></a>
  314. <p>The &lsquo;<samp>--fix-cortex-a53-835769</samp>&rsquo; switch enables a link-time workaround for erratum 835769 present on certain early revisions of Cortex-A53 processors. The workaround is disabled by default. It can be enabled by specifying &lsquo;<samp>--fix-cortex-a53-835769</samp>&rsquo;, or disabled unconditionally by specifying &lsquo;<samp>--no-fix-cortex-a53-835769</samp>&rsquo;.
  315. </p>
  316. <p>Please contact ARM for further details.
  317. </p>
  318. <a name="index-_002d_002dmerge_002dexidx_002dentries"></a>
  319. <a name="index-_002d_002dno_002dmerge_002dexidx_002dentries-1"></a>
  320. <a name="index-Merging-exidx-entries"></a>
  321. <p>The &lsquo;<samp>--no-merge-exidx-entries</samp>&rsquo; switch disables the merging of adjacent exidx entries in debuginfo.
  322. </p>
  323. <a name="index-_002d_002dlong_002dplt"></a>
  324. <a name="index-32_002dbit-PLT-entries"></a>
  325. <p>The &lsquo;<samp>--long-plt</samp>&rsquo; option enables the use of 16 byte PLT entries
  326. which support up to 4Gb of code. The default is to use 12 byte PLT
  327. entries which only support 512Mb of code.
  328. </p>
  329. <a name="index-_002d_002dno_002dapply_002ddynamic_002drelocs"></a>
  330. <a name="index-AArch64-rela-addend"></a>
  331. <p>The &lsquo;<samp>--no-apply-dynamic-relocs</samp>&rsquo; option makes AArch64 linker do not apply
  332. link-time values for dynamic relocations.
  333. </p>
  334. <a name="index-Placement-of-SG-veneers"></a>
  335. <p>All SG veneers are placed in the special output section <code>.gnu.sgstubs</code>.
  336. Its start address must be set, either with the command line option
  337. &lsquo;<samp>--section-start</samp>&rsquo; or in a linker script, to indicate where to place these
  338. veneers in memory.
  339. </p>
  340. <a name="index-_002d_002dcmse_002dimplib"></a>
  341. <a name="index-Secure-gateway-import-library"></a>
  342. <p>The &lsquo;<samp>--cmse-implib</samp>&rsquo; option requests that the import libraries
  343. specified by the &lsquo;<samp>--out-implib</samp>&rsquo; and &lsquo;<samp>--in-implib</samp>&rsquo; options are
  344. secure gateway import libraries, suitable for linking a non-secure
  345. executable against secure code as per ARMv8-M Security Extensions.
  346. </p>
  347. <a name="index-_002d_002din_002dimplib_003dfile"></a>
  348. <a name="index-Input-import-library"></a>
  349. <p>The &lsquo;<samp>--in-implib=file</samp>&rsquo; specifies an input import library whose symbols
  350. must keep the same address in the executable being produced. A warning is
  351. given if no &lsquo;<samp>--out-implib</samp>&rsquo; is given but new symbols have been introduced
  352. in the executable that should be listed in its import library. Otherwise, if
  353. &lsquo;<samp>--out-implib</samp>&rsquo; is specified, the symbols are added to the output import
  354. library. A warning is also given if some symbols present in the input import
  355. library have disappeared from the executable. This option is only effective
  356. for Secure Gateway import libraries, ie. when &lsquo;<samp>--cmse-implib</samp>&rsquo; is
  357. specified.
  358. </p>
  359. <hr>
  360. <div class="header">
  361. <p>
  362. Next: <a href="HPPA-ELF32.html#HPPA-ELF32" accesskey="n" rel="next">HPPA ELF32</a>, Previous: <a href="M68HC11_002f68HC12.html#M68HC11_002f68HC12" accesskey="p" rel="prev">M68HC11/68HC12</a>, Up: <a href="Machine-Dependent.html#Machine-Dependent" accesskey="u" rel="up">Machine Dependent</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>
  363. </div>
  364. </body>
  365. </html>