Skip to content

Commit

Permalink
[InstCombine] use FileCheck for better checking
Browse files Browse the repository at this point in the history
(testing script for autogeneration of check lines)



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264435 91177308-0d34-0410-b5e6-96231b3b80d8
  • Loading branch information
rotateright committed Mar 25, 2016
1 parent a6543dc commit 17bcd52
Showing 1 changed file with 11 additions and 2 deletions.
13 changes: 11 additions & 2 deletions test/Transforms/InstCombine/apint-and-xor-merge.ll
Original file line number Diff line number Diff line change
@@ -1,11 +1,16 @@
; NOTE: Assertions have been autogenerated by update_test_checks.py
; This test case checks that the merge of and/xor can work on arbitrary
; precision integers.

; RUN: opt < %s -instcombine -S | grep and | count 1
; RUN: opt < %s -instcombine -S | grep xor | count 2
; RUN: opt < %s -instcombine -S | FileCheck %s

; (x &z ) ^ (y & z) -> (x ^ y) & z
define i57 @test1(i57 %x, i57 %y, i57 %z) {
; CHECK-LABEL: @test1(
; CHECK: [[TMP61:%.*]] = xor i57 %x, %y
; CHECK-NEXT: [[TMP7:%.*]] = and i57 [[TMP61]], %z
; CHECK-NEXT: ret i57 [[TMP7]]
;
%tmp3 = and i57 %z, %x
%tmp6 = and i57 %z, %y
%tmp7 = xor i57 %tmp3, %tmp6
Expand All @@ -14,6 +19,10 @@ define i57 @test1(i57 %x, i57 %y, i57 %z) {

; (x & y) ^ (x | y) -> x ^ y
define i23 @test2(i23 %x, i23 %y, i23 %z) {
; CHECK-LABEL: @test2(
; CHECK: [[TMP7:%.*]] = xor i23 %y, %x
; CHECK-NEXT: ret i23 [[TMP7]]
;
%tmp3 = and i23 %y, %x
%tmp6 = or i23 %y, %x
%tmp7 = xor i23 %tmp3, %tmp6
Expand Down

0 comments on commit 17bcd52

Please sign in to comment.