@@ -55,17 +55,18 @@ pub fn main() {
55
55
56
56
// comparison operators
57
57
58
- assert ! ( eq_u32x4( u32x4( 1 , 2 , 3 , 4 ) == u32x4( 3 , 2 , 1 , 0 ) , u32x4( 0 , !0 , 0 , 0 ) ) ) ;
59
- assert ! ( eq_u32x4( u32x4( 1 , 2 , 3 , 4 ) != u32x4( 3 , 2 , 1 , 0 ) , u32x4( !0 , 0 , !0 , !0 ) ) ) ;
60
- assert ! ( eq_u32x4( u32x4( 1 , 2 , 3 , 4 ) < u32x4( 3 , 2 , 1 , 0 ) , u32x4( !0 , 0 , 0 , 0 ) ) ) ;
61
- assert ! ( eq_u32x4( u32x4( 1 , 2 , 3 , 4 ) <= u32x4( 3 , 2 , 1 , 0 ) , u32x4( !0 , !0 , 0 , 0 ) ) ) ;
62
- assert ! ( eq_u32x4( u32x4( 1 , 2 , 3 , 4 ) >= u32x4( 3 , 2 , 1 , 0 ) , u32x4( 0 , !0 , !0 , !0 ) ) ) ;
63
- assert ! ( eq_u32x4( u32x4( 1 , 2 , 3 , 4 ) > u32x4( 3 , 2 , 1 , 0 ) , u32x4( 0 , 0 , !0 , !0 ) ) ) ;
58
+ // check !0/-1 to ensure operators are using the correct signedness.
59
+ assert ! ( eq_u32x4( u32x4( 1 , 2 , 3 , !0 ) == u32x4( 3 , 2 , 1 , 0 ) , u32x4( 0 , !0 , 0 , 0 ) ) ) ;
60
+ assert ! ( eq_u32x4( u32x4( 1 , 2 , 3 , !0 ) != u32x4( 3 , 2 , 1 , 0 ) , u32x4( !0 , 0 , !0 , !0 ) ) ) ;
61
+ assert ! ( eq_u32x4( u32x4( 1 , 2 , 3 , !0 ) < u32x4( 3 , 2 , 1 , 0 ) , u32x4( !0 , 0 , 0 , 0 ) ) ) ;
62
+ assert ! ( eq_u32x4( u32x4( 1 , 2 , 3 , !0 ) <= u32x4( 3 , 2 , 1 , 0 ) , u32x4( !0 , !0 , 0 , 0 ) ) ) ;
63
+ assert ! ( eq_u32x4( u32x4( 1 , 2 , 3 , !0 ) >= u32x4( 3 , 2 , 1 , 0 ) , u32x4( 0 , !0 , !0 , !0 ) ) ) ;
64
+ assert ! ( eq_u32x4( u32x4( 1 , 2 , 3 , !0 ) > u32x4( 3 , 2 , 1 , 0 ) , u32x4( 0 , 0 , !0 , !0 ) ) ) ;
64
65
65
- assert ! ( eq_i32x4( i32x4( 1 , 2 , 3 , 4 ) == i32x4( 3 , 2 , 1 , 0 ) , i32x4( 0 , !0 , 0 , 0 ) ) ) ;
66
- assert ! ( eq_i32x4( i32x4( 1 , 2 , 3 , 4 ) != i32x4( 3 , 2 , 1 , 0 ) , i32x4( !0 , 0 , !0 , !0 ) ) ) ;
67
- assert ! ( eq_i32x4( i32x4( 1 , 2 , 3 , 4 ) < i32x4( 3 , 2 , 1 , 0 ) , i32x4( !0 , 0 , 0 , 0 ) ) ) ;
68
- assert ! ( eq_i32x4( i32x4( 1 , 2 , 3 , 4 ) <= i32x4( 3 , 2 , 1 , 0 ) , i32x4( !0 , !0 , 0 , 0 ) ) ) ;
69
- assert ! ( eq_i32x4( i32x4( 1 , 2 , 3 , 4 ) >= i32x4( 3 , 2 , 1 , 0 ) , i32x4( 0 , !0 , !0 , ! 0 ) ) ) ;
70
- assert ! ( eq_i32x4( i32x4( 1 , 2 , 3 , 4 ) > i32x4( 3 , 2 , 1 , 0 ) , i32x4( 0 , 0 , !0 , ! 0 ) ) ) ;
66
+ assert ! ( eq_i32x4( i32x4( 1 , 2 , 3 , - 1 ) == i32x4( 3 , 2 , 1 , 0 ) , i32x4( 0 , !0 , 0 , 0 ) ) ) ;
67
+ assert ! ( eq_i32x4( i32x4( 1 , 2 , 3 , - 1 ) != i32x4( 3 , 2 , 1 , 0 ) , i32x4( !0 , 0 , !0 , !0 ) ) ) ;
68
+ assert ! ( eq_i32x4( i32x4( 1 , 2 , 3 , - 1 ) < i32x4( 3 , 2 , 1 , 0 ) , i32x4( !0 , 0 , 0 , ! 0 ) ) ) ;
69
+ assert ! ( eq_i32x4( i32x4( 1 , 2 , 3 , - 1 ) <= i32x4( 3 , 2 , 1 , 0 ) , i32x4( !0 , !0 , 0 , ! 0 ) ) ) ;
70
+ assert ! ( eq_i32x4( i32x4( 1 , 2 , 3 , - 1 ) >= i32x4( 3 , 2 , 1 , 0 ) , i32x4( 0 , !0 , !0 , 0 ) ) ) ;
71
+ assert ! ( eq_i32x4( i32x4( 1 , 2 , 3 , - 1 ) > i32x4( 3 , 2 , 1 , 0 ) , i32x4( 0 , 0 , !0 , 0 ) ) ) ;
71
72
}
0 commit comments