]> granicus.if.org Git - clang/commit
Driver: Link crtfastmath.o if it's available and -ffast-math is specified.
authorBenjamin Kramer <benny.kra@googlemail.com>
Thu, 4 Oct 2012 19:42:20 +0000 (19:42 +0000)
committerBenjamin Kramer <benny.kra@googlemail.com>
Thu, 4 Oct 2012 19:42:20 +0000 (19:42 +0000)
commite20e508aecf413f84b0dc4928cbf4bb5ce6c5bdc
treecf81b2047df1ac17e3e7ac18d94ba1451fd8f533
parent45bed131a1a4219cc0bfb3c9f666dca54ddb59fa
Driver: Link crtfastmath.o if it's available and -ffast-math is specified.

crtfastmath.o contains routines to set the floating point flags to a faster,
unsafe mode. Linking it in speeds up code dealing with denormals significantly
(PR14024).

For now this is only enabled on linux where I can test it and crtfastmath.o is
widely available. We may want to provide a similar file with compiler-rt
eventually and/or enable it on other platforms too.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165240 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/Driver/ToolChain.h
lib/Driver/ToolChain.cpp
lib/Driver/Tools.cpp
test/Driver/Inputs/basic_linux_tree/usr/lib/gcc/x86_64-unknown-linux/4.6.0/crtfastmath.o [new file with mode: 0644]
test/Driver/linux-ld.c