[llvm] r307070 - Revert r307064, "[InstCombine] Add test cases demonstrating creation of extra bswap instrinsic calls when when optimizing bswap and bitwise ops when the bswaps have additional uses. NFC"
NAKAMURA Takumi via llvm-commits
llvm-commits at lists.llvm.org
Tue Jul 4 05:13:27 PDT 2017
Author: chapuni
Date: Tue Jul 4 05:13:27 2017
New Revision: 307070
URL: http://llvm.org/viewvc/llvm-project?rev=307070&view=rev
Log:
Revert r307064, "[InstCombine] Add test cases demonstrating creation of extra bswap instrinsic calls when when optimizing bswap and bitwise ops when the bswaps have additional uses. NFC"
Seems confused between %tmpN and unnamed %N to give same name.
Modified:
llvm/trunk/test/Transforms/InstCombine/bswap-fold.ll
Modified: llvm/trunk/test/Transforms/InstCombine/bswap-fold.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/InstCombine/bswap-fold.ll?rev=307070&r1=307069&r2=307070&view=diff
==============================================================================
--- llvm/trunk/test/Transforms/InstCombine/bswap-fold.ll (original)
+++ llvm/trunk/test/Transforms/InstCombine/bswap-fold.ll Tue Jul 4 05:13:27 2017
@@ -1,4 +1,3 @@
-; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
; RUN: opt < %s -instcombine -S | FileCheck %s
; rdar://5992453
@@ -281,68 +280,6 @@ define <2 x i32> @bs_xor32ivec(<2 x i32>
ret <2 x i32> %tmp2
}
-define i64 @bs_and64_multiuse1(i64 %a, i64 %b) #0 {
-; CHECK-LABEL: @bs_and64_multiuse1(
-; CHECK-NEXT: [[TMP1:%.*]] = tail call i64 @llvm.bswap.i64(i64 [[A:%.*]])
-; CHECK-NEXT: [[TMP2:%.*]] = tail call i64 @llvm.bswap.i64(i64 [[B:%.*]])
-; CHECK-NEXT: [[TMP1:%.*]] = and i64 [[A]], [[B]]
-; CHECK-NEXT: [[TMP2:%.*]] = call i64 @llvm.bswap.i64(i64 [[TMP1]])
-; CHECK-NEXT: [[TMP4:%.*]] = mul i64 [[TMP2]], [[TMP1]]
-; CHECK-NEXT: [[TMP5:%.*]] = mul i64 [[TMP4]], [[TMP2]]
-; CHECK-NEXT: ret i64 [[TMP5]]
-;
- %tmp1 = tail call i64 @llvm.bswap.i64(i64 %a)
- %tmp2 = tail call i64 @llvm.bswap.i64(i64 %b)
- %tmp3 = and i64 %tmp1, %tmp2
- %tmp4 = mul i64 %tmp3, %tmp1 ; to increase use count of the bswaps
- %tmp5 = mul i64 %tmp4, %tmp2 ; to increase use count of the bswaps
- ret i64 %tmp5
-}
-
-define i64 @bs_and64_multiuse2(i64 %a, i64 %b) #0 {
-; CHECK-LABEL: @bs_and64_multiuse2(
-; CHECK-NEXT: [[TMP1:%.*]] = tail call i64 @llvm.bswap.i64(i64 [[A:%.*]])
-; CHECK-NEXT: [[TMP1:%.*]] = and i64 [[A]], [[B:%.*]]
-; CHECK-NEXT: [[TMP2:%.*]] = call i64 @llvm.bswap.i64(i64 [[TMP1]])
-; CHECK-NEXT: [[TMP4:%.*]] = mul i64 [[TMP2]], [[TMP1]]
-; CHECK-NEXT: ret i64 [[TMP4]]
-;
- %tmp1 = tail call i64 @llvm.bswap.i64(i64 %a)
- %tmp2 = tail call i64 @llvm.bswap.i64(i64 %b)
- %tmp3 = and i64 %tmp1, %tmp2
- %tmp4 = mul i64 %tmp3, %tmp1 ; to increase use count of the bswaps
- ret i64 %tmp4
-}
-
-define i64 @bs_and64_multiuse3(i64 %a, i64 %b) #0 {
-; CHECK-LABEL: @bs_and64_multiuse3(
-; CHECK-NEXT: [[TMP2:%.*]] = tail call i64 @llvm.bswap.i64(i64 [[B:%.*]])
-; CHECK-NEXT: [[TMP1:%.*]] = and i64 [[A:%.*]], [[B]]
-; CHECK-NEXT: [[TMP2:%.*]] = call i64 @llvm.bswap.i64(i64 [[TMP1]])
-; CHECK-NEXT: [[TMP4:%.*]] = mul i64 [[TMP2]], [[TMP2]]
-; CHECK-NEXT: ret i64 [[TMP4]]
-;
- %tmp1 = tail call i64 @llvm.bswap.i64(i64 %a)
- %tmp2 = tail call i64 @llvm.bswap.i64(i64 %b)
- %tmp3 = and i64 %tmp1, %tmp2
- %tmp4 = mul i64 %tmp3, %tmp2 ; to increase use count of the bswaps
- ret i64 %tmp4
-}
-
-define i64 @bs_and64i_multiuse(i64 %a, i64 %b) #0 {
-; CHECK-LABEL: @bs_and64i_multiuse(
-; CHECK-NEXT: [[TMP1:%.*]] = tail call i64 @llvm.bswap.i64(i64 [[A:%.*]])
-; CHECK-NEXT: [[TMP1:%.*]] = and i64 [[A]], 129085117527228416
-; CHECK-NEXT: [[TMP2:%.*]] = call i64 @llvm.bswap.i64(i64 [[TMP1]])
-; CHECK-NEXT: [[TMP3:%.*]] = mul i64 [[TMP2]], [[TMP1]]
-; CHECK-NEXT: ret i64 [[TMP3]]
-;
- %tmp1 = tail call i64 @llvm.bswap.i64(i64 %a)
- %tmp2 = and i64 %tmp1, 1000000001
- %tmp3 = mul i64 %tmp2, %tmp1 ; to increase use count of the bswap
- ret i64 %tmp3
-}
-
declare i16 @llvm.bswap.i16(i16)
declare i32 @llvm.bswap.i32(i32)
declare i64 @llvm.bswap.i64(i64)
More information about the llvm-commits
mailing list