From 4497208d41497c7bd11a0e424baa46b5ff7a7f33 Mon Sep 17 00:00:00 2001 From: Philip Reames Date: Thu, 16 May 2019 20:37:20 +0000 Subject: [PATCH] [Test] Remove a bunch of cruft from a test This test hadn't been fully reduced, so do so. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@360935 91177308-0d34-0410-b5e6-96231b3b80d8 --- .../IndVarSimplify/lftr-other-uses.ll | 37 ++++++------------- 1 file changed, 11 insertions(+), 26 deletions(-) diff --git a/test/Transforms/IndVarSimplify/lftr-other-uses.ll b/test/Transforms/IndVarSimplify/lftr-other-uses.ll index 8f620f55921..f7dcb2cec60 100644 --- a/test/Transforms/IndVarSimplify/lftr-other-uses.ll +++ b/test/Transforms/IndVarSimplify/lftr-other-uses.ll @@ -1,26 +1,11 @@ ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py ; RUN: opt < %s -indvars -S | FileCheck %s -; Don't RAUW the loop's original comparison instruction if it has -; other uses which aren't dominated by the new comparison instruction. -; Test is primarily checking for an assertion failure, not the actual output - - %struct.DecRefPicMarking_s = type { i32, i32, i32, i32, i32, %struct.DecRefPicMarking_s* } - %struct.datapartition = type { %typedef.Bitstream*, %typedef.DecodingEnvironment, i32 (%struct.syntaxelement*, %struct.img_par*, %struct.inp_par*, %struct.datapartition*)* } - %struct.img_par = type { i32, i32, i32, i32, i32*, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [16 x [16 x i16]], [6 x [32 x i32]], [16 x [16 x i32]], [4 x [12 x [4 x [4 x i32]]]], [16 x i32], i32**, i32*, i32***, i32**, i32, i32, i32, i32, %typedef.Slice*, %struct.macroblock*, i32, i32, i32, i32, i32, i32, i32**, %struct.DecRefPicMarking_s*, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, [3 x i32], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32***, i32***, i32****, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, %struct.timeb, %struct.timeb, i32, i32, i32, i32, i32, i32, i32, i32 } - %struct.inp_par = type { [100 x i8], [100 x i8], [100 x i8], i32, i32, i32, i32, i32, i32, i32 } - %struct.macroblock = type { i32, i32, i32, %struct.macroblock*, %struct.macroblock*, i32, [2 x [4 x [4 x [2 x i32]]]], i32, i64, i64, i32, i32, [4 x i32], [4 x i32], i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32 } - %struct.syntaxelement = type { i32, i32, i32, i32, i32, i32, i32, i32, void (i32, i32, i32*, i32*)*, void (%struct.syntaxelement*, %struct.inp_par*, %struct.img_par*, %typedef.DecodingEnvironment*)* } - %struct.timeb = type { i32, i16, i16, i16 } - %typedef.BiContextType = type { i16, i8 } - %typedef.Bitstream = type { i32, i32, i32, i32, i8*, i32 } - %typedef.DecodingEnvironment = type { i32, i32, i32, i32, i32, i8*, i32* } - %typedef.MotionInfoContexts = type { [4 x [11 x %typedef.BiContextType]], [2 x [9 x %typedef.BiContextType]], [2 x [10 x %typedef.BiContextType]], [2 x [6 x %typedef.BiContextType]], [4 x %typedef.BiContextType], [4 x %typedef.BiContextType], [3 x %typedef.BiContextType] } - %typedef.Slice = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, %struct.datapartition*, %typedef.MotionInfoContexts*, %typedef.TextureInfoContexts*, i32, i32*, i32*, i32*, i32, i32*, i32*, i32*, i32 (%struct.img_par*, %struct.inp_par*)*, i32, i32, i32, i32 } - %typedef.TextureInfoContexts = type { [2 x %typedef.BiContextType], [4 x %typedef.BiContextType], [3 x [4 x %typedef.BiContextType]], [10 x [4 x %typedef.BiContextType]], [10 x [15 x %typedef.BiContextType]], [10 x [15 x %typedef.BiContextType]], [10 x [5 x %typedef.BiContextType]], [10 x [5 x %typedef.BiContextType]], [10 x [15 x %typedef.BiContextType]], [10 x [15 x %typedef.BiContextType]] } - -define void @readCBP_CABAC(%struct.syntaxelement* %se, %struct.inp_par* %inp, %struct.img_par* %img.1, %typedef.DecodingEnvironment* %dep_dp) { -; CHECK-LABEL: @readCBP_CABAC( +; Don't RAUW the loop's original comparison instruction if it has other uses +; which aren't dominated by the new comparison instruction (which we insert +; at the branch user). +define void @use_before_branch() { +; CHECK-LABEL: @use_before_branch( ; CHECK-NEXT: entry: ; CHECK-NEXT: br label [[LOOPENTRY_0:%.*]] ; CHECK: loopentry.0: @@ -37,14 +22,14 @@ define void @readCBP_CABAC(%struct.syntaxelement* %se, %struct.inp_par* %inp, %s entry: br label %loopentry.0 -loopentry.0: ; preds = %loopentry.1, %entry - %mb_y.0 = phi i32 [ 0, %entry ], [ %tmp.152, %loopentry.1 ] ; [#uses=2] - %tmp.14 = icmp sle i32 %mb_y.0, 3 ; [#uses=2] - %tmp.15 = zext i1 %tmp.14 to i32 ; [#uses=0] +loopentry.0: + %mb_y.0 = phi i32 [ 0, %entry ], [ %tmp.152, %loopentry.1 ] + %tmp.14 = icmp sle i32 %mb_y.0, 3 + %tmp.15 = zext i1 %tmp.14 to i32 br i1 %tmp.14, label %loopentry.1, label %loopexit.0 -loopentry.1: ; preds = %loopentry.0 - %tmp.152 = add i32 %mb_y.0, 2 ; [#uses=1] +loopentry.1: + %tmp.152 = add i32 %mb_y.0, 2 br label %loopentry.0 loopexit.0: ; preds = %loopentry.0 -- 2.50.1