From 8d3ad734d2aa1fbe82fb6b757bb1c0ce07ac454b Mon Sep 17 00:00:00 2001 From: Sanjay Patel Date: Fri, 11 Nov 2016 23:12:46 +0000 Subject: [PATCH] [InstCombine] update test to use FileCheck; NFC git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@286668 91177308-0d34-0410-b5e6-96231b3b80d8 --- .../udiv_select_to_select_shift.ll | 28 +++++++++++-------- 1 file changed, 16 insertions(+), 12 deletions(-) diff --git a/test/Transforms/InstCombine/udiv_select_to_select_shift.ll b/test/Transforms/InstCombine/udiv_select_to_select_shift.ll index 9b059a6cc94..ab4f51ab5b7 100644 --- a/test/Transforms/InstCombine/udiv_select_to_select_shift.ll +++ b/test/Transforms/InstCombine/udiv_select_to_select_shift.ll @@ -1,17 +1,21 @@ +; NOTE: Assertions have been autogenerated by utils/update_test_checks.py +; RUN: opt < %s -instcombine -S | FileCheck %s + ; Test that this transform works: ; udiv X, (Select Cond, C1, C2) --> Select Cond, (shr X, C1), (shr X, C2) -; -; RUN: opt < %s -instcombine -S -o %t -; RUN: not grep select %t -; RUN: grep lshr %t | count 2 -; RUN: not grep udiv %t define i64 @test(i64 %X, i1 %Cond ) { -entry: - %divisor1 = select i1 %Cond, i64 16, i64 8 - %quotient1 = udiv i64 %X, %divisor1 - %divisor2 = select i1 %Cond, i64 8, i64 0 - %quotient2 = udiv i64 %X, %divisor2 - %sum = add i64 %quotient1, %quotient2 - ret i64 %sum +; CHECK-LABEL: @test( +; CHECK-NEXT: [[QUOTIENT1:%.*]] = lshr i64 %X, 4 +; CHECK-NEXT: [[QUOTIENT2:%.*]] = lshr i64 %X, 3 +; CHECK-NEXT: [[SUM:%.*]] = add nuw nsw i64 [[QUOTIENT1]], [[QUOTIENT2]] +; CHECK-NEXT: ret i64 [[SUM]] +; + %divisor1 = select i1 %Cond, i64 16, i64 8 + %quotient1 = udiv i64 %X, %divisor1 + %divisor2 = select i1 %Cond, i64 8, i64 0 + %quotient2 = udiv i64 %X, %divisor2 + %sum = add i64 %quotient1, %quotient2 + ret i64 %sum } + -- 2.40.0