@@ -26,7 +26,7 @@ pub fn default_ulp(ctx: &CheckCtx) -> u32 {
26
26
// Overrides that apply to either basis
27
27
( _, Id :: J0 | Id :: J0f | Id :: J1 | Id :: J1f ) => {
28
28
// Results seem very target-dependent
29
- if cfg ! ( target_arch = "x86_64" ) { 4000 } else { 800_000 }
29
+ if cfg ! ( target_arch = "x86_64" ) { 40_000 } else { 800_000 }
30
30
}
31
31
( _, Id :: Jn | Id :: Jnf ) => 1000 ,
32
32
@@ -45,6 +45,7 @@ pub fn default_ulp(ctx: &CheckCtx) -> u32 {
45
45
( Mpfr , Id :: Acoshf ) => 4 ,
46
46
( Mpfr , Id :: Asinh | Id :: Asinhf ) => 2 ,
47
47
( Mpfr , Id :: Atanh | Id :: Atanhf ) => 2 ,
48
+ ( Mpfr , Id :: Atan2 ) => 2 ,
48
49
( Mpfr , Id :: Exp10 | Id :: Exp10f ) => 6 ,
49
50
( Mpfr , Id :: Lgamma | Id :: LgammaR | Id :: Lgammaf | Id :: LgammafR ) => 16 ,
50
51
( Mpfr , Id :: Sinh | Id :: Sinhf ) => 2 ,
@@ -128,6 +129,16 @@ impl MaybeOverride<(f32,)> for SpecialCase {
128
129
return XFAIL ;
129
130
}
130
131
132
+ if ctx. fn_name == "lgammaf"
133
+ || ctx. fn_name == "lgammaf_r"
134
+ && input. 0 > 4e36
135
+ && expected. is_infinite ( )
136
+ && !actual. is_infinite ( )
137
+ {
138
+ // This result should saturate but we return a finite value.
139
+ return XFAIL ;
140
+ }
141
+
131
142
maybe_check_nan_bits ( actual, expected, ctx)
132
143
}
133
144
@@ -305,6 +316,7 @@ impl MaybeOverride<(i32, f32)> for SpecialCase {
305
316
}
306
317
}
307
318
}
319
+
308
320
impl MaybeOverride < ( i32 , f64 ) > for SpecialCase {
309
321
fn check_float < F : Float > (
310
322
input : ( i32 , f64 ) ,
0 commit comments