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