diff options
author | Sanjay Patel <spatel@rotateright.com> | 2016-01-11 22:34:19 +0000 |
---|---|---|
committer | Sanjay Patel <spatel@rotateright.com> | 2016-01-11 22:34:19 +0000 |
commit | 683f29735f71c7f1012999e54b25ec0f1200bae9 (patch) | |
tree | 27edb326d3e7150f188e327eb698d1eb3e8a3e51 /lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp | |
parent | 34ea70a5c9f3d89092c40fe7f3e900dbe3e1c53a (diff) | |
download | bcm5719-llvm-683f29735f71c7f1012999e54b25ec0f1200bae9.tar.gz bcm5719-llvm-683f29735f71c7f1012999e54b25ec0f1200bae9.zip |
[LibCallSimplifier] use instruction-level fast-math-flags to transform sqrt calls
This is a continuation of adding FMF to call instructions:
http://reviews.llvm.org/rL255555
The intent of the patch is to preserve the current behavior of the transform except
that we use the sqrt instruction's 'fast' attribute as a trigger rather than the
function-level attribute.
But this raises a bug noted by the new FIXME comment.
In order to do this transform:
sqrt((x * x) * y) ---> fabs(x) * sqrt(y)
...we need all of the sqrt, the first fmul, and the second fmul to be 'fast'.
If any of those ops is strict, we should bail out.
Differential Revision: http://reviews.llvm.org/D15937
llvm-svn: 257400
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp')
0 files changed, 0 insertions, 0 deletions