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 Assembler "as".
4
5Copyright (C) 1991-2021 Free Software Foundation, Inc.
6
7Permission is granted to copy, distribute and/or modify this document
8under the terms of the GNU Free Documentation License, Version 1.3
9or any later version published by the Free Software Foundation;
10with no Invariant Sections, with no Front-Cover Texts, and with no
11Back-Cover Texts.  A copy of the license is included in the
12section entitled "GNU Free Documentation License".
13 -->
14<!-- Created by GNU Texinfo 5.1, http://www.gnu.org/software/texinfo/ -->
15<head>
16<title>Using as: ARM Directives</title>
17
18<meta name="description" content="Using as: ARM Directives">
19<meta name="keywords" content="Using as: ARM Directives">
20<meta name="resource-type" content="document">
21<meta name="distribution" content="global">
22<meta name="Generator" content="makeinfo">
23<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
24<link href="index.html#Top" rel="start" title="Top">
25<link href="AS-Index.html#AS-Index" rel="index" title="AS Index">
26<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
27<link href="ARM_002dDependent.html#ARM_002dDependent" rel="up" title="ARM-Dependent">
28<link href="ARM-Opcodes.html#ARM-Opcodes" rel="next" title="ARM Opcodes">
29<link href="ARM-Floating-Point.html#ARM-Floating-Point" rel="previous" title="ARM Floating Point">
30<style type="text/css">
31<!--
32a.summary-letter {text-decoration: none}
33blockquote.smallquotation {font-size: smaller}
34div.display {margin-left: 3.2em}
35div.example {margin-left: 3.2em}
36div.indentedblock {margin-left: 3.2em}
37div.lisp {margin-left: 3.2em}
38div.smalldisplay {margin-left: 3.2em}
39div.smallexample {margin-left: 3.2em}
40div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
41div.smalllisp {margin-left: 3.2em}
42kbd {font-style:oblique}
43pre.display {font-family: inherit}
44pre.format {font-family: inherit}
45pre.menu-comment {font-family: serif}
46pre.menu-preformatted {font-family: serif}
47pre.smalldisplay {font-family: inherit; font-size: smaller}
48pre.smallexample {font-size: smaller}
49pre.smallformat {font-family: inherit; font-size: smaller}
50pre.smalllisp {font-size: smaller}
51span.nocodebreak {white-space:nowrap}
52span.nolinebreak {white-space:nowrap}
53span.roman {font-family:serif; font-weight:normal}
54span.sansserif {font-family:sans-serif; font-weight:normal}
55ul.no-bullet {list-style: none}
56-->
57</style>
58
59
60</head>
61
62<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
63<a name="ARM-Directives"></a>
64<div class="header">
65<p>
66Next: <a href="ARM-Opcodes.html#ARM-Opcodes" accesskey="n" rel="next">ARM Opcodes</a>, Previous: <a href="ARM-Floating-Point.html#ARM-Floating-Point" accesskey="p" rel="previous">ARM Floating Point</a>, Up: <a href="ARM_002dDependent.html#ARM_002dDependent" accesskey="u" rel="up">ARM-Dependent</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="AS-Index.html#AS-Index" title="Index" rel="index">Index</a>]</p>
67</div>
68<hr>
69<a name="ARM-Machine-Directives"></a>
70<h4 class="subsection">9.4.4 ARM Machine Directives</h4>
71
72<a name="index-machine-directives_002c-ARM"></a>
73<a name="index-ARM-machine-directives"></a>
74<dl compact="compact">
75<dd>
76
77
78<a name="index-_002ealign-directive_002c-ARM"></a>
79</dd>
80<dt><code>.align <var>expression</var> [, <var>expression</var>]</code></dt>
81<dd><p>This is the generic <var>.align</var> directive.  For the ARM however if the
82first argument is zero (ie no alignment is needed) the assembler will
83behave as if the argument had been 2 (ie pad to the next four byte
84boundary).  This is for compatibility with ARM&rsquo;s own assembler.
85</p>
86<a name="index-_002earch-directive_002c-ARM"></a>
87</dd>
88<dt><code>.arch <var>name</var></code></dt>
89<dd><p>Select the target architecture.  Valid values for <var>name</var> are the same as
90for the <samp>-march</samp> command-line option without the instruction set
91extension.
92</p>
93<p>Specifying <code>.arch</code> clears any previously selected architecture
94extensions.
95</p>
96<a name="index-_002earch_005fextension-directive_002c-ARM"></a>
97</dd>
98<dt><code>.arch_extension <var>name</var></code></dt>
99<dd><p>Add or remove an architecture extension to the target architecture.  Valid
100values for <var>name</var> are the same as those accepted as architectural
101extensions by the <samp>-mcpu</samp> and <samp>-march</samp> command-line options.
102</p>
103<p><code>.arch_extension</code> may be used multiple times to add or remove extensions
104incrementally to the architecture being compiled for.
105</p>
106<a name="index-_002earm-directive_002c-ARM"></a>
107</dd>
108<dt><code>.arm</code></dt>
109<dd><p>This performs the same action as <var>.code 32</var>.
110</p>
111
112<a name="index-_002ebss-directive_002c-ARM"></a>
113</dd>
114<dt><code>.bss</code></dt>
115<dd><p>This directive switches to the <code>.bss</code> section.
116</p>
117
118<a name="index-_002ecantunwind-directive_002c-ARM"></a>
119</dd>
120<dt><code>.cantunwind</code></dt>
121<dd><p>Prevents unwinding through the current function.  No personality routine
122or exception table data is required or permitted.
123</p>
124<a name="index-_002ecode-directive_002c-ARM"></a>
125</dd>
126<dt><code>.code <code>[16|32]</code></code></dt>
127<dd><p>This directive selects the instruction set being generated. The value 16
128selects Thumb, with the value 32 selecting ARM.
129</p>
130<a name="index-_002ecpu-directive_002c-ARM"></a>
131</dd>
132<dt><code>.cpu <var>name</var></code></dt>
133<dd><p>Select the target processor.  Valid values for <var>name</var> are the same as
134for the <samp>-mcpu</samp> command-line option without the instruction set
135extension.
136</p>
137<p>Specifying <code>.cpu</code> clears any previously selected architecture
138extensions.
139</p>
140
141<a name="index-_002edn-and-_002eqn-directives_002c-ARM"></a>
142</dd>
143<dt><code><var>name</var> .dn <var>register name</var> [<var>.type</var>] [[<var>index</var>]]</code></dt>
144<dt><code><var>name</var> .qn <var>register name</var> [<var>.type</var>] [[<var>index</var>]]</code></dt>
145<dd>
146<p>The <code>dn</code> and <code>qn</code> directives are used to create typed
147and/or indexed register aliases for use in Advanced SIMD Extension
148(Neon) instructions.  The former should be used to create aliases
149of double-precision registers, and the latter to create aliases of
150quad-precision registers.
151</p>
152<p>If these directives are used to create typed aliases, those aliases can
153be used in Neon instructions instead of writing types after the mnemonic
154or after each operand.  For example:
155</p>
156<div class="smallexample">
157<pre class="smallexample">        x .dn d2.f32
158        y .dn d3.f32
159        z .dn d4.f32[1]
160        vmul x,y,z
161</pre></div>
162
163<p>This is equivalent to writing the following:
164</p>
165<div class="smallexample">
166<pre class="smallexample">        vmul.f32 d2,d3,d4[1]
167</pre></div>
168
169<p>Aliases created using <code>dn</code> or <code>qn</code> can be destroyed using
170<code>unreq</code>.
171</p>
172
173<a name="index-_002eeabi_005fattribute-directive_002c-ARM"></a>
174</dd>
175<dt><code>.eabi_attribute <var>tag</var>, <var>value</var></code></dt>
176<dd><p>Set the EABI object attribute <var>tag</var> to <var>value</var>.
177</p>
178<p>The <var>tag</var> is either an attribute number, or one of the following:
179<code>Tag_CPU_raw_name</code>, <code>Tag_CPU_name</code>, <code>Tag_CPU_arch</code>,
180<code>Tag_CPU_arch_profile</code>, <code>Tag_ARM_ISA_use</code>,
181<code>Tag_THUMB_ISA_use</code>, <code>Tag_FP_arch</code>, <code>Tag_WMMX_arch</code>,
182<code>Tag_Advanced_SIMD_arch</code>, <code>Tag_MVE_arch</code>, <code>Tag_PCS_config</code>,
183<code>Tag_ABI_PCS_R9_use</code>, <code>Tag_ABI_PCS_RW_data</code>,
184<code>Tag_ABI_PCS_RO_data</code>, <code>Tag_ABI_PCS_GOT_use</code>,
185<code>Tag_ABI_PCS_wchar_t</code>, <code>Tag_ABI_FP_rounding</code>,
186<code>Tag_ABI_FP_denormal</code>, <code>Tag_ABI_FP_exceptions</code>,
187<code>Tag_ABI_FP_user_exceptions</code>, <code>Tag_ABI_FP_number_model</code>,
188<code>Tag_ABI_align_needed</code>, <code>Tag_ABI_align_preserved</code>,
189<code>Tag_ABI_enum_size</code>, <code>Tag_ABI_HardFP_use</code>,
190<code>Tag_ABI_VFP_args</code>, <code>Tag_ABI_WMMX_args</code>,
191<code>Tag_ABI_optimization_goals</code>, <code>Tag_ABI_FP_optimization_goals</code>,
192<code>Tag_compatibility</code>, <code>Tag_CPU_unaligned_access</code>,
193<code>Tag_FP_HP_extension</code>, <code>Tag_ABI_FP_16bit_format</code>,
194<code>Tag_MPextension_use</code>, <code>Tag_DIV_use</code>,
195<code>Tag_nodefaults</code>, <code>Tag_also_compatible_with</code>,
196<code>Tag_conformance</code>, <code>Tag_T2EE_use</code>,
197<code>Tag_Virtualization_use</code>
198</p>
199<p>The <var>value</var> is either a <code>number</code>, <code>&quot;string&quot;</code>, or
200<code>number, &quot;string&quot;</code> depending on the tag.
201</p>
202<p>Note - the following legacy values are also accepted by <var>tag</var>:
203<code>Tag_VFP_arch</code>, <code>Tag_ABI_align8_needed</code>,
204<code>Tag_ABI_align8_preserved</code>, <code>Tag_VFP_HP_extension</code>,
205</p>
206<a name="index-_002eeven-directive_002c-ARM"></a>
207</dd>
208<dt><code>.even</code></dt>
209<dd><p>This directive aligns to an even-numbered address.
210</p>
211<a name="index-_002eextend-directive_002c-ARM"></a>
212<a name="index-_002eldouble-directive_002c-ARM"></a>
213</dd>
214<dt><code>.extend  <var>expression</var> [, <var>expression</var>]*</code></dt>
215<dt><code>.ldouble  <var>expression</var> [, <var>expression</var>]*</code></dt>
216<dd><p>These directives write 12byte long double floating-point values to the
217output section.  These are not compatible with current ARM processors
218or ABIs.
219</p>
220
221<a name="index-_002efloat16-directive_002c-ARM"></a>
222</dd>
223<dt><code>.float16 <var>value [,...,value_n]</var></code></dt>
224<dd><p>Place the half precision floating point representation of one or more
225floating-point values into the current section. The exact format of the
226encoding is specified by <code>.float16_format</code>. If the format has not
227been explicitly set yet (either via the <code>.float16_format</code> directive or
228the command line option) then the IEEE 754-2008 format is used.
229</p>
230<a name="index-_002efloat16_005fformat-directive_002c-ARM"></a>
231</dd>
232<dt><code>.float16_format <var>format</var></code></dt>
233<dd><p>Set the format to use when encoding float16 values emitted by
234the <code>.float16</code> directive.
235Once the format has been set it cannot be changed.
236<code>format</code> should be one of the following: <code>ieee</code> (encode in
237the IEEE 754-2008 half precision format) or <code>alternative</code> (encode in
238the Arm alternative half precision format).
239</p>
240<a name="arm_005ffnend"></a><a name="index-_002efnend-directive_002c-ARM"></a>
241</dd>
242<dt><code>.fnend</code></dt>
243<dd><p>Marks the end of a function with an unwind table entry.  The unwind index
244table entry is created when this directive is processed.
245</p>
246<p>If no personality routine has been specified then standard personality
247routine 0 or 1 will be used, depending on the number of unwind opcodes
248required.
249</p>
250<a name="arm_005ffnstart"></a><a name="index-_002efnstart-directive_002c-ARM"></a>
251</dd>
252<dt><code>.fnstart</code></dt>
253<dd><p>Marks the start of a function with an unwind table entry.
254</p>
255<a name="index-_002eforce_005fthumb-directive_002c-ARM"></a>
256</dd>
257<dt><code>.force_thumb</code></dt>
258<dd><p>This directive forces the selection of Thumb instructions, even if the
259target processor does not support those instructions
260</p>
261<a name="index-_002efpu-directive_002c-ARM"></a>
262</dd>
263<dt><code>.fpu <var>name</var></code></dt>
264<dd><p>Select the floating-point unit to assemble for.  Valid values for <var>name</var>
265are the same as for the <samp>-mfpu</samp> command-line option.
266</p>
267
268<a name="index-_002ehandlerdata-directive_002c-ARM"></a>
269</dd>
270<dt><code>.handlerdata</code></dt>
271<dd><p>Marks the end of the current function, and the start of the exception table
272entry for that function.  Anything between this directive and the
273<code>.fnend</code> directive will be added to the exception table entry.
274</p>
275<p>Must be preceded by a <code>.personality</code> or <code>.personalityindex</code>
276directive.
277</p>
278
279<a name="index-_002einst-directive_002c-ARM"></a>
280</dd>
281<dt><code>.inst <var>opcode</var> [ , &hellip; ]</code></dt>
282<dt><code>.inst.n <var>opcode</var> [ , &hellip; ]</code></dt>
283<dt><code>.inst.w <var>opcode</var> [ , &hellip; ]</code></dt>
284<dd><p>Generates the instruction corresponding to the numerical value <var>opcode</var>.
285<code>.inst.n</code> and <code>.inst.w</code> allow the Thumb instruction size to be
286specified explicitly, overriding the normal encoding rules.
287</p>
288
289</dd>
290<dt><code>.ldouble  <var>expression</var> [, <var>expression</var>]*</code></dt>
291<dd><p>See <code>.extend</code>.
292</p>
293<a name="index-_002eltorg-directive_002c-ARM"></a>
294</dd>
295<dt><code>.ltorg</code></dt>
296<dd><p>This directive causes the current contents of the literal pool to be
297dumped into the current section (which is assumed to be the .text
298section) at the current location (aligned to a word boundary).
299<code>GAS</code> maintains a separate literal pool for each section and each
300sub-section.  The <code>.ltorg</code> directive will only affect the literal
301pool of the current section and sub-section.  At the end of assembly
302all remaining, un-empty literal pools will automatically be dumped.
303</p>
304<p>Note - older versions of <code>GAS</code> would dump the current literal
305pool any time a section change occurred.  This is no longer done, since
306it prevents accurate control of the placement of literal pools.
307</p>
308
309<a name="index-_002emovsp-directive_002c-ARM"></a>
310</dd>
311<dt><code>.movsp <var>reg</var> [, #<var>offset</var>]</code></dt>
312<dd><p>Tell the unwinder that <var>reg</var> contains an offset from the current
313stack pointer.  If <var>offset</var> is not specified then it is assumed to be
314zero.
315</p>
316
317<a name="index-_002eobject_005farch-directive_002c-ARM"></a>
318</dd>
319<dt><code>.object_arch <var>name</var></code></dt>
320<dd><p>Override the architecture recorded in the EABI object attribute section.
321Valid values for <var>name</var> are the same as for the <code>.arch</code> directive.
322Typically this is useful when code uses runtime detection of CPU features.
323</p>
324
325<a name="index-_002epacked-directive_002c-ARM"></a>
326</dd>
327<dt><code>.packed  <var>expression</var> [, <var>expression</var>]*</code></dt>
328<dd><p>This directive writes 12-byte packed floating-point values to the
329output section.  These are not compatible with current ARM processors
330or ABIs.
331</p>
332<a name="arm_005fpad"></a><a name="index-_002epad-directive_002c-ARM"></a>
333</dd>
334<dt><code>.pad #<var>count</var></code></dt>
335<dd><p>Generate unwinder annotations for a stack adjustment of <var>count</var> bytes.
336A positive value indicates the function prologue allocated stack space by
337decrementing the stack pointer.
338</p>
339<a name="index-_002epersonality-directive_002c-ARM"></a>
340</dd>
341<dt><code>.personality <var>name</var></code></dt>
342<dd><p>Sets the personality routine for the current function to <var>name</var>.
343</p>
344<a name="index-_002epersonalityindex-directive_002c-ARM"></a>
345</dd>
346<dt><code>.personalityindex <var>index</var></code></dt>
347<dd><p>Sets the personality routine for the current function to the EABI standard
348routine number <var>index</var>
349</p>
350<a name="index-_002epool-directive_002c-ARM"></a>
351</dd>
352<dt><code>.pool</code></dt>
353<dd><p>This is a synonym for .ltorg.
354</p>
355
356<a name="index-_002ereq-directive_002c-ARM"></a>
357</dd>
358<dt><code><var>name</var> .req <var>register name</var></code></dt>
359<dd><p>This creates an alias for <var>register name</var> called <var>name</var>.  For
360example:
361</p>
362<div class="smallexample">
363<pre class="smallexample">        foo .req r0
364</pre></div>
365
366
367<a name="arm_005fsave"></a><a name="index-_002esave-directive_002c-ARM"></a>
368</dd>
369<dt><code>.save <var>reglist</var></code></dt>
370<dd><p>Generate unwinder annotations to restore the registers in <var>reglist</var>.
371The format of <var>reglist</var> is the same as the corresponding store-multiple
372instruction.
373</p>
374<div class="smallexample">
375<pre class="smallexample"><em>core registers</em>
376</pre><pre class="smallexample">  .save {r4, r5, r6, lr}
377  stmfd sp!, {r4, r5, r6, lr}
378</pre><pre class="smallexample"><em>FPA registers</em>
379</pre><pre class="smallexample">  .save f4, 2
380  sfmfd f4, 2, [sp]!
381</pre><pre class="smallexample"><em>VFP registers</em>
382</pre><pre class="smallexample">  .save {d8, d9, d10}
383  fstmdx sp!, {d8, d9, d10}
384</pre><pre class="smallexample"><em>iWMMXt registers</em>
385</pre><pre class="smallexample">  .save {wr10, wr11}
386  wstrd wr11, [sp, #-8]!
387  wstrd wr10, [sp, #-8]!
388or
389  .save wr11
390  wstrd wr11, [sp, #-8]!
391  .save wr10
392  wstrd wr10, [sp, #-8]!
393</pre></div>
394
395<a name="arm_005fsetfp"></a><a name="index-_002esetfp-directive_002c-ARM"></a>
396</dd>
397<dt><code>.setfp <var>fpreg</var>, <var>spreg</var> [, #<var>offset</var>]</code></dt>
398<dd><p>Make all unwinder annotations relative to a frame pointer.  Without this
399the unwinder will use offsets from the stack pointer.
400</p>
401<p>The syntax of this directive is the same as the <code>add</code> or <code>mov</code>
402instruction used to set the frame pointer.  <var>spreg</var> must be either
403<code>sp</code> or mentioned in a previous <code>.movsp</code> directive.
404</p>
405<div class="smallexample">
406<pre class="smallexample">.movsp ip
407mov ip, sp
408&hellip;
409.setfp fp, ip, #4
410add fp, ip, #4
411</pre></div>
412
413<a name="index-_002esecrel32-directive_002c-ARM"></a>
414</dd>
415<dt><code>.secrel32 <var>expression</var> [, <var>expression</var>]*</code></dt>
416<dd><p>This directive emits relocations that evaluate to the section-relative
417offset of each expression&rsquo;s symbol.  This directive is only supported
418for PE targets.
419</p>
420<a name="index-_002esyntax-directive_002c-ARM"></a>
421</dd>
422<dt><code>.syntax [<code>unified</code> | <code>divided</code>]</code></dt>
423<dd><p>This directive sets the Instruction Set Syntax as described in the
424<a href="ARM_002dInstruction_002dSet.html#ARM_002dInstruction_002dSet">ARM-Instruction-Set</a> section.
425</p>
426
427<a name="index-_002ethumb-directive_002c-ARM"></a>
428</dd>
429<dt><code>.thumb</code></dt>
430<dd><p>This performs the same action as <var>.code 16</var>.
431</p>
432<a name="index-_002ethumb_005ffunc-directive_002c-ARM"></a>
433</dd>
434<dt><code>.thumb_func</code></dt>
435<dd><p>This directive specifies that the following symbol is the name of a
436Thumb encoded function.  This information is necessary in order to allow
437the assembler and linker to generate correct code for interworking
438between Arm and Thumb instructions and should be used even if
439interworking is not going to be performed.  The presence of this
440directive also implies <code>.thumb</code>
441</p>
442<p>This directive is not necessary when generating EABI objects.  On these
443targets the encoding is implicit when generating Thumb code.
444</p>
445<a name="index-_002ethumb_005fset-directive_002c-ARM"></a>
446</dd>
447<dt><code>.thumb_set</code></dt>
448<dd><p>This performs the equivalent of a <code>.set</code> directive in that it
449creates a symbol which is an alias for another symbol (possibly not yet
450defined).  This directive also has the added property in that it marks
451the aliased symbol as being a thumb function entry point, in the same
452way that the <code>.thumb_func</code> directive does.
453</p>
454<a name="index-_002etlsdescseq-directive_002c-ARM"></a>
455</dd>
456<dt><code>.tlsdescseq <var>tls-variable</var></code></dt>
457<dd><p>This directive is used to annotate parts of an inlined TLS descriptor
458trampoline.  Normally the trampoline is provided by the linker, and
459this directive is not needed.
460</p>
461
462<a name="index-_002eunreq-directive_002c-ARM"></a>
463</dd>
464<dt><code>.unreq <var>alias-name</var></code></dt>
465<dd><p>This undefines a register alias which was previously defined using the
466<code>req</code>, <code>dn</code> or <code>qn</code> directives.  For example:
467</p>
468<div class="smallexample">
469<pre class="smallexample">        foo .req r0
470        .unreq foo
471</pre></div>
472
473<p>An error occurs if the name is undefined.  Note - this pseudo op can
474be used to delete builtin in register name aliases (eg &rsquo;r0&rsquo;).  This
475should only be done if it is really necessary.
476</p>
477<a name="index-_002eunwind_005fraw-directive_002c-ARM"></a>
478</dd>
479<dt><code>.unwind_raw <var>offset</var>, <var>byte1</var>, &hellip;</code></dt>
480<dd><p>Insert one of more arbitrary unwind opcode bytes, which are known to adjust
481the stack pointer by <var>offset</var> bytes.
482</p>
483<p>For example <code>.unwind_raw 4, 0xb1, 0x01</code> is equivalent to
484<code>.save {r0}</code>
485</p>
486
487<a name="index-_002evsave-directive_002c-ARM"></a>
488</dd>
489<dt><code>.vsave <var>vfp-reglist</var></code></dt>
490<dd><p>Generate unwinder annotations to restore the VFP registers in <var>vfp-reglist</var>
491using FLDMD.  Also works for VFPv3 registers
492that are to be restored using VLDM.
493The format of <var>vfp-reglist</var> is the same as the corresponding store-multiple
494instruction.
495</p>
496<div class="smallexample">
497<pre class="smallexample"><em>VFP registers</em>
498</pre><pre class="smallexample">  .vsave {d8, d9, d10}
499  fstmdd sp!, {d8, d9, d10}
500</pre><pre class="smallexample"><em>VFPv3 registers</em>
501</pre><pre class="smallexample">  .vsave {d15, d16, d17}
502  vstm sp!, {d15, d16, d17}
503</pre></div>
504
505<p>Since FLDMX and FSTMX are now deprecated, this directive should be
506used in favour of <code>.save</code> for saving VFP registers for ARMv6 and above.
507</p>
508
509</dd>
510</dl>
511
512<hr>
513<div class="header">
514<p>
515Next: <a href="ARM-Opcodes.html#ARM-Opcodes" accesskey="n" rel="next">ARM Opcodes</a>, Previous: <a href="ARM-Floating-Point.html#ARM-Floating-Point" accesskey="p" rel="previous">ARM Floating Point</a>, Up: <a href="ARM_002dDependent.html#ARM_002dDependent" accesskey="u" rel="up">ARM-Dependent</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="AS-Index.html#AS-Index" title="Index" rel="index">Index</a>]</p>
516</div>
517
518
519
520</body>
521</html>
522