summaryrefslogtreecommitdiffstats
path: root/llvm/test/Transforms/IPConstantProp
diff options
context:
space:
mode:
authorFlorian Hahn <florian.hahn@arm.com>2018-08-23 11:04:00 +0000
committerFlorian Hahn <florian.hahn@arm.com>2018-08-23 11:04:00 +0000
commit3052290dc04e9c876ce47b469f276134c3d25242 (patch)
tree098ea903471944ec7e7b7e1d30ebc5a9c40f8a91 /llvm/test/Transforms/IPConstantProp
parent9f356ddec88e0e49804e14ff2fafcf125da17481 (diff)
downloadbcm5719-llvm-3052290dc04e9c876ce47b469f276134c3d25242.tar.gz
bcm5719-llvm-3052290dc04e9c876ce47b469f276134c3d25242.zip
Recommit r333268: [IPSCCP] Use PredicateInfo to propagate facts from cmp instructions.
This version of the patch fixes cleaning up ssa_copy intrinsics, so it does not crash for instructions in blocks that have been marked unreachable. This patch updates IPSCCP to use PredicateInfo to propagate facts to true branches predicated by EQ and to false branches predicated by NE. As a follow up, we should be able to extend it to also propagate additional facts about nonnull. Reviewers: davide, mssimpso, dberlin, efriedma Reviewed By: davide, dberlin Differential Revision: https://reviews.llvm.org/D45330 llvm-svn: 340525
Diffstat (limited to 'llvm/test/Transforms/IPConstantProp')
-rw-r--r--llvm/test/Transforms/IPConstantProp/musttail-call.ll4
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/test/Transforms/IPConstantProp/musttail-call.ll b/llvm/test/Transforms/IPConstantProp/musttail-call.ll
index 75877585710..567ca408099 100644
--- a/llvm/test/Transforms/IPConstantProp/musttail-call.ll
+++ b/llvm/test/Transforms/IPConstantProp/musttail-call.ll
@@ -9,7 +9,7 @@ define i8* @start(i8 %v) {
%c1 = icmp eq i8 %v, 0
br i1 %c1, label %true, label %false
true:
- ; CHECK: %ca = musttail call i8* @side_effects(i8 %v)
+ ; CHECK: %ca = musttail call i8* @side_effects(i8 0)
; CHECK: ret i8* %ca
%ca = musttail call i8* @side_effects(i8 %v)
ret i8* %ca
@@ -34,7 +34,7 @@ define internal i8* @side_effects(i8 %v) {
; is always `null`.
; The call can't be removed due to `external` call above, though.
- ; CHECK: %ca = musttail call i8* @start(i8 %v)
+ ; CHECK: %ca = musttail call i8* @start(i8 0)
%ca = musttail call i8* @start(i8 %v)
; Thus the result must be returned anyway
OpenPOWER on IntegriCloud