comparison gcc/config/h8300/mova.md @ 0:a06113de4d67

first commit
author kent <kent@cr.ie.u-ryukyu.ac.jp>
date Fri, 17 Jul 2009 14:47:48 +0900
parents
children 77e2b8dfacca
comparison
equal deleted inserted replaced
-1:000000000000 0:a06113de4d67
1 ;; -*- buffer-read-only: t -*-
2 ;; Generated automatically from genmova.sh
3 (define_insn ""
4 [(set (match_operand:QI 0 "register_operand" "=r,r")
5 (plus:QI (mult:QI (match_operand:QI 1 "h8300_dst_operand" "0,rQ")
6 (const_int 2))
7 (match_operand:QI 2 "immediate_operand" "i,i")))]
8 "TARGET_H8300SX"
9 "mova/w.l @(%o2,%X1.b),%S0"
10 [(set_attr "length_table" "mova")
11 (set_attr "cc" "none")])
12
13 (define_insn ""
14 [(set (match_operand:QI 0 "register_operand" "=r,r")
15 (plus:QI (ashift:QI (match_operand:QI 1 "h8300_dst_operand" "0,rQ")
16 (const_int 1))
17 (match_operand:QI 2 "immediate_operand" "i,i")))]
18 "TARGET_H8300SX"
19 "mova/w.l @(%o2,%X1.b),%S0"
20 [(set_attr "length_table" "mova")
21 (set_attr "cc" "none")])
22
23 (define_insn ""
24 [(set (match_operand:QI 0 "register_operand" "=r,r")
25 (plus:QI (mult:QI (match_operand:QI 1 "h8300_dst_operand" "0,rQ")
26 (const_int 4))
27 (match_operand:QI 2 "immediate_operand" "i,i")))]
28 "TARGET_H8300SX"
29 "mova/l.l @(%o2,%X1.b),%S0"
30 [(set_attr "length_table" "mova")
31 (set_attr "cc" "none")])
32
33 (define_insn ""
34 [(set (match_operand:QI 0 "register_operand" "=r,r")
35 (plus:QI (ashift:QI (match_operand:QI 1 "h8300_dst_operand" "0,rQ")
36 (const_int 2))
37 (match_operand:QI 2 "immediate_operand" "i,i")))]
38 "TARGET_H8300SX"
39 "mova/l.l @(%o2,%X1.b),%S0"
40 [(set_attr "length_table" "mova")
41 (set_attr "cc" "none")])
42
43 (define_insn ""
44 [(set (match_operand:HI 0 "register_operand" "=r,r")
45 (plus:HI (zero_extend:HI (match_operand:QI 1 "h8300_dst_operand" "0,rQ"))
46 (match_operand:HI 2 "immediate_operand" "i,i")))]
47 "TARGET_H8300SX"
48 "mova/b.l @(%o2,%X1.b),%S0"
49 [(set_attr "length_table" "mova")
50 (set_attr "cc" "none")])
51
52 (define_insn ""
53 [(set (match_operand:HI 0 "register_operand" "=r,r")
54 (mult:HI (zero_extend:HI (match_operand:QI 1 "h8300_dst_operand" "0,rQ"))
55 (const_int 2)))]
56 "TARGET_H8300SX"
57 "mova/w.l @(0,%X1.b),%S0"
58 [(set_attr "length_table" "mova_zero")
59 (set_attr "cc" "none")])
60
61 (define_insn ""
62 [(set (match_operand:HI 0 "register_operand" "=r,r")
63 (plus:HI (mult:HI (zero_extend:HI (match_operand:QI 1 "h8300_dst_operand" "0,rQ"))
64 (const_int 2))
65 (match_operand:HI 2 "immediate_operand" "i,i")))]
66 "TARGET_H8300SX"
67 "mova/w.l @(%o2,%X1.b),%S0"
68 [(set_attr "length_table" "mova")
69 (set_attr "cc" "none")])
70
71 (define_insn ""
72 [(set (match_operand:HI 0 "register_operand" "=r")
73 (and:HI (mult:HI (subreg:HI (match_operand:QI 1 "memory_operand" "m") 0)
74 (const_int 2))
75 (const_int 510)))]
76 "TARGET_H8300SX"
77 "mova/w.l @(0,%X1.b),%S0"
78 [(set_attr "length_table" "mova_zero")
79 (set_attr "cc" "none")])
80
81 (define_insn ""
82 [(set (match_operand:HI 0 "register_operand" "=r")
83 (plus:HI (and:HI (mult:HI (subreg:HI (match_operand:QI 1 "memory_operand" "m") 0)
84 (const_int 2))
85 (const_int 510))
86 (match_operand:HI 2 "immediate_operand" "i")))]
87 "TARGET_H8300SX"
88 "mova/w.l @(%o2,%X1.b),%S0"
89 [(set_attr "length_table" "mova")
90 (set_attr "cc" "none")])
91
92 (define_insn ""
93 [(set (match_operand:HI 0 "register_operand" "=r")
94 (and:HI (mult:HI (match_operand:HI 1 "register_operand" "0")
95 (const_int 2))
96 (const_int 510)))]
97 "TARGET_H8300SX"
98 "mova/w.l @(0,%X1.b),%S0"
99 [(set_attr "length_table" "mova_zero")
100 (set_attr "cc" "none")])
101
102 (define_insn ""
103 [(set (match_operand:HI 0 "register_operand" "=r")
104 (plus:HI (and:HI (mult:HI (match_operand:HI 1 "register_operand" "0")
105 (const_int 2))
106 (const_int 510))
107 (match_operand:HI 2 "immediate_operand" "i")))]
108 "TARGET_H8300SX"
109 "mova/w.l @(%o2,%X1.b),%S0"
110 [(set_attr "length_table" "mova")
111 (set_attr "cc" "none")])
112
113 (define_insn ""
114 [(set (match_operand:HI 0 "register_operand" "=r,r")
115 (ashift:HI (zero_extend:HI (match_operand:QI 1 "h8300_dst_operand" "0,rQ"))
116 (const_int 1)))]
117 "TARGET_H8300SX"
118 "mova/w.l @(0,%X1.b),%S0"
119 [(set_attr "length_table" "mova_zero")
120 (set_attr "cc" "none")])
121
122 (define_insn ""
123 [(set (match_operand:HI 0 "register_operand" "=r,r")
124 (plus:HI (ashift:HI (zero_extend:HI (match_operand:QI 1 "h8300_dst_operand" "0,rQ"))
125 (const_int 1))
126 (match_operand:HI 2 "immediate_operand" "i,i")))]
127 "TARGET_H8300SX"
128 "mova/w.l @(%o2,%X1.b),%S0"
129 [(set_attr "length_table" "mova")
130 (set_attr "cc" "none")])
131
132 (define_insn ""
133 [(set (match_operand:HI 0 "register_operand" "=r")
134 (and:HI (ashift:HI (subreg:HI (match_operand:QI 1 "memory_operand" "m") 0)
135 (const_int 1))
136 (const_int 510)))]
137 "TARGET_H8300SX"
138 "mova/w.l @(0,%X1.b),%S0"
139 [(set_attr "length_table" "mova_zero")
140 (set_attr "cc" "none")])
141
142 (define_insn ""
143 [(set (match_operand:HI 0 "register_operand" "=r")
144 (plus:HI (and:HI (ashift:HI (subreg:HI (match_operand:QI 1 "memory_operand" "m") 0)
145 (const_int 1))
146 (const_int 510))
147 (match_operand:HI 2 "immediate_operand" "i")))]
148 "TARGET_H8300SX"
149 "mova/w.l @(%o2,%X1.b),%S0"
150 [(set_attr "length_table" "mova")
151 (set_attr "cc" "none")])
152
153 (define_insn ""
154 [(set (match_operand:HI 0 "register_operand" "=r")
155 (and:HI (ashift:HI (match_operand:HI 1 "register_operand" "0")
156 (const_int 1))
157 (const_int 510)))]
158 "TARGET_H8300SX"
159 "mova/w.l @(0,%X1.b),%S0"
160 [(set_attr "length_table" "mova_zero")
161 (set_attr "cc" "none")])
162
163 (define_insn ""
164 [(set (match_operand:HI 0 "register_operand" "=r")
165 (plus:HI (and:HI (ashift:HI (match_operand:HI 1 "register_operand" "0")
166 (const_int 1))
167 (const_int 510))
168 (match_operand:HI 2 "immediate_operand" "i")))]
169 "TARGET_H8300SX"
170 "mova/w.l @(%o2,%X1.b),%S0"
171 [(set_attr "length_table" "mova")
172 (set_attr "cc" "none")])
173
174 (define_insn ""
175 [(set (match_operand:HI 0 "register_operand" "=r,r")
176 (mult:HI (zero_extend:HI (match_operand:QI 1 "h8300_dst_operand" "0,rQ"))
177 (const_int 4)))]
178 "TARGET_H8300SX"
179 "mova/l.l @(0,%X1.b),%S0"
180 [(set_attr "length_table" "mova_zero")
181 (set_attr "cc" "none")])
182
183 (define_insn ""
184 [(set (match_operand:HI 0 "register_operand" "=r,r")
185 (plus:HI (mult:HI (zero_extend:HI (match_operand:QI 1 "h8300_dst_operand" "0,rQ"))
186 (const_int 4))
187 (match_operand:HI 2 "immediate_operand" "i,i")))]
188 "TARGET_H8300SX"
189 "mova/l.l @(%o2,%X1.b),%S0"
190 [(set_attr "length_table" "mova")
191 (set_attr "cc" "none")])
192
193 (define_insn ""
194 [(set (match_operand:HI 0 "register_operand" "=r")
195 (and:HI (mult:HI (subreg:HI (match_operand:QI 1 "memory_operand" "m") 0)
196 (const_int 4))
197 (const_int 1020)))]
198 "TARGET_H8300SX"
199 "mova/l.l @(0,%X1.b),%S0"
200 [(set_attr "length_table" "mova_zero")
201 (set_attr "cc" "none")])
202
203 (define_insn ""
204 [(set (match_operand:HI 0 "register_operand" "=r")
205 (plus:HI (and:HI (mult:HI (subreg:HI (match_operand:QI 1 "memory_operand" "m") 0)
206 (const_int 4))
207 (const_int 1020))
208 (match_operand:HI 2 "immediate_operand" "i")))]
209 "TARGET_H8300SX"
210 "mova/l.l @(%o2,%X1.b),%S0"
211 [(set_attr "length_table" "mova")
212 (set_attr "cc" "none")])
213
214 (define_insn ""
215 [(set (match_operand:HI 0 "register_operand" "=r")
216 (and:HI (mult:HI (match_operand:HI 1 "register_operand" "0")
217 (const_int 4))
218 (const_int 1020)))]
219 "TARGET_H8300SX"
220 "mova/l.l @(0,%X1.b),%S0"
221 [(set_attr "length_table" "mova_zero")
222 (set_attr "cc" "none")])
223
224 (define_insn ""
225 [(set (match_operand:HI 0 "register_operand" "=r")
226 (plus:HI (and:HI (mult:HI (match_operand:HI 1 "register_operand" "0")
227 (const_int 4))
228 (const_int 1020))
229 (match_operand:HI 2 "immediate_operand" "i")))]
230 "TARGET_H8300SX"
231 "mova/l.l @(%o2,%X1.b),%S0"
232 [(set_attr "length_table" "mova")
233 (set_attr "cc" "none")])
234
235 (define_insn ""
236 [(set (match_operand:HI 0 "register_operand" "=r,r")
237 (ashift:HI (zero_extend:HI (match_operand:QI 1 "h8300_dst_operand" "0,rQ"))
238 (const_int 2)))]
239 "TARGET_H8300SX"
240 "mova/l.l @(0,%X1.b),%S0"
241 [(set_attr "length_table" "mova_zero")
242 (set_attr "cc" "none")])
243
244 (define_insn ""
245 [(set (match_operand:HI 0 "register_operand" "=r,r")
246 (plus:HI (ashift:HI (zero_extend:HI (match_operand:QI 1 "h8300_dst_operand" "0,rQ"))
247 (const_int 2))
248 (match_operand:HI 2 "immediate_operand" "i,i")))]
249 "TARGET_H8300SX"
250 "mova/l.l @(%o2,%X1.b),%S0"
251 [(set_attr "length_table" "mova")
252 (set_attr "cc" "none")])
253
254 (define_insn ""
255 [(set (match_operand:HI 0 "register_operand" "=r")
256 (and:HI (ashift:HI (subreg:HI (match_operand:QI 1 "memory_operand" "m") 0)
257 (const_int 2))
258 (const_int 1020)))]
259 "TARGET_H8300SX"
260 "mova/l.l @(0,%X1.b),%S0"
261 [(set_attr "length_table" "mova_zero")
262 (set_attr "cc" "none")])
263
264 (define_insn ""
265 [(set (match_operand:HI 0 "register_operand" "=r")
266 (plus:HI (and:HI (ashift:HI (subreg:HI (match_operand:QI 1 "memory_operand" "m") 0)
267 (const_int 2))
268 (const_int 1020))
269 (match_operand:HI 2 "immediate_operand" "i")))]
270 "TARGET_H8300SX"
271 "mova/l.l @(%o2,%X1.b),%S0"
272 [(set_attr "length_table" "mova")
273 (set_attr "cc" "none")])
274
275 (define_insn ""
276 [(set (match_operand:HI 0 "register_operand" "=r")
277 (and:HI (ashift:HI (match_operand:HI 1 "register_operand" "0")
278 (const_int 2))
279 (const_int 1020)))]
280 "TARGET_H8300SX"
281 "mova/l.l @(0,%X1.b),%S0"
282 [(set_attr "length_table" "mova_zero")
283 (set_attr "cc" "none")])
284
285 (define_insn ""
286 [(set (match_operand:HI 0 "register_operand" "=r")
287 (plus:HI (and:HI (ashift:HI (match_operand:HI 1 "register_operand" "0")
288 (const_int 2))
289 (const_int 1020))
290 (match_operand:HI 2 "immediate_operand" "i")))]
291 "TARGET_H8300SX"
292 "mova/l.l @(%o2,%X1.b),%S0"
293 [(set_attr "length_table" "mova")
294 (set_attr "cc" "none")])
295
296 (define_insn ""
297 [(set (match_operand:SI 0 "register_operand" "=r,r")
298 (plus:SI (zero_extend:SI (match_operand:QI 1 "h8300_dst_operand" "0,rQ"))
299 (match_operand:SI 2 "immediate_operand" "i,i")))]
300 "TARGET_H8300SX"
301 "mova/b.l @(%o2,%X1.b),%S0"
302 [(set_attr "length_table" "mova")
303 (set_attr "cc" "none")])
304
305 (define_insn ""
306 [(set (match_operand:SI 0 "register_operand" "=r,r")
307 (mult:SI (zero_extend:SI (match_operand:QI 1 "h8300_dst_operand" "0,rQ"))
308 (const_int 2)))]
309 "TARGET_H8300SX"
310 "mova/w.l @(0,%X1.b),%S0"
311 [(set_attr "length_table" "mova_zero")
312 (set_attr "cc" "none")])
313
314 (define_insn ""
315 [(set (match_operand:SI 0 "register_operand" "=r,r")
316 (plus:SI (mult:SI (zero_extend:SI (match_operand:QI 1 "h8300_dst_operand" "0,rQ"))
317 (const_int 2))
318 (match_operand:SI 2 "immediate_operand" "i,i")))]
319 "TARGET_H8300SX"
320 "mova/w.l @(%o2,%X1.b),%S0"
321 [(set_attr "length_table" "mova")
322 (set_attr "cc" "none")])
323
324 (define_insn ""
325 [(set (match_operand:SI 0 "register_operand" "=r")
326 (and:SI (mult:SI (subreg:SI (match_operand:QI 1 "memory_operand" "m") 0)
327 (const_int 2))
328 (const_int 510)))]
329 "TARGET_H8300SX"
330 "mova/w.l @(0,%X1.b),%S0"
331 [(set_attr "length_table" "mova_zero")
332 (set_attr "cc" "none")])
333
334 (define_insn ""
335 [(set (match_operand:SI 0 "register_operand" "=r")
336 (plus:SI (and:SI (mult:SI (subreg:SI (match_operand:QI 1 "memory_operand" "m") 0)
337 (const_int 2))
338 (const_int 510))
339 (match_operand:SI 2 "immediate_operand" "i")))]
340 "TARGET_H8300SX"
341 "mova/w.l @(%o2,%X1.b),%S0"
342 [(set_attr "length_table" "mova")
343 (set_attr "cc" "none")])
344
345 (define_insn ""
346 [(set (match_operand:SI 0 "register_operand" "=r")
347 (and:SI (mult:SI (match_operand:SI 1 "register_operand" "0")
348 (const_int 2))
349 (const_int 510)))]
350 "TARGET_H8300SX"
351 "mova/w.l @(0,%X1.b),%S0"
352 [(set_attr "length_table" "mova_zero")
353 (set_attr "cc" "none")])
354
355 (define_insn ""
356 [(set (match_operand:SI 0 "register_operand" "=r")
357 (plus:SI (and:SI (mult:SI (match_operand:SI 1 "register_operand" "0")
358 (const_int 2))
359 (const_int 510))
360 (match_operand:SI 2 "immediate_operand" "i")))]
361 "TARGET_H8300SX"
362 "mova/w.l @(%o2,%X1.b),%S0"
363 [(set_attr "length_table" "mova")
364 (set_attr "cc" "none")])
365
366 (define_insn ""
367 [(set (match_operand:SI 0 "register_operand" "=r,r")
368 (ashift:SI (zero_extend:SI (match_operand:QI 1 "h8300_dst_operand" "0,rQ"))
369 (const_int 1)))]
370 "TARGET_H8300SX"
371 "mova/w.l @(0,%X1.b),%S0"
372 [(set_attr "length_table" "mova_zero")
373 (set_attr "cc" "none")])
374
375 (define_insn ""
376 [(set (match_operand:SI 0 "register_operand" "=r,r")
377 (plus:SI (ashift:SI (zero_extend:SI (match_operand:QI 1 "h8300_dst_operand" "0,rQ"))
378 (const_int 1))
379 (match_operand:SI 2 "immediate_operand" "i,i")))]
380 "TARGET_H8300SX"
381 "mova/w.l @(%o2,%X1.b),%S0"
382 [(set_attr "length_table" "mova")
383 (set_attr "cc" "none")])
384
385 (define_insn ""
386 [(set (match_operand:SI 0 "register_operand" "=r")
387 (and:SI (ashift:SI (subreg:SI (match_operand:QI 1 "memory_operand" "m") 0)
388 (const_int 1))
389 (const_int 510)))]
390 "TARGET_H8300SX"
391 "mova/w.l @(0,%X1.b),%S0"
392 [(set_attr "length_table" "mova_zero")
393 (set_attr "cc" "none")])
394
395 (define_insn ""
396 [(set (match_operand:SI 0 "register_operand" "=r")
397 (plus:SI (and:SI (ashift:SI (subreg:SI (match_operand:QI 1 "memory_operand" "m") 0)
398 (const_int 1))
399 (const_int 510))
400 (match_operand:SI 2 "immediate_operand" "i")))]
401 "TARGET_H8300SX"
402 "mova/w.l @(%o2,%X1.b),%S0"
403 [(set_attr "length_table" "mova")
404 (set_attr "cc" "none")])
405
406 (define_insn ""
407 [(set (match_operand:SI 0 "register_operand" "=r")
408 (and:SI (ashift:SI (match_operand:SI 1 "register_operand" "0")
409 (const_int 1))
410 (const_int 510)))]
411 "TARGET_H8300SX"
412 "mova/w.l @(0,%X1.b),%S0"
413 [(set_attr "length_table" "mova_zero")
414 (set_attr "cc" "none")])
415
416 (define_insn ""
417 [(set (match_operand:SI 0 "register_operand" "=r")
418 (plus:SI (and:SI (ashift:SI (match_operand:SI 1 "register_operand" "0")
419 (const_int 1))
420 (const_int 510))
421 (match_operand:SI 2 "immediate_operand" "i")))]
422 "TARGET_H8300SX"
423 "mova/w.l @(%o2,%X1.b),%S0"
424 [(set_attr "length_table" "mova")
425 (set_attr "cc" "none")])
426
427 (define_insn ""
428 [(set (match_operand:SI 0 "register_operand" "=r,r")
429 (mult:SI (zero_extend:SI (match_operand:QI 1 "h8300_dst_operand" "0,rQ"))
430 (const_int 4)))]
431 "TARGET_H8300SX"
432 "mova/l.l @(0,%X1.b),%S0"
433 [(set_attr "length_table" "mova_zero")
434 (set_attr "cc" "none")])
435
436 (define_insn ""
437 [(set (match_operand:SI 0 "register_operand" "=r,r")
438 (plus:SI (mult:SI (zero_extend:SI (match_operand:QI 1 "h8300_dst_operand" "0,rQ"))
439 (const_int 4))
440 (match_operand:SI 2 "immediate_operand" "i,i")))]
441 "TARGET_H8300SX"
442 "mova/l.l @(%o2,%X1.b),%S0"
443 [(set_attr "length_table" "mova")
444 (set_attr "cc" "none")])
445
446 (define_insn ""
447 [(set (match_operand:SI 0 "register_operand" "=r")
448 (and:SI (mult:SI (subreg:SI (match_operand:QI 1 "memory_operand" "m") 0)
449 (const_int 4))
450 (const_int 1020)))]
451 "TARGET_H8300SX"
452 "mova/l.l @(0,%X1.b),%S0"
453 [(set_attr "length_table" "mova_zero")
454 (set_attr "cc" "none")])
455
456 (define_insn ""
457 [(set (match_operand:SI 0 "register_operand" "=r")
458 (plus:SI (and:SI (mult:SI (subreg:SI (match_operand:QI 1 "memory_operand" "m") 0)
459 (const_int 4))
460 (const_int 1020))
461 (match_operand:SI 2 "immediate_operand" "i")))]
462 "TARGET_H8300SX"
463 "mova/l.l @(%o2,%X1.b),%S0"
464 [(set_attr "length_table" "mova")
465 (set_attr "cc" "none")])
466
467 (define_insn ""
468 [(set (match_operand:SI 0 "register_operand" "=r")
469 (and:SI (mult:SI (match_operand:SI 1 "register_operand" "0")
470 (const_int 4))
471 (const_int 1020)))]
472 "TARGET_H8300SX"
473 "mova/l.l @(0,%X1.b),%S0"
474 [(set_attr "length_table" "mova_zero")
475 (set_attr "cc" "none")])
476
477 (define_insn ""
478 [(set (match_operand:SI 0 "register_operand" "=r")
479 (plus:SI (and:SI (mult:SI (match_operand:SI 1 "register_operand" "0")
480 (const_int 4))
481 (const_int 1020))
482 (match_operand:SI 2 "immediate_operand" "i")))]
483 "TARGET_H8300SX"
484 "mova/l.l @(%o2,%X1.b),%S0"
485 [(set_attr "length_table" "mova")
486 (set_attr "cc" "none")])
487
488 (define_insn ""
489 [(set (match_operand:SI 0 "register_operand" "=r,r")
490 (ashift:SI (zero_extend:SI (match_operand:QI 1 "h8300_dst_operand" "0,rQ"))
491 (const_int 2)))]
492 "TARGET_H8300SX"
493 "mova/l.l @(0,%X1.b),%S0"
494 [(set_attr "length_table" "mova_zero")
495 (set_attr "cc" "none")])
496
497 (define_insn ""
498 [(set (match_operand:SI 0 "register_operand" "=r,r")
499 (plus:SI (ashift:SI (zero_extend:SI (match_operand:QI 1 "h8300_dst_operand" "0,rQ"))
500 (const_int 2))
501 (match_operand:SI 2 "immediate_operand" "i,i")))]
502 "TARGET_H8300SX"
503 "mova/l.l @(%o2,%X1.b),%S0"
504 [(set_attr "length_table" "mova")
505 (set_attr "cc" "none")])
506
507 (define_insn ""
508 [(set (match_operand:SI 0 "register_operand" "=r")
509 (and:SI (ashift:SI (subreg:SI (match_operand:QI 1 "memory_operand" "m") 0)
510 (const_int 2))
511 (const_int 1020)))]
512 "TARGET_H8300SX"
513 "mova/l.l @(0,%X1.b),%S0"
514 [(set_attr "length_table" "mova_zero")
515 (set_attr "cc" "none")])
516
517 (define_insn ""
518 [(set (match_operand:SI 0 "register_operand" "=r")
519 (plus:SI (and:SI (ashift:SI (subreg:SI (match_operand:QI 1 "memory_operand" "m") 0)
520 (const_int 2))
521 (const_int 1020))
522 (match_operand:SI 2 "immediate_operand" "i")))]
523 "TARGET_H8300SX"
524 "mova/l.l @(%o2,%X1.b),%S0"
525 [(set_attr "length_table" "mova")
526 (set_attr "cc" "none")])
527
528 (define_insn ""
529 [(set (match_operand:SI 0 "register_operand" "=r")
530 (and:SI (ashift:SI (match_operand:SI 1 "register_operand" "0")
531 (const_int 2))
532 (const_int 1020)))]
533 "TARGET_H8300SX"
534 "mova/l.l @(0,%X1.b),%S0"
535 [(set_attr "length_table" "mova_zero")
536 (set_attr "cc" "none")])
537
538 (define_insn ""
539 [(set (match_operand:SI 0 "register_operand" "=r")
540 (plus:SI (and:SI (ashift:SI (match_operand:SI 1 "register_operand" "0")
541 (const_int 2))
542 (const_int 1020))
543 (match_operand:SI 2 "immediate_operand" "i")))]
544 "TARGET_H8300SX"
545 "mova/l.l @(%o2,%X1.b),%S0"
546 [(set_attr "length_table" "mova")
547 (set_attr "cc" "none")])
548
549 (define_insn ""
550 [(set (match_operand:HI 0 "register_operand" "=r,r")
551 (plus:HI (mult:HI (match_operand:HI 1 "h8300_dst_operand" "0,rQ")
552 (const_int 2))
553 (match_operand:HI 2 "immediate_operand" "i,i")))]
554 "TARGET_H8300SX"
555 "mova/w.l @(%o2,%T1.w),%S0"
556 [(set_attr "length_table" "mova")
557 (set_attr "cc" "none")])
558
559 (define_insn ""
560 [(set (match_operand:HI 0 "register_operand" "=r,r")
561 (plus:HI (ashift:HI (match_operand:HI 1 "h8300_dst_operand" "0,rQ")
562 (const_int 1))
563 (match_operand:HI 2 "immediate_operand" "i,i")))]
564 "TARGET_H8300SX"
565 "mova/w.l @(%o2,%T1.w),%S0"
566 [(set_attr "length_table" "mova")
567 (set_attr "cc" "none")])
568
569 (define_insn ""
570 [(set (match_operand:HI 0 "register_operand" "=r,r")
571 (plus:HI (mult:HI (match_operand:HI 1 "h8300_dst_operand" "0,rQ")
572 (const_int 4))
573 (match_operand:HI 2 "immediate_operand" "i,i")))]
574 "TARGET_H8300SX"
575 "mova/l.l @(%o2,%T1.w),%S0"
576 [(set_attr "length_table" "mova")
577 (set_attr "cc" "none")])
578
579 (define_insn ""
580 [(set (match_operand:HI 0 "register_operand" "=r,r")
581 (plus:HI (ashift:HI (match_operand:HI 1 "h8300_dst_operand" "0,rQ")
582 (const_int 2))
583 (match_operand:HI 2 "immediate_operand" "i,i")))]
584 "TARGET_H8300SX"
585 "mova/l.l @(%o2,%T1.w),%S0"
586 [(set_attr "length_table" "mova")
587 (set_attr "cc" "none")])
588
589 (define_insn ""
590 [(set (match_operand:SI 0 "register_operand" "=r,r")
591 (plus:SI (zero_extend:SI (match_operand:HI 1 "h8300_dst_operand" "0,rQ"))
592 (match_operand:SI 2 "immediate_operand" "i,i")))]
593 "TARGET_H8300SX"
594 "mova/b.l @(%o2,%T1.w),%S0"
595 [(set_attr "length_table" "mova")
596 (set_attr "cc" "none")])
597
598 (define_insn ""
599 [(set (match_operand:SI 0 "register_operand" "=r,r")
600 (mult:SI (zero_extend:SI (match_operand:HI 1 "h8300_dst_operand" "0,rQ"))
601 (const_int 2)))]
602 "TARGET_H8300SX"
603 "mova/w.l @(0,%T1.w),%S0"
604 [(set_attr "length_table" "mova_zero")
605 (set_attr "cc" "none")])
606
607 (define_insn ""
608 [(set (match_operand:SI 0 "register_operand" "=r,r")
609 (plus:SI (mult:SI (zero_extend:SI (match_operand:HI 1 "h8300_dst_operand" "0,rQ"))
610 (const_int 2))
611 (match_operand:SI 2 "immediate_operand" "i,i")))]
612 "TARGET_H8300SX"
613 "mova/w.l @(%o2,%T1.w),%S0"
614 [(set_attr "length_table" "mova")
615 (set_attr "cc" "none")])
616
617 (define_insn ""
618 [(set (match_operand:SI 0 "register_operand" "=r")
619 (and:SI (mult:SI (subreg:SI (match_operand:HI 1 "memory_operand" "m") 0)
620 (const_int 2))
621 (const_int 131070)))]
622 "TARGET_H8300SX"
623 "mova/w.l @(0,%T1.w),%S0"
624 [(set_attr "length_table" "mova_zero")
625 (set_attr "cc" "none")])
626
627 (define_insn ""
628 [(set (match_operand:SI 0 "register_operand" "=r")
629 (plus:SI (and:SI (mult:SI (subreg:SI (match_operand:HI 1 "memory_operand" "m") 0)
630 (const_int 2))
631 (const_int 131070))
632 (match_operand:SI 2 "immediate_operand" "i")))]
633 "TARGET_H8300SX"
634 "mova/w.l @(%o2,%T1.w),%S0"
635 [(set_attr "length_table" "mova")
636 (set_attr "cc" "none")])
637
638 (define_insn ""
639 [(set (match_operand:SI 0 "register_operand" "=r")
640 (and:SI (mult:SI (match_operand:SI 1 "register_operand" "0")
641 (const_int 2))
642 (const_int 131070)))]
643 "TARGET_H8300SX"
644 "mova/w.l @(0,%T1.w),%S0"
645 [(set_attr "length_table" "mova_zero")
646 (set_attr "cc" "none")])
647
648 (define_insn ""
649 [(set (match_operand:SI 0 "register_operand" "=r")
650 (plus:SI (and:SI (mult:SI (match_operand:SI 1 "register_operand" "0")
651 (const_int 2))
652 (const_int 131070))
653 (match_operand:SI 2 "immediate_operand" "i")))]
654 "TARGET_H8300SX"
655 "mova/w.l @(%o2,%T1.w),%S0"
656 [(set_attr "length_table" "mova")
657 (set_attr "cc" "none")])
658
659 (define_insn ""
660 [(set (match_operand:SI 0 "register_operand" "=r,r")
661 (ashift:SI (zero_extend:SI (match_operand:HI 1 "h8300_dst_operand" "0,rQ"))
662 (const_int 1)))]
663 "TARGET_H8300SX"
664 "mova/w.l @(0,%T1.w),%S0"
665 [(set_attr "length_table" "mova_zero")
666 (set_attr "cc" "none")])
667
668 (define_insn ""
669 [(set (match_operand:SI 0 "register_operand" "=r,r")
670 (plus:SI (ashift:SI (zero_extend:SI (match_operand:HI 1 "h8300_dst_operand" "0,rQ"))
671 (const_int 1))
672 (match_operand:SI 2 "immediate_operand" "i,i")))]
673 "TARGET_H8300SX"
674 "mova/w.l @(%o2,%T1.w),%S0"
675 [(set_attr "length_table" "mova")
676 (set_attr "cc" "none")])
677
678 (define_insn ""
679 [(set (match_operand:SI 0 "register_operand" "=r")
680 (and:SI (ashift:SI (subreg:SI (match_operand:HI 1 "memory_operand" "m") 0)
681 (const_int 1))
682 (const_int 131070)))]
683 "TARGET_H8300SX"
684 "mova/w.l @(0,%T1.w),%S0"
685 [(set_attr "length_table" "mova_zero")
686 (set_attr "cc" "none")])
687
688 (define_insn ""
689 [(set (match_operand:SI 0 "register_operand" "=r")
690 (plus:SI (and:SI (ashift:SI (subreg:SI (match_operand:HI 1 "memory_operand" "m") 0)
691 (const_int 1))
692 (const_int 131070))
693 (match_operand:SI 2 "immediate_operand" "i")))]
694 "TARGET_H8300SX"
695 "mova/w.l @(%o2,%T1.w),%S0"
696 [(set_attr "length_table" "mova")
697 (set_attr "cc" "none")])
698
699 (define_insn ""
700 [(set (match_operand:SI 0 "register_operand" "=r")
701 (and:SI (ashift:SI (match_operand:SI 1 "register_operand" "0")
702 (const_int 1))
703 (const_int 131070)))]
704 "TARGET_H8300SX"
705 "mova/w.l @(0,%T1.w),%S0"
706 [(set_attr "length_table" "mova_zero")
707 (set_attr "cc" "none")])
708
709 (define_insn ""
710 [(set (match_operand:SI 0 "register_operand" "=r")
711 (plus:SI (and:SI (ashift:SI (match_operand:SI 1 "register_operand" "0")
712 (const_int 1))
713 (const_int 131070))
714 (match_operand:SI 2 "immediate_operand" "i")))]
715 "TARGET_H8300SX"
716 "mova/w.l @(%o2,%T1.w),%S0"
717 [(set_attr "length_table" "mova")
718 (set_attr "cc" "none")])
719
720 (define_insn ""
721 [(set (match_operand:SI 0 "register_operand" "=r,r")
722 (mult:SI (zero_extend:SI (match_operand:HI 1 "h8300_dst_operand" "0,rQ"))
723 (const_int 4)))]
724 "TARGET_H8300SX"
725 "mova/l.l @(0,%T1.w),%S0"
726 [(set_attr "length_table" "mova_zero")
727 (set_attr "cc" "none")])
728
729 (define_insn ""
730 [(set (match_operand:SI 0 "register_operand" "=r,r")
731 (plus:SI (mult:SI (zero_extend:SI (match_operand:HI 1 "h8300_dst_operand" "0,rQ"))
732 (const_int 4))
733 (match_operand:SI 2 "immediate_operand" "i,i")))]
734 "TARGET_H8300SX"
735 "mova/l.l @(%o2,%T1.w),%S0"
736 [(set_attr "length_table" "mova")
737 (set_attr "cc" "none")])
738
739 (define_insn ""
740 [(set (match_operand:SI 0 "register_operand" "=r")
741 (and:SI (mult:SI (subreg:SI (match_operand:HI 1 "memory_operand" "m") 0)
742 (const_int 4))
743 (const_int 262140)))]
744 "TARGET_H8300SX"
745 "mova/l.l @(0,%T1.w),%S0"
746 [(set_attr "length_table" "mova_zero")
747 (set_attr "cc" "none")])
748
749 (define_insn ""
750 [(set (match_operand:SI 0 "register_operand" "=r")
751 (plus:SI (and:SI (mult:SI (subreg:SI (match_operand:HI 1 "memory_operand" "m") 0)
752 (const_int 4))
753 (const_int 262140))
754 (match_operand:SI 2 "immediate_operand" "i")))]
755 "TARGET_H8300SX"
756 "mova/l.l @(%o2,%T1.w),%S0"
757 [(set_attr "length_table" "mova")
758 (set_attr "cc" "none")])
759
760 (define_insn ""
761 [(set (match_operand:SI 0 "register_operand" "=r")
762 (and:SI (mult:SI (match_operand:SI 1 "register_operand" "0")
763 (const_int 4))
764 (const_int 262140)))]
765 "TARGET_H8300SX"
766 "mova/l.l @(0,%T1.w),%S0"
767 [(set_attr "length_table" "mova_zero")
768 (set_attr "cc" "none")])
769
770 (define_insn ""
771 [(set (match_operand:SI 0 "register_operand" "=r")
772 (plus:SI (and:SI (mult:SI (match_operand:SI 1 "register_operand" "0")
773 (const_int 4))
774 (const_int 262140))
775 (match_operand:SI 2 "immediate_operand" "i")))]
776 "TARGET_H8300SX"
777 "mova/l.l @(%o2,%T1.w),%S0"
778 [(set_attr "length_table" "mova")
779 (set_attr "cc" "none")])
780
781 (define_insn ""
782 [(set (match_operand:SI 0 "register_operand" "=r,r")
783 (ashift:SI (zero_extend:SI (match_operand:HI 1 "h8300_dst_operand" "0,rQ"))
784 (const_int 2)))]
785 "TARGET_H8300SX"
786 "mova/l.l @(0,%T1.w),%S0"
787 [(set_attr "length_table" "mova_zero")
788 (set_attr "cc" "none")])
789
790 (define_insn ""
791 [(set (match_operand:SI 0 "register_operand" "=r,r")
792 (plus:SI (ashift:SI (zero_extend:SI (match_operand:HI 1 "h8300_dst_operand" "0,rQ"))
793 (const_int 2))
794 (match_operand:SI 2 "immediate_operand" "i,i")))]
795 "TARGET_H8300SX"
796 "mova/l.l @(%o2,%T1.w),%S0"
797 [(set_attr "length_table" "mova")
798 (set_attr "cc" "none")])
799
800 (define_insn ""
801 [(set (match_operand:SI 0 "register_operand" "=r")
802 (and:SI (ashift:SI (subreg:SI (match_operand:HI 1 "memory_operand" "m") 0)
803 (const_int 2))
804 (const_int 262140)))]
805 "TARGET_H8300SX"
806 "mova/l.l @(0,%T1.w),%S0"
807 [(set_attr "length_table" "mova_zero")
808 (set_attr "cc" "none")])
809
810 (define_insn ""
811 [(set (match_operand:SI 0 "register_operand" "=r")
812 (plus:SI (and:SI (ashift:SI (subreg:SI (match_operand:HI 1 "memory_operand" "m") 0)
813 (const_int 2))
814 (const_int 262140))
815 (match_operand:SI 2 "immediate_operand" "i")))]
816 "TARGET_H8300SX"
817 "mova/l.l @(%o2,%T1.w),%S0"
818 [(set_attr "length_table" "mova")
819 (set_attr "cc" "none")])
820
821 (define_insn ""
822 [(set (match_operand:SI 0 "register_operand" "=r")
823 (and:SI (ashift:SI (match_operand:SI 1 "register_operand" "0")
824 (const_int 2))
825 (const_int 262140)))]
826 "TARGET_H8300SX"
827 "mova/l.l @(0,%T1.w),%S0"
828 [(set_attr "length_table" "mova_zero")
829 (set_attr "cc" "none")])
830
831 (define_insn ""
832 [(set (match_operand:SI 0 "register_operand" "=r")
833 (plus:SI (and:SI (ashift:SI (match_operand:SI 1 "register_operand" "0")
834 (const_int 2))
835 (const_int 262140))
836 (match_operand:SI 2 "immediate_operand" "i")))]
837 "TARGET_H8300SX"
838 "mova/l.l @(%o2,%T1.w),%S0"
839 [(set_attr "length_table" "mova")
840 (set_attr "cc" "none")])
841