OSDN Git Service

[InstSimplify] Missed optimization in math expression: log10(pow(10.0,x)) == x, log2...
authorDmitry Venikov <quolyk@gmail.com>
Sun, 3 Feb 2019 03:48:30 +0000 (03:48 +0000)
committerDmitry Venikov <quolyk@gmail.com>
Sun, 3 Feb 2019 03:48:30 +0000 (03:48 +0000)
commit505cfd572ae5be750c3a64e4ec50513578bd6358
treea9294b0cc29547351a323208730505739c09b352
parentc1923fc6c2fe07742f6f65362e0daab0cf1b71f3
[InstSimplify] Missed optimization in math expression: log10(pow(10.0,x)) == x, log2(pow(2.0,x)) == x

Summary: This patch enables folding following instructions under -ffast-math flag: log10(pow(10.0,x)) -> x, log2(pow(2.0,x)) -> x

Reviewers: hfinkel, spatel, efriedma, craig.topper, zvi, majnemer, lebedev.ri

Reviewed By: spatel, lebedev.ri

Subscribers: lebedev.ri, llvm-commits

Differential Revision: https://reviews.llvm.org/D41940

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@352981 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Analysis/InstructionSimplify.cpp
test/Transforms/InstSimplify/log10-pow10-intrinsic.ll
test/Transforms/InstSimplify/log2-pow2-intrinsic.ll