@@ -594,14 +594,12 @@ fn main() {
594
594
}" ) ;
595
595
gen ( |( a, b) : ( MyI128 , MyI128 ) | Some ( a. 0 . wrapping_mul ( b. 0 ) ) ,
596
596
"builtins::int::mul::__multi3(a, b)" ) ;
597
- if !target_arch_mips { // FIXME(#137)
598
- gen ( |( a, b) : ( MyI128 , MyI128 ) | Some ( a. 0 . overflowing_mul ( b. 0 ) ) ,
599
- "{
600
- let mut o = 2;
601
- let c = builtins::int::mul::__muloti4(a, b, &mut o);
602
- (c, match o { 0 => false, 1 => true, _ => panic!() })
603
- }" ) ;
604
- }
597
+ gen ( |( a, b) : ( MyI128 , MyI128 ) | Some ( a. 0 . overflowing_mul ( b. 0 ) ) ,
598
+ "{
599
+ let mut o = 2;
600
+ let c = builtins::int::mul::__muloti4(a, b, &mut o);
601
+ (c, match o { 0 => false, 1 => true, _ => panic!() })
602
+ }" ) ;
605
603
606
604
// int/sdiv.rs
607
605
gen ( |( a, b) : ( MyI64 , MyI64 ) | {
@@ -658,24 +656,22 @@ fn main() {
658
656
}
659
657
} ,
660
658
"builtins::int::sdiv::__moddi3(a, b)" ) ;
661
- if !target_arch_mips { // FIXME(#137)
662
- gen ( |( a, b) : ( MyI128 , MyI128 ) | {
663
- if b. 0 == 0 {
664
- None
665
- } else {
666
- Some ( a. 0 / b. 0 )
667
- }
668
- } ,
669
- "builtins::int::sdiv::__divti3(a, b)" ) ;
670
- gen ( |( a, b) : ( MyI128 , MyI128 ) | {
671
- if b. 0 == 0 {
672
- None
673
- } else {
674
- Some ( a. 0 % b. 0 )
675
- }
676
- } ,
677
- "builtins::int::sdiv::__modti3(a, b)" ) ;
678
- }
659
+ gen ( |( a, b) : ( MyI128 , MyI128 ) | {
660
+ if b. 0 == 0 {
661
+ None
662
+ } else {
663
+ Some ( a. 0 / b. 0 )
664
+ }
665
+ } ,
666
+ "builtins::int::sdiv::__divti3(a, b)" ) ;
667
+ gen ( |( a, b) : ( MyI128 , MyI128 ) | {
668
+ if b. 0 == 0 {
669
+ None
670
+ } else {
671
+ Some ( a. 0 % b. 0 )
672
+ }
673
+ } ,
674
+ "builtins::int::sdiv::__modti3(a, b)" ) ;
679
675
680
676
// int/shift.rs
681
677
gen ( |( a, b) : ( MyU64 , MyU32 ) | Some ( a. 0 << ( b. 0 % 64 ) ) ,
@@ -746,35 +742,33 @@ fn main() {
746
742
}
747
743
} ,
748
744
"builtins::int::udiv::__umoddi3(a, b)" ) ;
749
- if !target_arch_mips { // FIXME(#137)
750
- gen ( |( a, b) : ( MyU128 , MyU128 ) | {
751
- if b. 0 == 0 {
752
- None
753
- } else {
754
- Some ( a. 0 / b. 0 )
755
- }
756
- } ,
757
- "builtins::int::udiv::__udivti3(a, b)" ) ;
758
- gen ( |( a, b) : ( MyU128 , MyU128 ) | {
759
- if b. 0 == 0 {
760
- None
761
- } else {
762
- Some ( a. 0 % b. 0 )
763
- }
764
- } ,
765
- "builtins::int::udiv::__umodti3(a, b)" ) ;
766
- gen ( |( a, b) : ( MyU128 , MyU128 ) | {
767
- if b. 0 == 0 {
768
- None
769
- } else {
770
- Some ( ( a. 0 / b. 0 , a. 0 % b. 0 ) )
771
- }
772
- } ,
773
- "{
774
- let mut r = 0;
775
- (builtins::int::udiv::__udivmodti4(a, b, Some(&mut r)), r)
776
- }" ) ;
777
- }
745
+ gen ( |( a, b) : ( MyU128 , MyU128 ) | {
746
+ if b. 0 == 0 {
747
+ None
748
+ } else {
749
+ Some ( a. 0 / b. 0 )
750
+ }
751
+ } ,
752
+ "builtins::int::udiv::__udivti3(a, b)" ) ;
753
+ gen ( |( a, b) : ( MyU128 , MyU128 ) | {
754
+ if b. 0 == 0 {
755
+ None
756
+ } else {
757
+ Some ( a. 0 % b. 0 )
758
+ }
759
+ } ,
760
+ "builtins::int::udiv::__umodti3(a, b)" ) ;
761
+ gen ( |( a, b) : ( MyU128 , MyU128 ) | {
762
+ if b. 0 == 0 {
763
+ None
764
+ } else {
765
+ Some ( ( a. 0 / b. 0 , a. 0 % b. 0 ) )
766
+ }
767
+ } ,
768
+ "{
769
+ let mut r = 0;
770
+ (builtins::int::udiv::__udivmodti4(a, b, Some(&mut r)), r)
771
+ }" ) ;
778
772
}
779
773
780
774
macro_rules! gen_float {
0 commit comments