Lines Matching refs:a0
19 ; RV32-NEXT: mulhu a0, a0, a1
20 ; RV32-NEXT: srli a0, a0, 2
25 ; RV64-NEXT: slli a0, a0, 32
29 ; RV64-NEXT: mulhu a0, a0, a1
30 ; RV64-NEXT: srli a0, a0, 34
42 ; RV32-NEXT: mulhu a1, a0, a1
43 ; RV32-NEXT: sub a0, a0, a1
44 ; RV32-NEXT: srli a0, a0, 1
45 ; RV32-NEXT: add a0, a0, a1
46 ; RV32-NEXT: srli a0, a0, 2
51 ; RV64-NEXT: slli a1, a0, 32
57 ; RV64-NEXT: subw a0, a0, a1
58 ; RV64-NEXT: srliw a0, a0, 1
59 ; RV64-NEXT: add a0, a0, a1
60 ; RV64-NEXT: srli a0, a0, 2
82 ; RV64-NEXT: mulhu a0, a0, a1
83 ; RV64-NEXT: srli a0, a0, 2
105 ; RV64-NEXT: mulhu a1, a0, a1
106 ; RV64-NEXT: sub a0, a0, a1
107 ; RV64-NEXT: srli a0, a0, 1
108 ; RV64-NEXT: add a0, a0, a1
109 ; RV64-NEXT: srli a0, a0, 2
118 ; RV32-NEXT: andi a0, a0, 255
120 ; RV32-NEXT: mul a0, a0, a1
121 ; RV32-NEXT: srli a0, a0, 10
126 ; RV64-NEXT: andi a0, a0, 255
128 ; RV64-NEXT: mul a0, a0, a1
129 ; RV64-NEXT: srli a0, a0, 10
138 ; RV32IM-NEXT: andi a1, a0, 255
142 ; RV32IM-NEXT: sub a0, a0, a1
143 ; RV32IM-NEXT: slli a0, a0, 24
144 ; RV32IM-NEXT: srli a0, a0, 25
145 ; RV32IM-NEXT: add a0, a0, a1
146 ; RV32IM-NEXT: srli a0, a0, 2
151 ; RV32IMZB-NEXT: andi a1, a0, 255
155 ; RV32IMZB-NEXT: sub a0, a0, a1
156 ; RV32IMZB-NEXT: slli a0, a0, 24
157 ; RV32IMZB-NEXT: srli a0, a0, 25
158 ; RV32IMZB-NEXT: add a0, a0, a1
159 ; RV32IMZB-NEXT: srli a0, a0, 2
164 ; RV64IM-NEXT: andi a1, a0, 255
168 ; RV64IM-NEXT: subw a0, a0, a1
169 ; RV64IM-NEXT: slli a0, a0, 56
170 ; RV64IM-NEXT: srli a0, a0, 57
171 ; RV64IM-NEXT: add a0, a0, a1
172 ; RV64IM-NEXT: srli a0, a0, 2
177 ; RV64IMZB-NEXT: andi a1, a0, 255
181 ; RV64IMZB-NEXT: subw a0, a0, a1
182 ; RV64IMZB-NEXT: slli a0, a0, 56
183 ; RV64IMZB-NEXT: srli a0, a0, 57
184 ; RV64IMZB-NEXT: add a0, a0, a1
185 ; RV64IMZB-NEXT: srli a0, a0, 2
194 ; RV32-NEXT: slli a0, a0, 16
196 ; RV32-NEXT: mulhu a0, a0, a1
197 ; RV32-NEXT: srli a0, a0, 18
204 ; RV64-NEXT: slli a0, a0, 48
205 ; RV64-NEXT: mulhu a0, a0, a1
206 ; RV64-NEXT: srli a0, a0, 18
215 ; RV32-NEXT: slli a1, a0, 16
219 ; RV32-NEXT: sub a0, a0, a1
220 ; RV32-NEXT: slli a0, a0, 16
221 ; RV32-NEXT: srli a0, a0, 17
222 ; RV32-NEXT: add a0, a0, a1
223 ; RV32-NEXT: srli a0, a0, 2
228 ; RV64-NEXT: slli a1, a0, 48
232 ; RV64-NEXT: subw a0, a0, a1
233 ; RV64-NEXT: slli a0, a0, 48
234 ; RV64-NEXT: srli a0, a0, 49
235 ; RV64-NEXT: add a0, a0, a1
236 ; RV64-NEXT: srli a0, a0, 2
248 ; RV32-NEXT: mulh a0, a0, a1
249 ; RV32-NEXT: srli a1, a0, 31
250 ; RV32-NEXT: add a0, a0, a1
255 ; RV64-NEXT: sext.w a0, a0
258 ; RV64-NEXT: mul a0, a0, a1
259 ; RV64-NEXT: srli a1, a0, 63
260 ; RV64-NEXT: srli a0, a0, 32
261 ; RV64-NEXT: addw a0, a0, a1
273 ; RV32-NEXT: mulh a0, a0, a1
274 ; RV32-NEXT: srli a1, a0, 31
275 ; RV32-NEXT: srai a0, a0, 1
276 ; RV32-NEXT: add a0, a0, a1
281 ; RV64-NEXT: sext.w a0, a0
284 ; RV64-NEXT: mul a0, a0, a1
285 ; RV64-NEXT: srli a1, a0, 63
286 ; RV64-NEXT: srai a0, a0, 33
287 ; RV64-NEXT: add a0, a0, a1
299 ; RV32-NEXT: mulh a1, a0, a1
300 ; RV32-NEXT: add a0, a1, a0
301 ; RV32-NEXT: srli a1, a0, 31
302 ; RV32-NEXT: srai a0, a0, 2
303 ; RV32-NEXT: add a0, a0, a1
308 ; RV64-NEXT: sext.w a1, a0
313 ; RV64-NEXT: addw a0, a1, a0
314 ; RV64-NEXT: srliw a1, a0, 31
315 ; RV64-NEXT: sraiw a0, a0, 2
316 ; RV64-NEXT: add a0, a0, a1
328 ; RV32-NEXT: mulh a1, a0, a1
329 ; RV32-NEXT: sub a0, a1, a0
330 ; RV32-NEXT: srli a1, a0, 31
331 ; RV32-NEXT: srai a0, a0, 2
332 ; RV32-NEXT: add a0, a0, a1
337 ; RV64-NEXT: sext.w a1, a0
342 ; RV64-NEXT: subw a0, a1, a0
343 ; RV64-NEXT: srliw a1, a0, 31
344 ; RV64-NEXT: sraiw a0, a0, 2
345 ; RV64-NEXT: add a0, a0, a1
367 ; RV64-NEXT: mulh a0, a0, a1
368 ; RV64-NEXT: srli a1, a0, 63
369 ; RV64-NEXT: add a0, a0, a1
391 ; RV64-NEXT: mulh a0, a0, a1
392 ; RV64-NEXT: srli a1, a0, 63
393 ; RV64-NEXT: srai a0, a0, 1
394 ; RV64-NEXT: add a0, a0, a1
416 ; RV64-NEXT: mulh a1, a0, a1
417 ; RV64-NEXT: add a0, a1, a0
418 ; RV64-NEXT: srli a1, a0, 63
419 ; RV64-NEXT: srai a0, a0, 3
420 ; RV64-NEXT: add a0, a0, a1
442 ; RV64-NEXT: mulh a1, a0, a1
443 ; RV64-NEXT: sub a0, a1, a0
444 ; RV64-NEXT: srli a1, a0, 63
445 ; RV64-NEXT: srai a0, a0, 1
446 ; RV64-NEXT: add a0, a0, a1
455 ; RV32IM-NEXT: slli a0, a0, 24
456 ; RV32IM-NEXT: srai a0, a0, 24
458 ; RV32IM-NEXT: mul a0, a0, a1
459 ; RV32IM-NEXT: srli a1, a0, 8
460 ; RV32IM-NEXT: slli a0, a0, 16
461 ; RV32IM-NEXT: srli a0, a0, 31
462 ; RV32IM-NEXT: add a0, a1, a0
467 ; RV32IMZB-NEXT: sext.b a0, a0
469 ; RV32IMZB-NEXT: mul a0, a0, a1
470 ; RV32IMZB-NEXT: srli a1, a0, 8
471 ; RV32IMZB-NEXT: slli a0, a0, 16
472 ; RV32IMZB-NEXT: srli a0, a0, 31
473 ; RV32IMZB-NEXT: add a0, a1, a0
478 ; RV64IM-NEXT: slli a0, a0, 56
479 ; RV64IM-NEXT: srai a0, a0, 56
481 ; RV64IM-NEXT: mul a0, a0, a1
482 ; RV64IM-NEXT: srli a1, a0, 8
483 ; RV64IM-NEXT: slli a0, a0, 48
484 ; RV64IM-NEXT: srli a0, a0, 63
485 ; RV64IM-NEXT: add a0, a1, a0
490 ; RV64IMZB-NEXT: sext.b a0, a0
492 ; RV64IMZB-NEXT: mul a0, a0, a1
493 ; RV64IMZB-NEXT: srli a1, a0, 8
494 ; RV64IMZB-NEXT: slli a0, a0, 48
495 ; RV64IMZB-NEXT: srli a0, a0, 63
496 ; RV64IMZB-NEXT: add a0, a1, a0
505 ; RV32IM-NEXT: slli a0, a0, 24
506 ; RV32IM-NEXT: srai a0, a0, 24
508 ; RV32IM-NEXT: mul a0, a0, a1
509 ; RV32IM-NEXT: srai a1, a0, 9
510 ; RV32IM-NEXT: slli a0, a0, 16
511 ; RV32IM-NEXT: srli a0, a0, 31
512 ; RV32IM-NEXT: add a0, a1, a0
517 ; RV32IMZB-NEXT: sext.b a0, a0
519 ; RV32IMZB-NEXT: mul a0, a0, a1
520 ; RV32IMZB-NEXT: srai a1, a0, 9
521 ; RV32IMZB-NEXT: slli a0, a0, 16
522 ; RV32IMZB-NEXT: srli a0, a0, 31
523 ; RV32IMZB-NEXT: add a0, a1, a0
528 ; RV64IM-NEXT: slli a0, a0, 56
529 ; RV64IM-NEXT: srai a0, a0, 56
531 ; RV64IM-NEXT: mul a0, a0, a1
532 ; RV64IM-NEXT: srai a1, a0, 9
533 ; RV64IM-NEXT: slli a0, a0, 48
534 ; RV64IM-NEXT: srli a0, a0, 63
535 ; RV64IM-NEXT: add a0, a1, a0
540 ; RV64IMZB-NEXT: sext.b a0, a0
542 ; RV64IMZB-NEXT: mul a0, a0, a1
543 ; RV64IMZB-NEXT: srai a1, a0, 9
544 ; RV64IMZB-NEXT: slli a0, a0, 48
545 ; RV64IMZB-NEXT: srli a0, a0, 63
546 ; RV64IMZB-NEXT: add a0, a1, a0
555 ; RV32IM-NEXT: slli a1, a0, 24
560 ; RV32IM-NEXT: add a0, a1, a0
561 ; RV32IM-NEXT: slli a0, a0, 24
562 ; RV32IM-NEXT: srli a1, a0, 31
563 ; RV32IM-NEXT: srai a0, a0, 26
564 ; RV32IM-NEXT: add a0, a0, a1
569 ; RV32IMZB-NEXT: sext.b a1, a0
573 ; RV32IMZB-NEXT: add a0, a1, a0
574 ; RV32IMZB-NEXT: slli a0, a0, 24
575 ; RV32IMZB-NEXT: srli a1, a0, 31
576 ; RV32IMZB-NEXT: srai a0, a0, 26
577 ; RV32IMZB-NEXT: add a0, a0, a1
582 ; RV64IM-NEXT: slli a1, a0, 56
587 ; RV64IM-NEXT: addw a0, a1, a0
588 ; RV64IM-NEXT: slli a0, a0, 56
589 ; RV64IM-NEXT: srli a1, a0, 63
590 ; RV64IM-NEXT: srai a0, a0, 58
591 ; RV64IM-NEXT: add a0, a0, a1
596 ; RV64IMZB-NEXT: sext.b a1, a0
600 ; RV64IMZB-NEXT: addw a0, a1, a0
601 ; RV64IMZB-NEXT: slli a0, a0, 56
602 ; RV64IMZB-NEXT: srli a1, a0, 63
603 ; RV64IMZB-NEXT: srai a0, a0, 58
604 ; RV64IMZB-NEXT: add a0, a0, a1
613 ; RV32IM-NEXT: slli a1, a0, 24
618 ; RV32IM-NEXT: sub a0, a1, a0
619 ; RV32IM-NEXT: slli a0, a0, 24
620 ; RV32IM-NEXT: srli a1, a0, 31
621 ; RV32IM-NEXT: srai a0, a0, 26
622 ; RV32IM-NEXT: add a0, a0, a1
627 ; RV32IMZB-NEXT: sext.b a1, a0
631 ; RV32IMZB-NEXT: sub a0, a1, a0
632 ; RV32IMZB-NEXT: slli a0, a0, 24
633 ; RV32IMZB-NEXT: srli a1, a0, 31
634 ; RV32IMZB-NEXT: srai a0, a0, 26
635 ; RV32IMZB-NEXT: add a0, a0, a1
640 ; RV64IM-NEXT: slli a1, a0, 56
645 ; RV64IM-NEXT: subw a0, a1, a0
646 ; RV64IM-NEXT: slli a0, a0, 56
647 ; RV64IM-NEXT: srli a1, a0, 63
648 ; RV64IM-NEXT: srai a0, a0, 58
649 ; RV64IM-NEXT: add a0, a0, a1
654 ; RV64IMZB-NEXT: sext.b a1, a0
658 ; RV64IMZB-NEXT: subw a0, a1, a0
659 ; RV64IMZB-NEXT: slli a0, a0, 56
660 ; RV64IMZB-NEXT: srli a1, a0, 63
661 ; RV64IMZB-NEXT: srai a0, a0, 58
662 ; RV64IMZB-NEXT: add a0, a0, a1
671 ; RV32IM-NEXT: slli a0, a0, 16
672 ; RV32IM-NEXT: srai a0, a0, 16
675 ; RV32IM-NEXT: mul a0, a0, a1
676 ; RV32IM-NEXT: srli a1, a0, 31
677 ; RV32IM-NEXT: srli a0, a0, 16
678 ; RV32IM-NEXT: add a0, a0, a1
683 ; RV32IMZB-NEXT: sext.h a0, a0
686 ; RV32IMZB-NEXT: mul a0, a0, a1
687 ; RV32IMZB-NEXT: srli a1, a0, 31
688 ; RV32IMZB-NEXT: srli a0, a0, 16
689 ; RV32IMZB-NEXT: add a0, a0, a1
694 ; RV64IM-NEXT: slli a0, a0, 48
695 ; RV64IM-NEXT: srai a0, a0, 48
698 ; RV64IM-NEXT: mul a0, a0, a1
699 ; RV64IM-NEXT: srliw a1, a0, 31
700 ; RV64IM-NEXT: srli a0, a0, 16
701 ; RV64IM-NEXT: add a0, a0, a1
706 ; RV64IMZB-NEXT: sext.h a0, a0
709 ; RV64IMZB-NEXT: mul a0, a0, a1
710 ; RV64IMZB-NEXT: srliw a1, a0, 31
711 ; RV64IMZB-NEXT: srli a0, a0, 16
712 ; RV64IMZB-NEXT: add a0, a0, a1
721 ; RV32IM-NEXT: slli a0, a0, 16
722 ; RV32IM-NEXT: srai a0, a0, 16
725 ; RV32IM-NEXT: mul a0, a0, a1
726 ; RV32IM-NEXT: srli a1, a0, 31
727 ; RV32IM-NEXT: srai a0, a0, 17
728 ; RV32IM-NEXT: add a0, a0, a1
733 ; RV32IMZB-NEXT: sext.h a0, a0
736 ; RV32IMZB-NEXT: mul a0, a0, a1
737 ; RV32IMZB-NEXT: srli a1, a0, 31
738 ; RV32IMZB-NEXT: srai a0, a0, 17
739 ; RV32IMZB-NEXT: add a0, a0, a1
744 ; RV64IM-NEXT: slli a0, a0, 48
745 ; RV64IM-NEXT: srai a0, a0, 48
748 ; RV64IM-NEXT: mul a0, a0, a1
749 ; RV64IM-NEXT: srliw a1, a0, 31
750 ; RV64IM-NEXT: srai a0, a0, 17
751 ; RV64IM-NEXT: add a0, a0, a1
756 ; RV64IMZB-NEXT: sext.h a0, a0
759 ; RV64IMZB-NEXT: mul a0, a0, a1
760 ; RV64IMZB-NEXT: srliw a1, a0, 31
761 ; RV64IMZB-NEXT: srai a0, a0, 17
762 ; RV64IMZB-NEXT: add a0, a0, a1
771 ; RV32IM-NEXT: slli a1, a0, 16
777 ; RV32IM-NEXT: add a0, a1, a0
778 ; RV32IM-NEXT: slli a0, a0, 16
779 ; RV32IM-NEXT: srli a1, a0, 31
780 ; RV32IM-NEXT: srai a0, a0, 19
781 ; RV32IM-NEXT: add a0, a0, a1
786 ; RV32IMZB-NEXT: sext.h a1, a0
791 ; RV32IMZB-NEXT: add a0, a1, a0
792 ; RV32IMZB-NEXT: slli a0, a0, 16
793 ; RV32IMZB-NEXT: srli a1, a0, 31
794 ; RV32IMZB-NEXT: srai a0, a0, 19
795 ; RV32IMZB-NEXT: add a0, a0, a1
800 ; RV64IM-NEXT: slli a1, a0, 48
806 ; RV64IM-NEXT: addw a0, a1, a0
807 ; RV64IM-NEXT: slli a0, a0, 48
808 ; RV64IM-NEXT: srli a1, a0, 63
809 ; RV64IM-NEXT: srai a0, a0, 51
810 ; RV64IM-NEXT: add a0, a0, a1
815 ; RV64IMZB-NEXT: sext.h a1, a0
820 ; RV64IMZB-NEXT: addw a0, a1, a0
821 ; RV64IMZB-NEXT: slli a0, a0, 48
822 ; RV64IMZB-NEXT: srli a1, a0, 63
823 ; RV64IMZB-NEXT: srai a0, a0, 51
824 ; RV64IMZB-NEXT: add a0, a0, a1
833 ; RV32IM-NEXT: slli a1, a0, 16
839 ; RV32IM-NEXT: sub a0, a1, a0
840 ; RV32IM-NEXT: slli a0, a0, 16
841 ; RV32IM-NEXT: srli a1, a0, 31
842 ; RV32IM-NEXT: srai a0, a0, 19
843 ; RV32IM-NEXT: add a0, a0, a1
848 ; RV32IMZB-NEXT: sext.h a1, a0
853 ; RV32IMZB-NEXT: sub a0, a1, a0
854 ; RV32IMZB-NEXT: slli a0, a0, 16
855 ; RV32IMZB-NEXT: srli a1, a0, 31
856 ; RV32IMZB-NEXT: srai a0, a0, 19
857 ; RV32IMZB-NEXT: add a0, a0, a1
862 ; RV64IM-NEXT: slli a1, a0, 48
868 ; RV64IM-NEXT: subw a0, a1, a0
869 ; RV64IM-NEXT: slli a0, a0, 48
870 ; RV64IM-NEXT: srli a1, a0, 63
871 ; RV64IM-NEXT: srai a0, a0, 51
872 ; RV64IM-NEXT: add a0, a0, a1
877 ; RV64IMZB-NEXT: sext.h a1, a0
882 ; RV64IMZB-NEXT: subw a0, a1, a0
883 ; RV64IMZB-NEXT: slli a0, a0, 48
884 ; RV64IMZB-NEXT: srli a1, a0, 63
885 ; RV64IMZB-NEXT: srai a0, a0, 51
886 ; RV64IMZB-NEXT: add a0, a0, a1