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