diff options
| author | Geoff Berry <gberry@codeaurora.org> | 2017-06-12 17:15:41 +0000 |
|---|---|---|
| committer | Geoff Berry <gberry@codeaurora.org> | 2017-06-12 17:15:41 +0000 |
| commit | 06c9dc3d9c40160131ad463660d34323b5402012 (patch) | |
| tree | 1a34f8bdb21aa8a68fa8cc9f6bb903b3c8d92eef /llvm/lib/Bitcode/Reader/BitcodeReader.cpp | |
| parent | d9b77848f2ab854d187dff05449982201c9c6221 (diff) | |
[SelectionDAG] Allow sin/cos -> sincos optimization on GNU triples w/ just -fno-math-errno
Summary:
This change enables the sin(x) cos(x) -> sincos(x) optimization on GNU
target triples. This optimization was being inhibited when -ffast-math
wasn't set because sincos in GLibC does not set errno, while sin and cos
do. However, this optimization will only run if the attributes on the
sin/cos calls include readnone, which is how clang represents the fact
that it doesn't care about the errno values set by these functions (via
the -fno-math-errno flag).
Reviewers: hfinkel, bogner
Subscribers: mcrosier, javed.absar, llvm-commits, paul.redmond
Differential Revision: https://reviews.llvm.org/D32921
llvm-svn: 305204
Diffstat (limited to 'llvm/lib/Bitcode/Reader/BitcodeReader.cpp')
0 files changed, 0 insertions, 0 deletions
