[PATCH] D50035: [SLC] Fix precision shrinking for pow()
Sanjay Patel via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Jul 31 08:17:16 PDT 2018
spatel added a comment.
This patch is still making multiple functional changes, so it needs to be split up.
IIUC, the changes to the match() statements are all functional diffs (maybe only using the llvm intrinsics with vector types?), but there are no tests for those?
I'm still distracted by the NFC whitespace, formatting, and comment diffs. Please make those before/after the functional change.
I updated the test file and added the baseline tests from this rev at https://reviews.llvm.org/rL338392. Use the script to auto-generate new CHECK lines.
================
Comment at: llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp:1181
+ Name == TLI->getName(LibFunc_pow) && hasFloatVersion(Name))
+ Shrunk = optimizeBinaryDoubleFP(Pow, B);
+
----------------
This change should be its own patch. It fixes a miscompile - we were wrongly shrinking pow(x, y) as a unary function.
Repository:
rL LLVM
https://reviews.llvm.org/D50035
More information about the llvm-commits
mailing list