File tree Expand file tree Collapse file tree 5 files changed +18
-48
lines changed
library/coretests/tests/floats Expand file tree Collapse file tree 5 files changed +18
-48
lines changed Original file line number Diff line number Diff line change @@ -40,18 +40,6 @@ const NAN_MASK2: u128 = 0x00005555555555555555555555555555;
4040// FIXME(f16_f128,miri): many of these have to be disabled since miri does not yet support
4141// the intrinsics.
4242
43- #[ test]
44- fn test_neg_infinity ( ) {
45- let neg_inf: f128 = f128:: NEG_INFINITY ;
46- assert ! ( neg_inf. is_infinite( ) ) ;
47- assert ! ( !neg_inf. is_finite( ) ) ;
48- assert ! ( !neg_inf. is_sign_positive( ) ) ;
49- assert ! ( neg_inf. is_sign_negative( ) ) ;
50- assert ! ( !neg_inf. is_nan( ) ) ;
51- assert ! ( !neg_inf. is_normal( ) ) ;
52- assert_eq ! ( Fp :: Infinite , neg_inf. classify( ) ) ;
53- }
54-
5543#[ test]
5644fn test_zero ( ) {
5745 let zero: f128 = 0.0f128 ;
Original file line number Diff line number Diff line change @@ -46,18 +46,6 @@ const NAN_MASK2: u16 = 0x0155;
4646// FIXME(f16_f128,miri): many of these have to be disabled since miri does not yet support
4747// the intrinsics.
4848
49- #[ test]
50- fn test_neg_infinity ( ) {
51- let neg_inf: f16 = f16:: NEG_INFINITY ;
52- assert ! ( neg_inf. is_infinite( ) ) ;
53- assert ! ( !neg_inf. is_finite( ) ) ;
54- assert ! ( !neg_inf. is_sign_positive( ) ) ;
55- assert ! ( neg_inf. is_sign_negative( ) ) ;
56- assert ! ( !neg_inf. is_nan( ) ) ;
57- assert ! ( !neg_inf. is_normal( ) ) ;
58- assert_eq ! ( Fp :: Infinite , neg_inf. classify( ) ) ;
59- }
60-
6149#[ test]
6250fn test_zero ( ) {
6351 let zero: f16 = 0.0f16 ;
Original file line number Diff line number Diff line change @@ -30,18 +30,6 @@ const NAN_MASK2: u32 = 0x0055_5555;
3030/// They serve as a way to get an idea of the real precision of floating point operations on different platforms.
3131const APPROX_DELTA : f32 = if cfg ! ( miri) { 1e-4 } else { 1e-6 } ;
3232
33- #[ test]
34- fn test_neg_infinity ( ) {
35- let neg_inf: f32 = f32:: NEG_INFINITY ;
36- assert ! ( neg_inf. is_infinite( ) ) ;
37- assert ! ( !neg_inf. is_finite( ) ) ;
38- assert ! ( !neg_inf. is_sign_positive( ) ) ;
39- assert ! ( neg_inf. is_sign_negative( ) ) ;
40- assert ! ( !neg_inf. is_nan( ) ) ;
41- assert ! ( !neg_inf. is_normal( ) ) ;
42- assert_eq ! ( Fp :: Infinite , neg_inf. classify( ) ) ;
43- }
44-
4533#[ test]
4634fn test_zero ( ) {
4735 let zero: f32 = 0.0f32 ;
Original file line number Diff line number Diff line change @@ -25,18 +25,6 @@ const NAN_MASK1: u64 = 0x000a_aaaa_aaaa_aaaa;
2525/// Second pattern over the mantissa
2626const NAN_MASK2 : u64 = 0x0005_5555_5555_5555 ;
2727
28- #[ test]
29- fn test_neg_infinity ( ) {
30- let neg_inf: f64 = f64:: NEG_INFINITY ;
31- assert ! ( neg_inf. is_infinite( ) ) ;
32- assert ! ( !neg_inf. is_finite( ) ) ;
33- assert ! ( !neg_inf. is_sign_positive( ) ) ;
34- assert ! ( neg_inf. is_sign_negative( ) ) ;
35- assert ! ( !neg_inf. is_nan( ) ) ;
36- assert ! ( !neg_inf. is_normal( ) ) ;
37- assert_eq ! ( Fp :: Infinite , neg_inf. classify( ) ) ;
38- }
39-
4028#[ test]
4129fn test_zero ( ) {
4230 let zero: f64 = 0.0f64 ;
Original file line number Diff line number Diff line change @@ -304,6 +304,24 @@ float_test! {
304304 }
305305}
306306
307+ float_test ! {
308+ name: neg_infinity,
309+ attrs: {
310+ f16: #[ cfg( any( miri, target_has_reliable_f16) ) ] ,
311+ f128: #[ cfg( any( miri, target_has_reliable_f128) ) ] ,
312+ } ,
313+ test<Float > {
314+ let neg_inf: Float = Float :: NEG_INFINITY ;
315+ assert!( neg_inf. is_infinite( ) ) ;
316+ assert!( !neg_inf. is_finite( ) ) ;
317+ assert!( !neg_inf. is_sign_positive( ) ) ;
318+ assert!( neg_inf. is_sign_negative( ) ) ;
319+ assert!( !neg_inf. is_nan( ) ) ;
320+ assert!( !neg_inf. is_normal( ) ) ;
321+ assert!( matches!( neg_inf. classify( ) , Fp :: Infinite ) ) ;
322+ }
323+ }
324+
307325float_test ! {
308326 name: min,
309327 attrs: {
You can’t perform that action at this time.
0 commit comments