From df1a1b113b557d99d828c38d2f0b2c72313fbd66 Mon Sep 17 00:00:00 2001 From: Jingyue Wu Date: Thu, 1 Oct 2015 03:51:44 +0000 Subject: [NaryReassociate] SeenExprs records WeakVH Summary: The instructions SeenExprs records may be deleted during rewriting. FindClosestMatchingDominator should ignore these deleted instructions. Fixes PR24301. Reviewers: grosser Subscribers: grosser, llvm-commits Differential Revision: http://reviews.llvm.org/D13315 llvm-svn: 248983 --- llvm/test/Transforms/NaryReassociate/pr24301.ll | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 llvm/test/Transforms/NaryReassociate/pr24301.ll (limited to 'llvm/test/Transforms') diff --git a/llvm/test/Transforms/NaryReassociate/pr24301.ll b/llvm/test/Transforms/NaryReassociate/pr24301.ll new file mode 100644 index 00000000000..898707831f9 --- /dev/null +++ b/llvm/test/Transforms/NaryReassociate/pr24301.ll @@ -0,0 +1,14 @@ +; RUN: opt < %s -nary-reassociate -S | FileCheck %s + +define i32 @foo(i32 %tmp4) { +; CHECK-LABEL: @foo( +entry: + %tmp5 = add i32 %tmp4, 8 + %tmp13 = add i32 %tmp4, -128 ; deleted + %tmp14 = add i32 %tmp13, 8 ; => %tmp5 + -128 + %tmp21 = add i32 119, %tmp4 + ; do not rewrite %tmp23 against %tmp13 because %tmp13 is already deleted + %tmp23 = add i32 %tmp21, -128 +; CHECK: %tmp23 = add i32 %tmp21, -128 + ret i32 %tmp23 +} -- cgit v1.2.3