From 007452532b3235ce2faf4e6cbcf2b04b39945b20 Mon Sep 17 00:00:00 2001 From: Roman Lebedev Date: Fri, 4 Oct 2019 22:15:49 +0000 Subject: [PATCH] [NFC][InstCombine] Autogenerate icmp-shr-lt-gt.ll test llvm-svn: 373799 --- .../Transforms/InstCombine/icmp-shr-lt-gt.ll | 177 +++++++++--------- 1 file changed, 89 insertions(+), 88 deletions(-) diff --git a/llvm/test/Transforms/InstCombine/icmp-shr-lt-gt.ll b/llvm/test/Transforms/InstCombine/icmp-shr-lt-gt.ll index bf1a031a4124..c9a803eb8ea5 100644 --- a/llvm/test/Transforms/InstCombine/icmp-shr-lt-gt.ll +++ b/llvm/test/Transforms/InstCombine/icmp-shr-lt-gt.ll @@ -1,8 +1,9 @@ +; NOTE: Assertions have been autogenerated by utils/update_test_checks.py ; RUN: opt < %s -instcombine -S | FileCheck %s define i1 @lshrugt_01_00(i4 %x) { ; CHECK-LABEL: @lshrugt_01_00( -; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 %x, 1 +; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 [[X:%.*]], 1 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr i4 %x, 1 @@ -12,7 +13,7 @@ define i1 @lshrugt_01_00(i4 %x) { define i1 @lshrugt_01_01(i4 %x) { ; CHECK-LABEL: @lshrugt_01_01( -; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 %x, 3 +; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 [[X:%.*]], 3 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr i4 %x, 1 @@ -22,7 +23,7 @@ define i1 @lshrugt_01_01(i4 %x) { define i1 @lshrugt_01_02(i4 %x) { ; CHECK-LABEL: @lshrugt_01_02( -; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 %x, 5 +; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 [[X:%.*]], 5 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr i4 %x, 1 @@ -32,7 +33,7 @@ define i1 @lshrugt_01_02(i4 %x) { define i1 @lshrugt_01_03(i4 %x) { ; CHECK-LABEL: @lshrugt_01_03( -; CHECK-NEXT: [[C:%.*]] = icmp slt i4 %x, 0 +; CHECK-NEXT: [[C:%.*]] = icmp slt i4 [[X:%.*]], 0 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr i4 %x, 1 @@ -42,7 +43,7 @@ define i1 @lshrugt_01_03(i4 %x) { define i1 @lshrugt_01_04(i4 %x) { ; CHECK-LABEL: @lshrugt_01_04( -; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 %x, -7 +; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 [[X:%.*]], -7 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr i4 %x, 1 @@ -52,7 +53,7 @@ define i1 @lshrugt_01_04(i4 %x) { define i1 @lshrugt_01_05(i4 %x) { ; CHECK-LABEL: @lshrugt_01_05( -; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 %x, -5 +; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 [[X:%.*]], -5 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr i4 %x, 1 @@ -62,7 +63,7 @@ define i1 @lshrugt_01_05(i4 %x) { define i1 @lshrugt_01_06(i4 %x) { ; CHECK-LABEL: @lshrugt_01_06( -; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 %x, -3 +; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 [[X:%.*]], -3 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr i4 %x, 1 @@ -153,7 +154,7 @@ define i1 @lshrugt_01_15(i4 %x) { define i1 @lshrugt_02_00(i4 %x) { ; CHECK-LABEL: @lshrugt_02_00( -; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 %x, 3 +; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 [[X:%.*]], 3 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr i4 %x, 2 @@ -163,7 +164,7 @@ define i1 @lshrugt_02_00(i4 %x) { define i1 @lshrugt_02_01(i4 %x) { ; CHECK-LABEL: @lshrugt_02_01( -; CHECK-NEXT: [[C:%.*]] = icmp slt i4 %x, 0 +; CHECK-NEXT: [[C:%.*]] = icmp slt i4 [[X:%.*]], 0 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr i4 %x, 2 @@ -173,7 +174,7 @@ define i1 @lshrugt_02_01(i4 %x) { define i1 @lshrugt_02_02(i4 %x) { ; CHECK-LABEL: @lshrugt_02_02( -; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 %x, -5 +; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 [[X:%.*]], -5 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr i4 %x, 2 @@ -300,7 +301,7 @@ define i1 @lshrugt_02_15(i4 %x) { define i1 @lshrugt_03_00(i4 %x) { ; CHECK-LABEL: @lshrugt_03_00( -; CHECK-NEXT: [[C:%.*]] = icmp slt i4 %x, 0 +; CHECK-NEXT: [[C:%.*]] = icmp slt i4 [[X:%.*]], 0 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr i4 %x, 3 @@ -454,7 +455,7 @@ define i1 @lshrult_01_00(i4 %x) { define i1 @lshrult_01_01(i4 %x) { ; CHECK-LABEL: @lshrult_01_01( -; CHECK-NEXT: [[C:%.*]] = icmp ult i4 %x, 2 +; CHECK-NEXT: [[C:%.*]] = icmp ult i4 [[X:%.*]], 2 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr i4 %x, 1 @@ -464,7 +465,7 @@ define i1 @lshrult_01_01(i4 %x) { define i1 @lshrult_01_02(i4 %x) { ; CHECK-LABEL: @lshrult_01_02( -; CHECK-NEXT: [[C:%.*]] = icmp ult i4 %x, 4 +; CHECK-NEXT: [[C:%.*]] = icmp ult i4 [[X:%.*]], 4 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr i4 %x, 1 @@ -474,7 +475,7 @@ define i1 @lshrult_01_02(i4 %x) { define i1 @lshrult_01_03(i4 %x) { ; CHECK-LABEL: @lshrult_01_03( -; CHECK-NEXT: [[C:%.*]] = icmp ult i4 %x, 6 +; CHECK-NEXT: [[C:%.*]] = icmp ult i4 [[X:%.*]], 6 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr i4 %x, 1 @@ -484,7 +485,7 @@ define i1 @lshrult_01_03(i4 %x) { define i1 @lshrult_01_04(i4 %x) { ; CHECK-LABEL: @lshrult_01_04( -; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 %x, -1 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 [[X:%.*]], -1 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr i4 %x, 1 @@ -494,7 +495,7 @@ define i1 @lshrult_01_04(i4 %x) { define i1 @lshrult_01_05(i4 %x) { ; CHECK-LABEL: @lshrult_01_05( -; CHECK-NEXT: [[C:%.*]] = icmp ult i4 %x, -6 +; CHECK-NEXT: [[C:%.*]] = icmp ult i4 [[X:%.*]], -6 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr i4 %x, 1 @@ -504,7 +505,7 @@ define i1 @lshrult_01_05(i4 %x) { define i1 @lshrult_01_06(i4 %x) { ; CHECK-LABEL: @lshrult_01_06( -; CHECK-NEXT: [[C:%.*]] = icmp ult i4 %x, -4 +; CHECK-NEXT: [[C:%.*]] = icmp ult i4 [[X:%.*]], -4 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr i4 %x, 1 @@ -514,7 +515,7 @@ define i1 @lshrult_01_06(i4 %x) { define i1 @lshrult_01_07(i4 %x) { ; CHECK-LABEL: @lshrult_01_07( -; CHECK-NEXT: [[C:%.*]] = icmp ult i4 %x, -2 +; CHECK-NEXT: [[C:%.*]] = icmp ult i4 [[X:%.*]], -2 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr i4 %x, 1 @@ -605,7 +606,7 @@ define i1 @lshrult_02_00(i4 %x) { define i1 @lshrult_02_01(i4 %x) { ; CHECK-LABEL: @lshrult_02_01( -; CHECK-NEXT: [[C:%.*]] = icmp ult i4 %x, 4 +; CHECK-NEXT: [[C:%.*]] = icmp ult i4 [[X:%.*]], 4 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr i4 %x, 2 @@ -615,7 +616,7 @@ define i1 @lshrult_02_01(i4 %x) { define i1 @lshrult_02_02(i4 %x) { ; CHECK-LABEL: @lshrult_02_02( -; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 %x, -1 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 [[X:%.*]], -1 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr i4 %x, 2 @@ -625,7 +626,7 @@ define i1 @lshrult_02_02(i4 %x) { define i1 @lshrult_02_03(i4 %x) { ; CHECK-LABEL: @lshrult_02_03( -; CHECK-NEXT: [[C:%.*]] = icmp ult i4 %x, -4 +; CHECK-NEXT: [[C:%.*]] = icmp ult i4 [[X:%.*]], -4 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr i4 %x, 2 @@ -752,7 +753,7 @@ define i1 @lshrult_03_00(i4 %x) { define i1 @lshrult_03_01(i4 %x) { ; CHECK-LABEL: @lshrult_03_01( -; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 %x, -1 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 [[X:%.*]], -1 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr i4 %x, 3 @@ -888,7 +889,7 @@ define i1 @lshrult_03_15(i4 %x) { define i1 @ashrsgt_01_00(i4 %x) { ; CHECK-LABEL: @ashrsgt_01_00( -; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 %x, 1 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 [[X:%.*]], 1 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr i4 %x, 1 @@ -898,7 +899,7 @@ define i1 @ashrsgt_01_00(i4 %x) { define i1 @ashrsgt_01_01(i4 %x) { ; CHECK-LABEL: @ashrsgt_01_01( -; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 %x, 3 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 [[X:%.*]], 3 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr i4 %x, 1 @@ -908,7 +909,7 @@ define i1 @ashrsgt_01_01(i4 %x) { define i1 @ashrsgt_01_02(i4 %x) { ; CHECK-LABEL: @ashrsgt_01_02( -; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 %x, 5 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 [[X:%.*]], 5 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr i4 %x, 1 @@ -999,7 +1000,7 @@ define i1 @ashrsgt_01_11(i4 %x) { define i1 @ashrsgt_01_12(i4 %x) { ; CHECK-LABEL: @ashrsgt_01_12( -; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 %x, -7 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 [[X:%.*]], -7 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr i4 %x, 1 @@ -1009,7 +1010,7 @@ define i1 @ashrsgt_01_12(i4 %x) { define i1 @ashrsgt_01_13(i4 %x) { ; CHECK-LABEL: @ashrsgt_01_13( -; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 %x, -5 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 [[X:%.*]], -5 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr i4 %x, 1 @@ -1019,7 +1020,7 @@ define i1 @ashrsgt_01_13(i4 %x) { define i1 @ashrsgt_01_14(i4 %x) { ; CHECK-LABEL: @ashrsgt_01_14( -; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 %x, -3 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 [[X:%.*]], -3 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr i4 %x, 1 @@ -1029,7 +1030,7 @@ define i1 @ashrsgt_01_14(i4 %x) { define i1 @ashrsgt_01_15(i4 %x) { ; CHECK-LABEL: @ashrsgt_01_15( -; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 %x, -1 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 [[X:%.*]], -1 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr i4 %x, 1 @@ -1039,7 +1040,7 @@ define i1 @ashrsgt_01_15(i4 %x) { define i1 @ashrsgt_02_00(i4 %x) { ; CHECK-LABEL: @ashrsgt_02_00( -; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 %x, 3 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 [[X:%.*]], 3 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr i4 %x, 2 @@ -1166,7 +1167,7 @@ define i1 @ashrsgt_02_13(i4 %x) { define i1 @ashrsgt_02_14(i4 %x) { ; CHECK-LABEL: @ashrsgt_02_14( -; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 %x, -5 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 [[X:%.*]], -5 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr i4 %x, 2 @@ -1176,7 +1177,7 @@ define i1 @ashrsgt_02_14(i4 %x) { define i1 @ashrsgt_02_15(i4 %x) { ; CHECK-LABEL: @ashrsgt_02_15( -; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 %x, -1 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 [[X:%.*]], -1 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr i4 %x, 2 @@ -1321,7 +1322,7 @@ define i1 @ashrsgt_03_14(i4 %x) { define i1 @ashrsgt_03_15(i4 %x) { ; CHECK-LABEL: @ashrsgt_03_15( -; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 %x, -1 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 [[X:%.*]], -1 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr i4 %x, 3 @@ -1331,7 +1332,7 @@ define i1 @ashrsgt_03_15(i4 %x) { define i1 @ashrslt_01_00(i4 %x) { ; CHECK-LABEL: @ashrslt_01_00( -; CHECK-NEXT: [[C:%.*]] = icmp slt i4 %x, 0 +; CHECK-NEXT: [[C:%.*]] = icmp slt i4 [[X:%.*]], 0 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr i4 %x, 1 @@ -1341,7 +1342,7 @@ define i1 @ashrslt_01_00(i4 %x) { define i1 @ashrslt_01_01(i4 %x) { ; CHECK-LABEL: @ashrslt_01_01( -; CHECK-NEXT: [[C:%.*]] = icmp slt i4 %x, 2 +; CHECK-NEXT: [[C:%.*]] = icmp slt i4 [[X:%.*]], 2 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr i4 %x, 1 @@ -1351,7 +1352,7 @@ define i1 @ashrslt_01_01(i4 %x) { define i1 @ashrslt_01_02(i4 %x) { ; CHECK-LABEL: @ashrslt_01_02( -; CHECK-NEXT: [[C:%.*]] = icmp slt i4 %x, 4 +; CHECK-NEXT: [[C:%.*]] = icmp slt i4 [[X:%.*]], 4 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr i4 %x, 1 @@ -1361,7 +1362,7 @@ define i1 @ashrslt_01_02(i4 %x) { define i1 @ashrslt_01_03(i4 %x) { ; CHECK-LABEL: @ashrslt_01_03( -; CHECK-NEXT: [[C:%.*]] = icmp slt i4 %x, 6 +; CHECK-NEXT: [[C:%.*]] = icmp slt i4 [[X:%.*]], 6 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr i4 %x, 1 @@ -1452,7 +1453,7 @@ define i1 @ashrslt_01_12(i4 %x) { define i1 @ashrslt_01_13(i4 %x) { ; CHECK-LABEL: @ashrslt_01_13( -; CHECK-NEXT: [[C:%.*]] = icmp slt i4 %x, -6 +; CHECK-NEXT: [[C:%.*]] = icmp slt i4 [[X:%.*]], -6 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr i4 %x, 1 @@ -1462,7 +1463,7 @@ define i1 @ashrslt_01_13(i4 %x) { define i1 @ashrslt_01_14(i4 %x) { ; CHECK-LABEL: @ashrslt_01_14( -; CHECK-NEXT: [[C:%.*]] = icmp slt i4 %x, -4 +; CHECK-NEXT: [[C:%.*]] = icmp slt i4 [[X:%.*]], -4 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr i4 %x, 1 @@ -1472,7 +1473,7 @@ define i1 @ashrslt_01_14(i4 %x) { define i1 @ashrslt_01_15(i4 %x) { ; CHECK-LABEL: @ashrslt_01_15( -; CHECK-NEXT: [[C:%.*]] = icmp slt i4 %x, -2 +; CHECK-NEXT: [[C:%.*]] = icmp slt i4 [[X:%.*]], -2 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr i4 %x, 1 @@ -1482,7 +1483,7 @@ define i1 @ashrslt_01_15(i4 %x) { define i1 @ashrslt_02_00(i4 %x) { ; CHECK-LABEL: @ashrslt_02_00( -; CHECK-NEXT: [[C:%.*]] = icmp slt i4 %x, 0 +; CHECK-NEXT: [[C:%.*]] = icmp slt i4 [[X:%.*]], 0 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr i4 %x, 2 @@ -1492,7 +1493,7 @@ define i1 @ashrslt_02_00(i4 %x) { define i1 @ashrslt_02_01(i4 %x) { ; CHECK-LABEL: @ashrslt_02_01( -; CHECK-NEXT: [[C:%.*]] = icmp slt i4 %x, 4 +; CHECK-NEXT: [[C:%.*]] = icmp slt i4 [[X:%.*]], 4 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr i4 %x, 2 @@ -1619,7 +1620,7 @@ define i1 @ashrslt_02_14(i4 %x) { define i1 @ashrslt_02_15(i4 %x) { ; CHECK-LABEL: @ashrslt_02_15( -; CHECK-NEXT: [[C:%.*]] = icmp slt i4 %x, -4 +; CHECK-NEXT: [[C:%.*]] = icmp slt i4 [[X:%.*]], -4 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr i4 %x, 2 @@ -1629,7 +1630,7 @@ define i1 @ashrslt_02_15(i4 %x) { define i1 @ashrslt_03_00(i4 %x) { ; CHECK-LABEL: @ashrslt_03_00( -; CHECK-NEXT: [[C:%.*]] = icmp slt i4 %x, 0 +; CHECK-NEXT: [[C:%.*]] = icmp slt i4 [[X:%.*]], 0 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr i4 %x, 3 @@ -1774,7 +1775,7 @@ define i1 @ashrslt_03_15(i4 %x) { define i1 @lshrugt_01_00_exact(i4 %x) { ; CHECK-LABEL: @lshrugt_01_00_exact( -; CHECK-NEXT: [[C:%.*]] = icmp ne i4 %x, 0 +; CHECK-NEXT: [[C:%.*]] = icmp ne i4 [[X:%.*]], 0 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr exact i4 %x, 1 @@ -1784,7 +1785,7 @@ define i1 @lshrugt_01_00_exact(i4 %x) { define i1 @lshrugt_01_01_exact(i4 %x) { ; CHECK-LABEL: @lshrugt_01_01_exact( -; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 %x, 2 +; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 [[X:%.*]], 2 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr exact i4 %x, 1 @@ -1794,7 +1795,7 @@ define i1 @lshrugt_01_01_exact(i4 %x) { define i1 @lshrugt_01_02_exact(i4 %x) { ; CHECK-LABEL: @lshrugt_01_02_exact( -; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 %x, 4 +; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 [[X:%.*]], 4 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr exact i4 %x, 1 @@ -1804,7 +1805,7 @@ define i1 @lshrugt_01_02_exact(i4 %x) { define i1 @lshrugt_01_03_exact(i4 %x) { ; CHECK-LABEL: @lshrugt_01_03_exact( -; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 %x, 6 +; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 [[X:%.*]], 6 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr exact i4 %x, 1 @@ -1814,7 +1815,7 @@ define i1 @lshrugt_01_03_exact(i4 %x) { define i1 @lshrugt_01_04_exact(i4 %x) { ; CHECK-LABEL: @lshrugt_01_04_exact( -; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 %x, -8 +; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 [[X:%.*]], -8 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr exact i4 %x, 1 @@ -1824,7 +1825,7 @@ define i1 @lshrugt_01_04_exact(i4 %x) { define i1 @lshrugt_01_05_exact(i4 %x) { ; CHECK-LABEL: @lshrugt_01_05_exact( -; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 %x, -6 +; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 [[X:%.*]], -6 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr exact i4 %x, 1 @@ -1834,7 +1835,7 @@ define i1 @lshrugt_01_05_exact(i4 %x) { define i1 @lshrugt_01_06_exact(i4 %x) { ; CHECK-LABEL: @lshrugt_01_06_exact( -; CHECK-NEXT: [[C:%.*]] = icmp eq i4 %x, -2 +; CHECK-NEXT: [[C:%.*]] = icmp eq i4 [[X:%.*]], -2 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr exact i4 %x, 1 @@ -1925,7 +1926,7 @@ define i1 @lshrugt_01_15_exact(i4 %x) { define i1 @lshrugt_02_00_exact(i4 %x) { ; CHECK-LABEL: @lshrugt_02_00_exact( -; CHECK-NEXT: [[C:%.*]] = icmp ne i4 %x, 0 +; CHECK-NEXT: [[C:%.*]] = icmp ne i4 [[X:%.*]], 0 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr exact i4 %x, 2 @@ -1935,7 +1936,7 @@ define i1 @lshrugt_02_00_exact(i4 %x) { define i1 @lshrugt_02_01_exact(i4 %x) { ; CHECK-LABEL: @lshrugt_02_01_exact( -; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 %x, 4 +; CHECK-NEXT: [[C:%.*]] = icmp ugt i4 [[X:%.*]], 4 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr exact i4 %x, 2 @@ -1945,7 +1946,7 @@ define i1 @lshrugt_02_01_exact(i4 %x) { define i1 @lshrugt_02_02_exact(i4 %x) { ; CHECK-LABEL: @lshrugt_02_02_exact( -; CHECK-NEXT: [[C:%.*]] = icmp eq i4 %x, -4 +; CHECK-NEXT: [[C:%.*]] = icmp eq i4 [[X:%.*]], -4 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr exact i4 %x, 2 @@ -2072,7 +2073,7 @@ define i1 @lshrugt_02_15_exact(i4 %x) { define i1 @lshrugt_03_00_exact(i4 %x) { ; CHECK-LABEL: @lshrugt_03_00_exact( -; CHECK-NEXT: [[C:%.*]] = icmp ne i4 %x, 0 +; CHECK-NEXT: [[C:%.*]] = icmp ne i4 [[X:%.*]], 0 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr exact i4 %x, 3 @@ -2226,7 +2227,7 @@ define i1 @lshrult_01_00_exact(i4 %x) { define i1 @lshrult_01_01_exact(i4 %x) { ; CHECK-LABEL: @lshrult_01_01_exact( -; CHECK-NEXT: [[C:%.*]] = icmp eq i4 %x, 0 +; CHECK-NEXT: [[C:%.*]] = icmp eq i4 [[X:%.*]], 0 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr exact i4 %x, 1 @@ -2236,7 +2237,7 @@ define i1 @lshrult_01_01_exact(i4 %x) { define i1 @lshrult_01_02_exact(i4 %x) { ; CHECK-LABEL: @lshrult_01_02_exact( -; CHECK-NEXT: [[C:%.*]] = icmp ult i4 %x, 4 +; CHECK-NEXT: [[C:%.*]] = icmp ult i4 [[X:%.*]], 4 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr exact i4 %x, 1 @@ -2246,7 +2247,7 @@ define i1 @lshrult_01_02_exact(i4 %x) { define i1 @lshrult_01_03_exact(i4 %x) { ; CHECK-LABEL: @lshrult_01_03_exact( -; CHECK-NEXT: [[C:%.*]] = icmp ult i4 %x, 6 +; CHECK-NEXT: [[C:%.*]] = icmp ult i4 [[X:%.*]], 6 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr exact i4 %x, 1 @@ -2256,7 +2257,7 @@ define i1 @lshrult_01_03_exact(i4 %x) { define i1 @lshrult_01_04_exact(i4 %x) { ; CHECK-LABEL: @lshrult_01_04_exact( -; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 %x, -1 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 [[X:%.*]], -1 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr exact i4 %x, 1 @@ -2266,7 +2267,7 @@ define i1 @lshrult_01_04_exact(i4 %x) { define i1 @lshrult_01_05_exact(i4 %x) { ; CHECK-LABEL: @lshrult_01_05_exact( -; CHECK-NEXT: [[C:%.*]] = icmp ult i4 %x, -6 +; CHECK-NEXT: [[C:%.*]] = icmp ult i4 [[X:%.*]], -6 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr exact i4 %x, 1 @@ -2276,7 +2277,7 @@ define i1 @lshrult_01_05_exact(i4 %x) { define i1 @lshrult_01_06_exact(i4 %x) { ; CHECK-LABEL: @lshrult_01_06_exact( -; CHECK-NEXT: [[C:%.*]] = icmp ult i4 %x, -4 +; CHECK-NEXT: [[C:%.*]] = icmp ult i4 [[X:%.*]], -4 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr exact i4 %x, 1 @@ -2286,7 +2287,7 @@ define i1 @lshrult_01_06_exact(i4 %x) { define i1 @lshrult_01_07_exact(i4 %x) { ; CHECK-LABEL: @lshrult_01_07_exact( -; CHECK-NEXT: [[C:%.*]] = icmp ne i4 %x, -2 +; CHECK-NEXT: [[C:%.*]] = icmp ne i4 [[X:%.*]], -2 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr exact i4 %x, 1 @@ -2377,7 +2378,7 @@ define i1 @lshrult_02_00_exact(i4 %x) { define i1 @lshrult_02_01_exact(i4 %x) { ; CHECK-LABEL: @lshrult_02_01_exact( -; CHECK-NEXT: [[C:%.*]] = icmp eq i4 %x, 0 +; CHECK-NEXT: [[C:%.*]] = icmp eq i4 [[X:%.*]], 0 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr exact i4 %x, 2 @@ -2387,7 +2388,7 @@ define i1 @lshrult_02_01_exact(i4 %x) { define i1 @lshrult_02_02_exact(i4 %x) { ; CHECK-LABEL: @lshrult_02_02_exact( -; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 %x, -1 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 [[X:%.*]], -1 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr exact i4 %x, 2 @@ -2397,7 +2398,7 @@ define i1 @lshrult_02_02_exact(i4 %x) { define i1 @lshrult_02_03_exact(i4 %x) { ; CHECK-LABEL: @lshrult_02_03_exact( -; CHECK-NEXT: [[C:%.*]] = icmp ne i4 %x, -4 +; CHECK-NEXT: [[C:%.*]] = icmp ne i4 [[X:%.*]], -4 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr exact i4 %x, 2 @@ -2524,7 +2525,7 @@ define i1 @lshrult_03_00_exact(i4 %x) { define i1 @lshrult_03_01_exact(i4 %x) { ; CHECK-LABEL: @lshrult_03_01_exact( -; CHECK-NEXT: [[C:%.*]] = icmp ne i4 %x, -8 +; CHECK-NEXT: [[C:%.*]] = icmp ne i4 [[X:%.*]], -8 ; CHECK-NEXT: ret i1 [[C]] ; %s = lshr exact i4 %x, 3 @@ -2660,7 +2661,7 @@ define i1 @lshrult_03_15_exact(i4 %x) { define i1 @ashrsgt_01_00_exact(i4 %x) { ; CHECK-LABEL: @ashrsgt_01_00_exact( -; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 %x, 0 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 [[X:%.*]], 0 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr exact i4 %x, 1 @@ -2670,7 +2671,7 @@ define i1 @ashrsgt_01_00_exact(i4 %x) { define i1 @ashrsgt_01_01_exact(i4 %x) { ; CHECK-LABEL: @ashrsgt_01_01_exact( -; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 %x, 2 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 [[X:%.*]], 2 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr exact i4 %x, 1 @@ -2680,7 +2681,7 @@ define i1 @ashrsgt_01_01_exact(i4 %x) { define i1 @ashrsgt_01_02_exact(i4 %x) { ; CHECK-LABEL: @ashrsgt_01_02_exact( -; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 %x, 4 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 [[X:%.*]], 4 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr exact i4 %x, 1 @@ -2771,7 +2772,7 @@ define i1 @ashrsgt_01_11_exact(i4 %x) { define i1 @ashrsgt_01_12_exact(i4 %x) { ; CHECK-LABEL: @ashrsgt_01_12_exact( -; CHECK-NEXT: [[C:%.*]] = icmp ne i4 %x, -8 +; CHECK-NEXT: [[C:%.*]] = icmp ne i4 [[X:%.*]], -8 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr exact i4 %x, 1 @@ -2781,7 +2782,7 @@ define i1 @ashrsgt_01_12_exact(i4 %x) { define i1 @ashrsgt_01_13_exact(i4 %x) { ; CHECK-LABEL: @ashrsgt_01_13_exact( -; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 %x, -6 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 [[X:%.*]], -6 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr exact i4 %x, 1 @@ -2791,7 +2792,7 @@ define i1 @ashrsgt_01_13_exact(i4 %x) { define i1 @ashrsgt_01_14_exact(i4 %x) { ; CHECK-LABEL: @ashrsgt_01_14_exact( -; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 %x, -4 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 [[X:%.*]], -4 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr exact i4 %x, 1 @@ -2801,7 +2802,7 @@ define i1 @ashrsgt_01_14_exact(i4 %x) { define i1 @ashrsgt_01_15_exact(i4 %x) { ; CHECK-LABEL: @ashrsgt_01_15_exact( -; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 %x, -1 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 [[X:%.*]], -1 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr exact i4 %x, 1 @@ -2811,7 +2812,7 @@ define i1 @ashrsgt_01_15_exact(i4 %x) { define i1 @ashrsgt_02_00_exact(i4 %x) { ; CHECK-LABEL: @ashrsgt_02_00_exact( -; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 %x, 0 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 [[X:%.*]], 0 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr exact i4 %x, 2 @@ -2938,7 +2939,7 @@ define i1 @ashrsgt_02_13_exact(i4 %x) { define i1 @ashrsgt_02_14_exact(i4 %x) { ; CHECK-LABEL: @ashrsgt_02_14_exact( -; CHECK-NEXT: [[C:%.*]] = icmp ne i4 %x, -8 +; CHECK-NEXT: [[C:%.*]] = icmp ne i4 [[X:%.*]], -8 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr exact i4 %x, 2 @@ -2948,7 +2949,7 @@ define i1 @ashrsgt_02_14_exact(i4 %x) { define i1 @ashrsgt_02_15_exact(i4 %x) { ; CHECK-LABEL: @ashrsgt_02_15_exact( -; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 %x, -1 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 [[X:%.*]], -1 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr exact i4 %x, 2 @@ -3093,7 +3094,7 @@ define i1 @ashrsgt_03_14_exact(i4 %x) { define i1 @ashrsgt_03_15_exact(i4 %x) { ; CHECK-LABEL: @ashrsgt_03_15_exact( -; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 %x, -1 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i4 [[X:%.*]], -1 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr exact i4 %x, 3 @@ -3103,7 +3104,7 @@ define i1 @ashrsgt_03_15_exact(i4 %x) { define i1 @ashrslt_01_00_exact(i4 %x) { ; CHECK-LABEL: @ashrslt_01_00_exact( -; CHECK-NEXT: [[C:%.*]] = icmp slt i4 %x, 0 +; CHECK-NEXT: [[C:%.*]] = icmp slt i4 [[X:%.*]], 0 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr exact i4 %x, 1 @@ -3113,7 +3114,7 @@ define i1 @ashrslt_01_00_exact(i4 %x) { define i1 @ashrslt_01_01_exact(i4 %x) { ; CHECK-LABEL: @ashrslt_01_01_exact( -; CHECK-NEXT: [[C:%.*]] = icmp slt i4 %x, 2 +; CHECK-NEXT: [[C:%.*]] = icmp slt i4 [[X:%.*]], 2 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr exact i4 %x, 1 @@ -3123,7 +3124,7 @@ define i1 @ashrslt_01_01_exact(i4 %x) { define i1 @ashrslt_01_02_exact(i4 %x) { ; CHECK-LABEL: @ashrslt_01_02_exact( -; CHECK-NEXT: [[C:%.*]] = icmp slt i4 %x, 4 +; CHECK-NEXT: [[C:%.*]] = icmp slt i4 [[X:%.*]], 4 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr exact i4 %x, 1 @@ -3133,7 +3134,7 @@ define i1 @ashrslt_01_02_exact(i4 %x) { define i1 @ashrslt_01_03_exact(i4 %x) { ; CHECK-LABEL: @ashrslt_01_03_exact( -; CHECK-NEXT: [[C:%.*]] = icmp slt i4 %x, 6 +; CHECK-NEXT: [[C:%.*]] = icmp slt i4 [[X:%.*]], 6 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr exact i4 %x, 1 @@ -3224,7 +3225,7 @@ define i1 @ashrslt_01_12_exact(i4 %x) { define i1 @ashrslt_01_13_exact(i4 %x) { ; CHECK-LABEL: @ashrslt_01_13_exact( -; CHECK-NEXT: [[C:%.*]] = icmp slt i4 %x, -6 +; CHECK-NEXT: [[C:%.*]] = icmp slt i4 [[X:%.*]], -6 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr exact i4 %x, 1 @@ -3234,7 +3235,7 @@ define i1 @ashrslt_01_13_exact(i4 %x) { define i1 @ashrslt_01_14_exact(i4 %x) { ; CHECK-LABEL: @ashrslt_01_14_exact( -; CHECK-NEXT: [[C:%.*]] = icmp slt i4 %x, -4 +; CHECK-NEXT: [[C:%.*]] = icmp slt i4 [[X:%.*]], -4 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr exact i4 %x, 1 @@ -3244,7 +3245,7 @@ define i1 @ashrslt_01_14_exact(i4 %x) { define i1 @ashrslt_01_15_exact(i4 %x) { ; CHECK-LABEL: @ashrslt_01_15_exact( -; CHECK-NEXT: [[C:%.*]] = icmp slt i4 %x, -2 +; CHECK-NEXT: [[C:%.*]] = icmp slt i4 [[X:%.*]], -2 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr exact i4 %x, 1 @@ -3254,7 +3255,7 @@ define i1 @ashrslt_01_15_exact(i4 %x) { define i1 @ashrslt_02_00_exact(i4 %x) { ; CHECK-LABEL: @ashrslt_02_00_exact( -; CHECK-NEXT: [[C:%.*]] = icmp slt i4 %x, 0 +; CHECK-NEXT: [[C:%.*]] = icmp slt i4 [[X:%.*]], 0 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr exact i4 %x, 2 @@ -3264,7 +3265,7 @@ define i1 @ashrslt_02_00_exact(i4 %x) { define i1 @ashrslt_02_01_exact(i4 %x) { ; CHECK-LABEL: @ashrslt_02_01_exact( -; CHECK-NEXT: [[C:%.*]] = icmp slt i4 %x, 4 +; CHECK-NEXT: [[C:%.*]] = icmp slt i4 [[X:%.*]], 4 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr exact i4 %x, 2 @@ -3391,7 +3392,7 @@ define i1 @ashrslt_02_14_exact(i4 %x) { define i1 @ashrslt_02_15_exact(i4 %x) { ; CHECK-LABEL: @ashrslt_02_15_exact( -; CHECK-NEXT: [[C:%.*]] = icmp slt i4 %x, -4 +; CHECK-NEXT: [[C:%.*]] = icmp slt i4 [[X:%.*]], -4 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr exact i4 %x, 2 @@ -3401,7 +3402,7 @@ define i1 @ashrslt_02_15_exact(i4 %x) { define i1 @ashrslt_03_00_exact(i4 %x) { ; CHECK-LABEL: @ashrslt_03_00_exact( -; CHECK-NEXT: [[C:%.*]] = icmp slt i4 %x, 0 +; CHECK-NEXT: [[C:%.*]] = icmp slt i4 [[X:%.*]], 0 ; CHECK-NEXT: ret i1 [[C]] ; %s = ashr exact i4 %x, 3