Add tests for unary NOT operations.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3340 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Vikram S. Adve 2002-08-15 14:09:56 +00:00
parent 5cf6f112e6
commit 0f63e22e84
2 changed files with 36 additions and 0 deletions

View File

@ -149,3 +149,21 @@ bb2: ;;<label>
%reg160 = add long 7654321, %cast117 ;; and here.
ret int 0
end
; Test case for unary NOT operation constructed from XOR.
;
void "checkNot"(bool %b, int %i)
begin
%notB = xor bool %b, true
%notI = xor int %i, -1
%F = setge int %notI, 100
%J = add int %i, %i
%andNotB = and bool %F, %notB ;; should get folded with notB
%andNotI = and int %J, %notI ;; should get folded with notI
%notB2 = xor bool true, %b ;; should become XNOR
%notI2 = xor int -1, %i ;; should become XNOR
ret void
end

View File

@ -149,3 +149,21 @@ bb2: ;;<label>
%reg160 = add long 7654321, %cast117 ;; and here.
ret int 0
end
; Test case for unary NOT operation constructed from XOR.
;
void "checkNot"(bool %b, int %i)
begin
%notB = xor bool %b, true
%notI = xor int %i, -1
%F = setge int %notI, 100
%J = add int %i, %i
%andNotB = and bool %F, %notB ;; should get folded with notB
%andNotI = and int %J, %notI ;; should get folded with notI
%notB2 = xor bool true, %b ;; should become XNOR
%notI2 = xor int -1, %i ;; should become XNOR
ret void
end