@@ -569,6 +569,60 @@ define i64 @addmul72(i64 %a, i64 %b) {
569
569
ret i64 %d
570
570
}
571
571
572
+ define i64 @mul50 (i64 %a ) {
573
+ ; CHECK-LABEL: mul50:
574
+ ; CHECK: # %bb.0:
575
+ ; CHECK-NEXT: li a1, 50
576
+ ; CHECK-NEXT: mul a0, a0, a1
577
+ ; CHECK-NEXT: ret
578
+ %c = mul i64 %a , 50
579
+ ret i64 %c
580
+ }
581
+
582
+ define i64 @addmul50 (i64 %a , i64 %b ) {
583
+ ; CHECK-LABEL: addmul50:
584
+ ; CHECK: # %bb.0:
585
+ ; CHECK-NEXT: li a2, 50
586
+ ; CHECK-NEXT: mul a0, a0, a2
587
+ ; CHECK-NEXT: add a0, a0, a1
588
+ ; CHECK-NEXT: ret
589
+ %c = mul i64 %a , 50
590
+ %d = add i64 %c , %b
591
+ ret i64 %d
592
+ }
593
+
594
+ define i64 @mul100 (i64 %a ) {
595
+ ; CHECK-LABEL: mul100:
596
+ ; CHECK: # %bb.0:
597
+ ; CHECK-NEXT: li a1, 100
598
+ ; CHECK-NEXT: mul a0, a0, a1
599
+ ; CHECK-NEXT: ret
600
+ %c = mul i64 %a , 100
601
+ ret i64 %c
602
+ }
603
+
604
+ define i64 @addmul100 (i64 %a , i64 %b ) {
605
+ ; CHECK-LABEL: addmul100:
606
+ ; CHECK: # %bb.0:
607
+ ; CHECK-NEXT: li a2, 100
608
+ ; CHECK-NEXT: mul a0, a0, a2
609
+ ; CHECK-NEXT: add a0, a0, a1
610
+ ; CHECK-NEXT: ret
611
+ %c = mul i64 %a , 100
612
+ %d = add i64 %c , %b
613
+ ret i64 %d
614
+ }
615
+
616
+ define i64 @mul162 (i64 %a ) {
617
+ ; CHECK-LABEL: mul162:
618
+ ; CHECK: # %bb.0:
619
+ ; CHECK-NEXT: li a1, 162
620
+ ; CHECK-NEXT: mul a0, a0, a1
621
+ ; CHECK-NEXT: ret
622
+ %c = mul i64 %a , 162
623
+ ret i64 %c
624
+ }
625
+
572
626
define i64 @addmul162 (i64 %a , i64 %b ) {
573
627
; CHECK-LABEL: addmul162:
574
628
; CHECK: # %bb.0:
@@ -581,6 +635,16 @@ define i64 @addmul162(i64 %a, i64 %b) {
581
635
ret i64 %d
582
636
}
583
637
638
+ define i64 @mul180 (i64 %a ) {
639
+ ; CHECK-LABEL: mul180:
640
+ ; CHECK: # %bb.0:
641
+ ; CHECK-NEXT: li a1, 180
642
+ ; CHECK-NEXT: mul a0, a0, a1
643
+ ; CHECK-NEXT: ret
644
+ %c = mul i64 %a , 180
645
+ ret i64 %c
646
+ }
647
+
584
648
define i64 @addmul180 (i64 %a , i64 %b ) {
585
649
; CHECK-LABEL: addmul180:
586
650
; CHECK: # %bb.0:
@@ -605,6 +669,27 @@ define i64 @add255mul180(i64 %a) {
605
669
ret i64 %d
606
670
}
607
671
672
+ define i64 @mul200 (i64 %a ) {
673
+ ; CHECK-LABEL: mul200:
674
+ ; CHECK: # %bb.0:
675
+ ; CHECK-NEXT: li a1, 200
676
+ ; CHECK-NEXT: mul a0, a0, a1
677
+ ; CHECK-NEXT: ret
678
+ %c = mul i64 %a , 200
679
+ ret i64 %c
680
+ }
681
+
682
+ define i64 @addmul200 (i64 %a , i64 %b ) {
683
+ ; CHECK-LABEL: addmul200:
684
+ ; CHECK: # %bb.0:
685
+ ; CHECK-NEXT: li a2, 200
686
+ ; CHECK-NEXT: mul a0, a0, a2
687
+ ; CHECK-NEXT: add a0, a0, a1
688
+ ; CHECK-NEXT: ret
689
+ %c = mul i64 %a , 200
690
+ %d = add i64 %c , %b
691
+ ret i64 %d
692
+ }
608
693
609
694
define i64 @addmul4096 (i64 %a , i64 %b ) {
610
695
; CHECK-LABEL: addmul4096:
0 commit comments