OpenCores
URL https://opencores.org/ocsvn/open8_urisc/open8_urisc/trunk

Subversion Repositories open8_urisc

[/] [open8_urisc/] [trunk/] [gnu/] [binutils/] [gas/] [doc/] [c-rl78.texi] - Blame information for rev 299

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 179 jshamlet
@c Copyright 2011
2
@c Free Software Foundation, Inc.
3
@c This is part of the GAS manual.
4
@c For copying conditions, see the file as.texinfo.
5
@ifset GENERIC
6
@page
7
@node RL78-Dependent
8
@chapter RL78 Dependent Features
9
@end ifset
10
@ifclear GENERIC
11
@node Machine Dependencies
12
@chapter RL78 Dependent Features
13
@end ifclear
14
 
15
@cindex RL78 support
16
@menu
17
* RL78-Opts::                   RL78 Assembler Command Line Options
18
* RL78-Modifiers::              Symbolic Operand Modifiers
19
* RL78-Directives::             Assembler Directives
20
* RL78-Syntax::                 Syntax
21
@end menu
22
 
23
@node RL78-Opts
24
@section RL78 Options
25
@cindex options, RL78
26
@cindex RL78 options
27
 
28
The Renesas RL78 port of @code{@value{AS}} has no target-specific
29
options.
30
 
31
@node RL78-Modifiers
32
@section Symbolic Operand Modifiers
33
 
34
@cindex RL78 modifiers
35
@cindex syntax, RL78
36
 
37
The RL78 has three modifiers that adjust the relocations used by the
38
linker:
39
 
40
@table @code
41
 
42
@item %lo16()
43
 
44
When loading a 20-bit (or wider) address into registers, this modifier
45
selects the 16 least significant bits.
46
 
47
@smallexample
48
  movw ax,#%lo16(_sym)
49
@end smallexample
50
 
51
@item %hi16()
52
 
53
When loading a 20-bit (or wider) address into registers, this modifier
54
selects the 16 most significant bits.
55
 
56
@smallexample
57
  movw ax,#%hi16(_sym)
58
@end smallexample
59
 
60
@item %hi8()
61
 
62
When loading a 20-bit (or wider) address into registers, this modifier
63
selects the 8 bits that would go into CS or ES (i.e. bits 23..16).
64
 
65
@smallexample
66
  mov es, #%hi8(_sym)
67
@end smallexample
68
 
69
@end table
70
 
71
@node RL78-Directives
72
@section Assembler Directives
73
 
74
@cindex assembler directives, RL78
75
@cindex RL78 assembler directives
76
 
77
In addition to the common directives, the RL78 adds these:
78
 
79
@table @code
80
 
81
@item .double
82
Output a constant in ``double'' format, which is a 32-bit floating
83
point value on RL78.
84
 
85
@item .bss
86
Select the BSS section.
87
 
88
@item .3byte
89
Output a constant value in a three byte format.
90
 
91
@item .int
92
@itemx .word
93
Output a constant value in a four byte format.
94
 
95
@end table
96
 
97
@node RL78-Syntax
98
@section Syntax for the RL78
99
@menu
100
* RL78-Chars::                Special Characters
101
@end menu
102
 
103
@node RL78-Chars
104
@subsection Special Characters
105
 
106
@cindex line comment character, RL78
107
@cindex RL78 line comment character
108
The presence of a @samp{;} appearing anywhere on a line indicates the
109
start of a comment that extends to the end of that line.
110
 
111
If a @samp{#} appears as the first character of a line then the whole
112
line is treated as a comment, but in this case the line can also be a
113
logical line number directive (@pxref{Comments}) or a preprocessor
114
control command (@pxref{Preprocessing}).
115
 
116
@cindex line separator, RL78
117
@cindex statement separator, RL78
118
@cindex RL78 line separator
119
The @samp{|} character can be used to separate statements on the same
120
line.

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.