Skip to content
This repository has been archived by the owner on Feb 8, 2024. It is now read-only.

Commit

Permalink
core.math: use LLVM fabs intrinsic
Browse files Browse the repository at this point in the history
  • Loading branch information
kinke committed Oct 19, 2014
1 parent 8f13373 commit aa38bb5
Showing 1 changed file with 3 additions and 17 deletions.
20 changes: 3 additions & 17 deletions src/core/math.d
Original file line number Diff line number Diff line change
Expand Up @@ -106,9 +106,9 @@ extern (C) real rndtonl(real x);
{
version (LDC)
{
extern(D) float sqrt(float x) { return llvm_sqrt(x); }
extern(D) float sqrt(float x) { return llvm_sqrt(x); }
extern(D) double sqrt(double x) { return llvm_sqrt(x); }
extern(D) real sqrt(real x) { return llvm_sqrt(x); }
extern(D) real sqrt(real x) { return llvm_sqrt(x); }
}
else
{
Expand Down Expand Up @@ -170,21 +170,7 @@ unittest {
*/
version (LDC)
{
@trusted pure nothrow real fabs(real x)
{
version (D_InlineAsm_X86)
{
asm
{
fld x;
fabs;
}
}
else
{
return stdc.fabsl(x);
}
}
real fabs(real x) @safe pure nothrow { return llvm_fabs(x); }
}
else
real fabs(real x) @safe pure nothrow; /* intrinsic */
Expand Down

0 comments on commit aa38bb5

Please sign in to comment.