* elf32-ppc.c (ppc_elf_check_relocs): Set pointer_equality_needed
[binutils.git] / gas / testsuite / gas / sh / sh64 / syntax-1.s
blob0e5bc9f41881e8dfb8392cc228073fa34a7787bc
1 ! Verify that minimum support is provided as per SH-5/ST50-047-02.
3 .text
4 .mode shmedia
5 start:
7 ! Both all-upper and all-lower must be supported. PTA/PTB without /L
8 ! or /U is equivalent to with /L
10 ld.l r1,4,r1
11 LD.L r1,4,r1
12 pta/l .L1,tr0
13 PTA/L .L1,tr0
14 pta/u .L1,tr0
15 PTA/U .L1,tr0
16 pta/l .L1,tr0
17 PTA/L .L1,tr0
18 ptb/u .L2,tr0
19 PTB/U .L2,tr0
20 ptb/l .L2,tr0
21 PTB/L .L2,tr0
22 pta .L1,tr0
23 PTA .L1,tr0
24 ptb .L2,tr0
25 PTB .L2,tr0
26 .L1:
27 .mode shcompact
28 .L2:
29 .align 2
30 .mode shmedia
32 ! All register names accepted, either case.
34 or r0,r32,r63
35 GETCON CR0,R0
36 getcon cr63,r0
37 GETTR TR0,R0
38 gettr tr7,r0
39 FMOV.S FR0,FR63
40 fmov.d dr0,dr62
41 FTRV.S MTRX0,FV0,fv0
42 ftrv.s mtrx48,FV60,FV60
44 ! All control register names
46 getcon sr,r0
47 getcon ssr,r0
48 getcon pssr,r0
49 getcon intevt,r0
50 getcon expevt,r0
51 getcon pexpevt,r0
52 getcon tra,r0
53 getcon spc,r0
54 getcon pspc,r0
55 getcon resvec,r0
56 getcon vbr,r0
57 getcon tea,r0
58 getcon dcr,r0
59 getcon kcr0,r0
60 getcon kcr1,r0
61 getcon ctc,r0
62 getcon usr,r0
64 ! immediates
66 .mode shcompact
67 s1:
68 mov #4,r0
70 .align 2
71 .mode shmedia
72 s2:
73 movi 4,r0
75 ! Scaled operands - user gives scaled value
77 .mode shcompact
78 s3:
79 mov.l @(8,r0),r0
81 .align 2
82 .mode shmedia
83 s4:
84 ld.uw r0,2,r0
85 ld.w r0,2,r0
86 st.w r0,2,r0
87 ld.l r0,4,r0
88 st.l r0,4,r0
89 fld.s r0,4,fr0
90 fst.s r0,4,fr0
91 pta .+4,tr0
92 ptb .+7,tr0
93 ld.q r0,8,r0
94 st.q r0,8,r0
95 fld.d r0,8,dr0
96 fst.d r0,8,dr0
97 fld.p r0,8,fp0
98 fst.p r0,8,fp0
99 alloco r0,32
100 icbi r0,32
101 ocbi r0,32
102 ocbp r0,32
103 ocbwb r0,32
104 prefi r0,32
106 .mode shcompact
108 mov.w @(6,pc),r0
109 mov.w @(2,r0),r0
110 mov.w @(2,gbr),r0
111 mov.w r0,@(2,r0)
112 mov.w r0,@(2,gbr)
113 bf .+6
114 bt .+6
115 bra .+6
116 bsr .+6
117 mov.l @(4,pc),r0
118 mov.l @(4,r0),r0
119 mov.l @(4,gbr),r0
120 mova @(6,pc),r0
121 mov.l r0,@(4,r0)
122 mov.l r0,@(4,gbr)
124 ! branchlabel vs datalabel
126 .align 2
127 .mode shmedia
129 .long .L3
130 .long .L3 + 4
131 .long datalabel .L3
132 .long DATALABEL .L3
133 .L3:
134 .mode shcompact
137 .long .L4
138 .long .L5
139 .L4:
141 .align 2
142 .mode shmedia
145 movi (.L4 >> 16) & 65535,r0
146 shori .L4 & 65535, r0
147 ptabs r0,tr0
148 blink tr0,r18
150 movi (.L5 >> 16) & 65535,r0
151 shori .L5 & 65535, r0
152 ptabs r0,tr0
153 blink tr0,r18
154 .L5:
156 movi (.L4-DATALABEL .L6), r0
157 .L6:
158 movi (.L5-DATALABEL .L7), r0
159 .L7:
161 pt .L5,tr0
163 ! Expressions
165 ! Symbols
167 abcdefghijklmnopqrstuvwxyz0123456789_:
168 .long abcdefghijklmnopqrstuvwxyz0123456789_
170 .long _x
172 ! program counter
174 movi .L7-$,r0
175 .L8: movi .L7-.L8,r0
177 .mode shcompact
179 mova @(litpool-$,pc), r0
180 mov.l @r1,r0
181 add r1,r0
182 bsrf r0
183 litpool:
184 .long s10 - DATALABEL $
186 ! operators
188 .align 2
189 .mode shmedia
190 s10:
191 movi 8+1,r0
192 movi 8-1,r0
193 movi 8<<1,r0
194 movi 8>>1,r0
195 movi ~1,r0
196 movi 5&3,r0
197 movi 8|1,r0
198 movi 8*3,r0
199 movi 24/3,r0