@@ -3033,13 +3033,13 @@ private
3033
3033
4.5270000862445199635215E-5 ,
3034
3034
];
3035
3035
static immutable double [7 ] logp1Q = [
3036
- 1.0000000000000000000000E0 ,
3037
3036
6.0118660497603843919306E1 ,
3038
3037
2.1642788614495947685003E2 ,
3039
3038
3.0909872225312059774938E2 ,
3040
3039
2.2176239823732856465394E2 ,
3041
3040
8.3047565967967209469434E1 ,
3042
3041
1.5062909083469192043167E1 ,
3042
+ 1.0000000000000000000000E0 ,
3043
3043
];
3044
3044
3045
3045
static immutable double [7 ] log10P = [
@@ -3101,13 +3101,13 @@ private
3101
3101
4.5270000862E-5 ,
3102
3102
];
3103
3103
static immutable float [7 ] logp1Q = [
3104
- 1.00000000000E0 ,
3105
3104
6.01186604976E1 ,
3106
3105
2.16427886144E2 ,
3107
3106
3.09098722253E2 ,
3108
3107
2.21762398237E2 ,
3109
3108
8.30475659679E1 ,
3110
3109
1.50629090834E1 ,
3110
+ 1.00000000000E0 ,
3111
3111
];
3112
3112
3113
3113
// log2 and log10 uses the same coefficients as log.
@@ -3323,7 +3323,7 @@ private T logImpl(T, bool LOG1P = false)(T x) @safe pure nothrow @nogc
3323
3323
}
3324
3324
static foreach (F; AliasSeq! (float , double , real ))
3325
3325
{{
3326
- F[2 ][24 ] vals = [
3326
+ scope F[2 ][] vals = [
3327
3327
[F(1 ), F(0x0p+ 0 )], [F(2 ), F(0x1 .62e42fefa39ef358p- 1 )],
3328
3328
[F(4 ), F(0x1 .62e42fefa39ef358p+ 0 )], [F(8 ), F(0x1 .0a2b23f3bab73682p+ 1 )],
3329
3329
[F(16 ), F(0x1 .62e42fefa39ef358p+ 1 )], [F(32 ), F(0x1 .bb9d3beb8c86b02ep+ 1 )],
@@ -3335,6 +3335,9 @@ private T logImpl(T, bool LOG1P = false)(T x) @safe pure nothrow @nogc
3335
3335
[F(17 ), F(0x1 .6aa6bc1fa7f79cfp+ 1 )], [F(31 ), F(0x1 .b78ce48912b59f12p+ 1 )],
3336
3336
[F(33 ), F(0x1 .bf8d8f4d5b8d1038p+ 1 )], [F(63 ), F(0x1 .09291e8e3181b20ep+ 2 )],
3337
3337
[F(65 ), F(0x1 .0b292939429755ap+ 2 )], [F(- 0 ), - F.infinity], [F(0 ), - F.infinity],
3338
+ [F(0.1 ), F(- 0x1 .26bb1bbb5551582ep+ 1 )], [F(0.25 ), F(- 0x1 .62e42fefa39ef358p+ 0 )],
3339
+ [F(0.75 ), F(- 0x1 .269621134db92784p- 2 )], [F(0.875 ), F(- 0x1 .1178e8227e47bde4p- 3 )],
3340
+ [F(10 ), F(0x1 .26bb1bbb5551582ep+ 1 )], [F(100 ), F(0x1 .26bb1bbb5551582ep+ 2 )],
3338
3341
[F(10000 ), F(0x1 .26bb1bbb5551582ep+ 3 )],
3339
3342
];
3340
3343
testLog(vals);
@@ -3572,7 +3575,7 @@ Ldone:
3572
3575
}
3573
3576
static foreach (F; AliasSeq! (float , double , real ))
3574
3577
{{
3575
- F[2 ][24 ] vals = [
3578
+ scope F[2 ][] vals = [
3576
3579
[F(1 ), F(0x0p+ 0 )], [F(2 ), F(0x1 .34413509f79fef32p- 2 )],
3577
3580
[F(4 ), F(0x1 .34413509f79fef32p- 1 )], [F(8 ), F(0x1 .ce61cf8ef36fe6cap- 1 )],
3578
3581
[F(16 ), F(0x1 .34413509f79fef32p+ 0 )], [F(32 ), F(0x1 .8151824c7587eafep+ 0 )],
@@ -3584,7 +3587,9 @@ Ldone:
3584
3587
[F(17 ), F(0x1 .3afeb354b7d9731ap+ 0 )], [F(31 ), F(0x1 .7dc9e145867e62eap+ 0 )],
3585
3588
[F(33 ), F(0x1 .84bd545e4baeddp+ 0 )], [F(63 ), F(0x1 .cca1950e4511e192p+ 0 )],
3586
3589
[F(65 ), F(0x1 .d01b16f9433cf7b8p+ 0 )], [F(- 0 ), - F.infinity], [F(0 ), - F.infinity],
3587
- [F(10000 ), F(0x1p+ 2 )],
3590
+ [F(0.1 ), F(- 0x1p+ 0 )], [F(0.25 ), F(- 0x1 .34413509f79fef32p- 1 )],
3591
+ [F(0.75 ), F(- 0x1 .ffbfc2bbc7803758p- 4 )], [F(0.875 ), F(- 0x1 .db11ed766abf432ep- 5 )],
3592
+ [F(10 ), F(0x1p+ 0 )], [F(100 ), F(0x1p+ 1 )], [F(10000 ), F(0x1p+ 2 )],
3588
3593
];
3589
3594
testLog10(vals);
3590
3595
}}
@@ -3758,7 +3763,7 @@ private T log1pImpl(T)(T x) @safe pure nothrow @nogc
3758
3763
}
3759
3764
static foreach (F; AliasSeq! (float , double , real ))
3760
3765
{{
3761
- F[2 ][24 ] vals = [
3766
+ scope F[2 ][] vals = [
3762
3767
[F(1 ), F(0x1 .62e42fefa39ef358p- 1 )], [F(2 ), F(0x1 .193ea7aad030a976p+ 0 )],
3763
3768
[F(4 ), F(0x1 .9c041f7ed8d336bp+ 0 )], [F(8 ), F(0x1 .193ea7aad030a976p+ 1 )],
3764
3769
[F(16 ), F(0x1 .6aa6bc1fa7f79cfp+ 1 )], [F(32 ), F(0x1 .bf8d8f4d5b8d1038p+ 1 )],
@@ -3770,6 +3775,9 @@ private T log1pImpl(T)(T x) @safe pure nothrow @nogc
3770
3775
[F(17 ), F(0x1 .71f7b3a6b918664cp+ 1 )], [F(31 ), F(0x1 .bb9d3beb8c86b02ep+ 1 )],
3771
3776
[F(33 ), F(0x1 .c35fc81b90df59c6p+ 1 )], [F(63 ), F(0x1 .0a2b23f3bab73682p+ 2 )],
3772
3777
[F(65 ), F(0x1 .0c234da4a23a6686p+ 2 )], [F(- 0 ), F(- 0x0p+ 0 )], [F(0 ), F(0x0p+ 0 )],
3778
+ [F(0.1 ), F(0x1 .8663f793c46c69cp- 4 )], [F(0.25 ), F(0x1 .c8ff7c79a9a21ac4p- 3 )],
3779
+ [F(0.75 ), F(0x1 .1e85f5e7040d03ep- 1 )], [F(0.875 ), F(0x1 .41d8fe84672ae646p- 1 )],
3780
+ [F(10 ), F(0x1 .32ee3b77f374bb7cp+ 1 )], [F(100 ), F(0x1 .275e2271bba30be4p+ 2 )],
3773
3781
[F(10000 ), F(0x1 .26bbed6fbd84182ep+ 3 )],
3774
3782
];
3775
3783
testLog1p(vals);
@@ -3981,7 +3989,7 @@ Ldone:
3981
3989
}
3982
3990
static foreach (F; AliasSeq! (float , double , real ))
3983
3991
{{
3984
- F[2 ][24 ] vals = [
3992
+ scope F[2 ][] vals = [
3985
3993
[F(1 ), F(0x0p+ 0 )], [F(2 ), F(0x1p+ 0 )],
3986
3994
[F(4 ), F(0x1p+ 1 )], [F(8 ), F(0x1 .8p+ 1 )],
3987
3995
[F(16 ), F(0x1p+ 2 )], [F(32 ), F(0x1 .4p+ 2 )],
@@ -3993,6 +4001,9 @@ Ldone:
3993
4001
[F(17 ), F(0x1 .0598fdbeb244c5ap+ 2 )], [F(31 ), F(0x1 .3d118d66c4d4e554p+ 2 )],
3994
4002
[F(33 ), F(0x1 .42d75a6eb1dfb0e6p+ 2 )], [F(63 ), F(0x1 .7e8bc1179e0caa9cp+ 2 )],
3995
4003
[F(65 ), F(0x1 .816e79685c2d2298p+ 2 )], [F(- 0 ), - F.infinity], [F(0 ), - F.infinity],
4004
+ [F(0.1 ), F(- 0x1 .a934f0979a3715fcp+ 1 )], [F(0.25 ), F(- 0x1p+ 1 )],
4005
+ [F(0.75 ), F(- 0x1 .a8ff971810a5e182p- 2 )], [F(0.875 ), F(- 0x1 .8a8980abfbd32668p- 3 )],
4006
+ [F(10 ), F(0x1 .a934f0979a3715fcp+ 1 )], [F(100 ), F(0x1 .a934f0979a3715fcp+ 2 )],
3996
4007
[F(10000 ), F(0x1 .a934f0979a3715fcp+ 3 )],
3997
4008
];
3998
4009
testLog2(vals);
@@ -4178,7 +4189,7 @@ private T logbImpl(T)(T x) @trusted pure nothrow @nogc
4178
4189
}
4179
4190
static foreach (F; AliasSeq! (float , double , real ))
4180
4191
{{
4181
- F[2 ][24 ] vals = [
4192
+ scope F[2 ][] vals = [
4182
4193
[F(1 ), F(0x0p+ 0 )], [F(2 ), F(0x1p+ 0 )],
4183
4194
[F(4 ), F(0x1p+ 1 )], [F(8 ), F(0x1 .8p+ 1 )],
4184
4195
[F(16 ), F(0x1p+ 2 )], [F(32 ), F(0x1 .4p+ 2 )],
@@ -4190,6 +4201,9 @@ private T logbImpl(T)(T x) @trusted pure nothrow @nogc
4190
4201
[F(17 ), F(0x1p+ 2 )], [F(31 ), F(0x1p+ 2 )],
4191
4202
[F(33 ), F(0x1 .4p+ 2 )], [F(63 ), F(0x1 .4p+ 2 )],
4192
4203
[F(65 ), F(0x1 .8p+ 2 )], [F(- 0 ), - F.infinity], [F(0 ), - F.infinity],
4204
+ [F(0.1 ), F(- 0x1p+ 2 )], [F(0.25 ), F(- 0x1p+ 1 )],
4205
+ [F(0.75 ), F(- 0x1p+ 0 )], [F(0.875 ), F(- 0x1p+ 0 )],
4206
+ [F(10 ), F(0x1 .8p+ 1 )], [F(100 ), F(0x1 .8p+ 2 )],
4193
4207
[F(10000 ), F(0x1 .ap+ 3 )],
4194
4208
];
4195
4209
testLogb(vals);
0 commit comments