]>
Commit | Line | Data |
---|---|---|
250d07de | 1 | @c Copyright (C) 2009-2021 Free Software Foundation, Inc. |
d31eb57c AM |
2 | @c This is part of the GAS manual. |
3 | @c For copying conditions, see the file as.texinfo. | |
4 | @ifset GENERIC | |
5 | @page | |
6 | @node MicroBlaze-Dependent | |
7 | @chapter MicroBlaze Dependent Features | |
8 | @end ifset | |
9 | @ifclear GENERIC | |
10 | @node Machine Dependencies | |
11 | @chapter MicroBlaze Dependent Features | |
12 | @end ifclear | |
13 | ||
14 | @cindex MicroBlaze architectures | |
34bca508 L |
15 | The Xilinx MicroBlaze processor family includes several variants, all using |
16 | the same core instruction set. This chapter covers features of the @sc{gnu} | |
17 | assembler that are specific to the MicroBlaze architecture. For details about | |
d31eb57c AM |
18 | the MicroBlaze instruction set, please see the @cite{MicroBlaze Processor |
19 | Reference Guide (UG081)} available at www.xilinx.com. | |
20 | ||
21 | @cindex MicroBlaze support | |
22 | @menu | |
23 | * MicroBlaze Directives:: Directives for MicroBlaze Processors. | |
7c31ae13 | 24 | * MicroBlaze Syntax:: Syntax for the MicroBlaze |
d31eb57c AM |
25 | @end menu |
26 | ||
27 | @node MicroBlaze Directives | |
28 | @section Directives | |
34bca508 L |
29 | @cindex MicroBlaze directives |
30 | A number of assembler directives are available for MicroBlaze. | |
d31eb57c AM |
31 | |
32 | @table @code | |
33 | @item .data8 @var{expression},... | |
34bca508 | 34 | This directive is an alias for @code{.byte}. Each expression is assembled |
d31eb57c AM |
35 | into an eight-bit value. |
36 | ||
37 | @item .data16 @var{expression},... | |
34bca508 | 38 | This directive is an alias for @code{.hword}. Each expression is assembled |
d31eb57c AM |
39 | into an 16-bit value. |
40 | ||
41 | @item .data32 @var{expression},... | |
34bca508 | 42 | This directive is an alias for @code{.word}. Each expression is assembled |
d31eb57c AM |
43 | into an 32-bit value. |
44 | ||
45 | @item .ent @var{name}[,@var{label}] | |
34bca508 L |
46 | This directive is an alias for @code{.func} denoting the start of function |
47 | @var{name} at (optional) @var{label}. | |
d31eb57c AM |
48 | |
49 | @item .end @var{name}[,@var{label}] | |
34bca508 | 50 | This directive is an alias for @code{.endfunc} denoting the end of function |
d31eb57c AM |
51 | @var{name}. |
52 | ||
53 | @item .gpword @var{label},... | |
54 | This directive is an alias for @code{.rva}. The resolved address of @var{label} | |
55 | is stored in the data section. | |
56 | ||
57 | @item .weakext @var{label} | |
58 | Declare that @var{label} is a weak external symbol. | |
59 | ||
60 | @item .rodata | |
61 | Switch to .rodata section. Equivalent to @code{.section .rodata} | |
62 | ||
63 | @item .sdata2 | |
64 | Switch to .sdata2 section. Equivalent to @code{.section .sdata2} | |
65 | ||
66 | @item .sdata | |
67 | Switch to .sdata section. Equivalent to @code{.section .sdata} | |
68 | ||
69 | @item .bss | |
70 | Switch to .bss section. Equivalent to @code{.section .bss} | |
71 | ||
72 | @item .sbss | |
73 | Switch to .sbss section. Equivalent to @code{.section .sbss} | |
74 | @end table | |
7c31ae13 NC |
75 | |
76 | @node MicroBlaze Syntax | |
77 | @section Syntax for the MicroBlaze | |
78 | @menu | |
79 | * MicroBlaze-Chars:: Special Characters | |
80 | @end menu | |
81 | ||
82 | @node MicroBlaze-Chars | |
83 | @subsection Special Characters | |
84 | ||
85 | @cindex line comment character, MicroBlaze | |
86 | @cindex MicroBlaze line comment character | |
87 | The presence of a @samp{#} on a line indicates the start of a comment | |
88 | that extends to the end of the current line. | |
89 | ||
90 | If a @samp{#} appears as the first character of a line, the whole line | |
91 | is treated as a comment, but in this case the line can also be a | |
92 | logical line number directive (@pxref{Comments}) or a | |
93 | preprocessor control command (@pxref{Preprocessing}). | |
94 | ||
95 | @cindex line separator, MicroBlaze | |
96 | @cindex statement separator, MicroBlaze | |
97 | @cindex MicroBlaze line separator | |
98 | The @samp{;} character can be used to separate statements on the same | |
99 | line. |