aboutsummaryrefslogtreecommitdiff
path: root/gas/doc/c-score.texi
blob: 08201154aee9d9750d35211f7f9153e77224a745 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
@c Copyright 2009
@c Free Software Foundation, Inc.
@c This is part of the GAS manual.
@c For copying conditions, see the file as.texinfo.
@ifset GENERIC
@page
@node SCORE-Dependent
@chapter SCORE Dependent Features
@end ifset
@ifclear GENERIC
@node Machine Dependencies
@chapter SCORE Dependent Features
@end ifclear

@cindex SCORE processor
@menu
* SCORE-Opts::   	Assembler options
* SCORE-Pseudo::        SCORE Assembler Directives
@end menu

@node SCORE-Opts 
@section Options

@cindex options for SCORE
@cindex SCORE options
@cindex architectures, SCORE
@cindex SCORE architectures

The following table lists all available SCORE options.

@table @code
@item -G @var{num}
This option sets the largest size of an object that can be referenced
implicitly with the @code{gp} register. The default value is 8.

@item -EB
Assemble code for a big-endian cpu

@itemx -EL
Assemble code for a little-endian cpu

@item -FIXDD 
Assemble code for fix data dependency

@item -NWARN 
Assemble code for no warning message for fix data dependency

@item -SCORE5
Assemble code for target is SCORE5

@itemx -SCORE5U
Assemble code for target is SCORE5U

@itemx -SCORE7
Assemble code for target is SCORE7, this is default setting

@itemx -SCORE3
Assemble code for target is SCORE3

@item -march=score7
Assemble code for target is SCORE7, this is default setting

@item -march=score3
Assemble code for target is SCORE3

@item -USE_R1 
Assemble code for no warning message when using temp register r1

@item -KPIC
Generate code for PIC.  This option tells the assembler to generate
score position-independent macro expansions.  It also tells the
assembler to mark the output file as PIC.

@item -O0
Assembler will not perform any optimizations

@item -V 
Sunplus release version

@end table

@node SCORE-Pseudo
@section SCORE Assembler Directives

@cindex directives for SCORE
@cindex SCORE directives
A number of assembler directives are available for SCORE.  The
following table is far from complete.

@table @code
@item .set nwarn 
Let the assembler not to generate warnings if the source machine 
language instructions happen data dependency.

@item .set fixdd 
Let the assembler to insert bubbles (32 bit nop instruction / 
16 bit nop! Instruction) if the source machine language instructions 
happen data dependency.

@item .set nofixdd 
Let the assembler to generate warnings if the source machine 
language instructions happen data dependency. (Default)

@item .set r1
Let the assembler not to generate warnings if the source program 
uses r1. allow user to use r1 

@item set nor1
Let the assembler to generate warnings if the source program uses
r1. (Default)

@item .sdata
Tell the assembler to add subsequent data into the sdata section  

@item .rdata
Tell the assembler to add subsequent data into the rdata section

@item .frame "frame-register", "offset", "return-pc-register"
Describe a stack frame. "frame-register" is the frame register, 
"offset" is the distance from the frame register to the virtual 
frame pointer, "return-pc-register" is the return program register. 
You must use ".ent" before ".frame" and only one ".frame" can be 
used per ".ent". 

@item .mask "bitmask", "frameoffset"
Indicate which of the integer registers are saved in the current 
function's stack frame, this is for the debugger to explain the 
frame chain.

@item .ent "proc-name"
Set the beginning of the procedure "proc_name". Use this directive 
when you want to generate information for the debugger. 

@item .end proc-name
Set the end of a procedure. Use this directive to generate information 
for the debugger. 

@item .bss
Switch the destination of following statements into the bss section, 
which is used for data that is uninitialized anywhere.  

@end table