Lars T. Kyllingstad
69e8663fc1
Add sin(), cos() and sqrt() to std.complex
...
This also requires std.math.coshisinh() to be accessible to std.complex,
so I changed its protection attribute to "package".
2011-08-24 14:55:45 +02:00
Don Clugston
d790dfa102
Deprecate gamma and error functions from std.math
...
Their replacements in std.mathspecial have been available for almost one year.
2011-08-05 14:11:38 +02:00
KennyTM~
8cb450d36c
Improve the precision of the std.math constants.
2011-07-06 19:41:11 +08:00
Don Clugston
ea8e37d350
denormalizedException -> subnormalException
...
The term "denormal" is deprecated by IEEE, and should be replaced by
"subnormal" in all cases. Fix all the comments to make sure this confusion
doesn't happen again.
2011-07-05 08:06:23 +02:00
Don Clugston
e3c1185692
IEEE exceptions and status flags are properties
...
They are all global properties of the processor, so it makes a lot of sense
for them to look like global variables.
2011-06-30 02:12:57 +02:00
Jens K. Mueller
77aa890a72
Add denormalizedException
...
The denormalizedException is set whenever a denormalized value is
manipulated or created. It is useful to know that denormalized values
are generated because it indicates that precision is low.
Further performance of denormalized number can be up to 100 times slower
even when handled in hardware (see Table 2 in "Quantifying the
Interference Caused by Subnormal Floating-Point Values" by Isaac Dooley
and Laxmikant Kale).
2011-06-30 02:12:57 +02:00
Walter Bright
f2cca2a761
remove 64 bit dependence on sahf
2011-02-19 23:07:13 -08:00
Walter Bright
046e1b36db
add source links
2011-02-06 15:46:50 -08:00
Andrei Alexandrescu
2c8d824173
unconditionalized unittest for round
2011-01-09 20:47:20 +00:00
Andrei Alexandrescu
0d68ef4531
conditionalized unittest for round
2011-01-09 20:43:19 +00:00
Don Clugston
87cee7103a
Fix broken math unittest build on Windows
2011-01-09 19:56:04 +00:00
Andrei Alexandrescu
0efff7fcee
Added unittests for http://d.puremagic.com/issues/show_bug.cgi?id=2944
2011-01-09 16:38:15 +00:00
Don Clugston
87e2382a36
Fix 64-bit segfaults in std.math.
2011-01-04 22:15:32 +00:00
Andrei Alexandrescu
fc8603304c
approxEqual misses -infinity
2011-01-03 02:06:28 +00:00
Brad Roberts
069efcb49b
Integrate changes from the d1 branch, still not enough to pass the std/math.d unit tests.
2011-01-01 23:25:59 +00:00
Walter Bright
b67b3a86ec
start on 64 bit math by Don
2010-12-31 09:38:01 +00:00
Brad Roberts
53f7fa5b2d
Check in x86_64 code paths as not implemented yet for the std.math routines that require purity, which isn't provided by the libc versions of the math functions.
2010-12-08 09:23:40 +00:00
Don Clugston
719be00105
Fix svn 2212, for x86_64.
2010-12-08 05:15:04 +00:00
Don Clugston
22c8beec58
5321: std.math: assumes X86 or X86_64 on FPU control word code
2010-12-08 00:47:29 +00:00
Don Clugston
ea766d9f71
5322 std.math: version(Sparc) should be SPARC
2010-12-08 00:41:01 +00:00
Don Clugston
b020b39837
5330 Druntime/Phobos: remove special treatment for GDC
2010-12-07 14:12:16 +00:00
Don Clugston
9cd7f3bcb8
Fixes 5293: std.math: Error: shift by -48 is outside the range 0..32
2010-12-03 03:25:13 +00:00
Don Clugston
0c3fa93cab
Improved math summary comment
2010-11-24 07:58:00 +00:00
Don Clugston
a01b125a99
Make lrint() pure
2010-11-18 19:33:48 +00:00
Don Clugston
5ede508f0e
Minor ddoc fixes for std.math and std.bigint
2010-11-17 20:42:28 +00:00
Masahiro Nakagawa
b18edad5eb
std.math.remquo marked as @trusted because this method calls system function.
2010-11-12 18:42:26 +00:00
Don Clugston
9fec44b8f9
Remove the "NotImplemented" exception, and turn it into a simple assert. This allows all functions to be marked as nothrow. I have marked them all as @safe/@trusted as well.
2010-11-12 08:00:53 +00:00
Don Clugston
b6890792bf
D implementation of pow(), avoiding dependence on C. The big benefit is that pow() is now pure, but also improved accuracy of corner cases.
...
All math functions are now @safe or @trusted, and all are pure nothrow except where implemented by C functions.
2010-11-11 22:52:37 +00:00
Andrei Alexandrescu
3973b5e4cc
Fix for bugzilla 2944
2010-09-27 01:10:12 +00:00
Andrei Alexandrescu
05bf376c17
Fix for bugzilla 2944
2010-09-26 22:45:48 +00:00
Andrei Alexandrescu
3f2b8c12ea
64-bit compatibility work
2010-08-22 20:55:22 +00:00
Andrei Alexandrescu
cca7ba835a
versioned out failing asserts on OSX
2010-08-17 15:11:26 +00:00
Shin Fujishiro
caa561b3b2
std.math: ddoc fix
2010-08-16 18:57:05 +00:00
Lars T. Kyllingstad
4de804f614
Applied pure and nothrow to std.complex. To make this work, I had to add a few nothrows to std.math.pow() as well.
2010-08-13 09:58:13 +00:00
David Simcha
d802acc381
Fix lying comment.
2010-08-12 02:47:21 +00:00
David Simcha
0c8d66a4aa
Bug 4455: Taking the sqrt of an integer shouldn't require an explicit cast.
2010-08-12 02:43:52 +00:00
David Simcha
06c166e10a
Fix several related bugs in std.math.pow(), massively improve unittests.
2010-08-12 02:00:17 +00:00
Lars T. Kyllingstad
032d9dab2d
Fixed bug 3202: std.math.pow cause dead loop
2010-06-22 07:12:24 +00:00
Don Clugston
11d92705e4
B sting. I think this is the last one.
2010-06-21 20:24:25 +00:00
Walter Bright
748293a341
add @safe to builtin functions
2010-05-25 04:03:09 +00:00
Shin Fujishiro
4e2d8f30fd
Added FreeBSD code.
2010-05-17 03:02:16 +00:00
Don Clugston
6e3b8dc2b1
Improved comments.
2010-03-29 15:37:47 +00:00
Don Clugston
3a19169d27
Fix 4023: std.math.hypot() returns infinity when either argument is zero
2010-03-29 08:03:28 +00:00
Don Clugston
3b75480359
Support pow(int, int) in preparation for improvements to ^^.
2009-12-21 09:30:40 +00:00
Walter Bright
d340dab9f3
inout to ref
2009-12-19 07:46:41 +00:00
Don Clugston
a8cb0ed7b0
Added asm versions of atan2, asin, acos, atan -- closes bug 2664.
...
Inverse trig functions are now pure nothrow.
Added FloatControl, IeeeFlags for enabling floating-point exceptions.
Added unittests for exp().
2009-11-30 10:30:46 +00:00
Walter Bright
f8b01a88a5
fixe makefile for 64 bits
2009-11-13 02:31:11 +00:00
Don Clugston
1eea3f3895
Removed all references to float.min, replaced with float.min_normal.
2009-11-06 16:02:45 +00:00
Andrei Alexandrescu
dbd4e31f19
Minor optimization in decode
2009-10-27 03:29:55 +00:00
Don Clugston
c7d21f0233
Fix most of the formatting issues with std.math.
2009-10-01 00:56:27 +00:00