[llvm] r374243 - [InstCombine] Fix PR43617
Evandro Menezes via llvm-commits
llvm-commits at lists.llvm.org
Thu Oct 10 13:02:08 PDT 2019
Neat!
--
Evandro Menezes
On 10/9/19 6:07 PM, Craig Topper wrote:
> You could just use the CallInst version of getIntrinsicID() which
> already does the right thing
>
> ~Craig
>
>
> On Wed, Oct 9, 2019 at 3:01 PM Evandro Menezes via llvm-commits
> <llvm-commits at lists.llvm.org <mailto:llvm-commits at lists.llvm.org>> wrote:
>
> Author: evandro
> Date: Wed Oct 9 15:03:23 2019
> New Revision: 374243
>
> URL: http://llvm.org/viewvc/llvm-project?rev=374243&view=rev
> Log:
> [InstCombine] Fix PR43617
>
> Check for `nullptr` before inspecting composite function.
>
> Modified:
> llvm/trunk/lib/Transforms/Utils/SimplifyLibCalls.cpp
>
> Modified: llvm/trunk/lib/Transforms/Utils/SimplifyLibCalls.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Utils/SimplifyLibCalls.cpp?rev=374243&r1=374242&r2=374243&view=diff
> ==============================================================================
> --- llvm/trunk/lib/Transforms/Utils/SimplifyLibCalls.cpp (original)
> +++ llvm/trunk/lib/Transforms/Utils/SimplifyLibCalls.cpp Wed Oct
> 9 15:03:23 2019
> @@ -1916,10 +1916,10 @@ Value *LibCallSimplifier::optimizeLog(Ca
> B.setFastMathFlags(FastMathFlags::getFast());
>
> Function *ArgFn = Arg->getCalledFunction();
> - StringRef ArgNm = ArgFn->getName();
> - Intrinsic::ID ArgID = ArgFn->getIntrinsicID();
> + Intrinsic::ID ArgID =
> + ArgFn ? ArgFn->getIntrinsicID() : Intrinsic::not_intrinsic;
> LibFunc ArgLb = NotLibFunc;
> - TLI->getLibFunc(ArgNm, ArgLb);
> + TLI->getLibFunc(Arg, ArgLb);
>
> // log(pow(x,y)) -> y*log(x)
> if (ArgLb == PowLb || ArgID == Intrinsic::pow) {
> @@ -1934,9 +1934,10 @@ Value *LibCallSimplifier::optimizeLog(Ca
> substituteInParent(Arg, MulY);
> return MulY;
> }
> +
> // log(exp{,2,10}(y)) -> y*log({e,2,10})
> // TODO: There is no exp10() intrinsic yet.
> - else if (ArgLb == ExpLb || ArgLb == Exp2Lb || ArgLb == Exp10Lb ||
> + if (ArgLb == ExpLb || ArgLb == Exp2Lb || ArgLb == Exp10Lb ||
> ArgID == Intrinsic::exp || ArgID == Intrinsic::exp2) {
> Constant *Eul;
> if (ArgLb == ExpLb || ArgID == Intrinsic::exp)
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org <mailto:llvm-commits at lists.llvm.org>
> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20191010/ac7cf48f/attachment.html>
More information about the llvm-commits
mailing list