mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-08-07 12:28:24 +00:00
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:
@@ -149,3 +149,21 @@ bb2: ;;<label>
|
|||||||
%reg160 = add long 7654321, %cast117 ;; and here.
|
%reg160 = add long 7654321, %cast117 ;; and here.
|
||||||
ret int 0
|
ret int 0
|
||||||
end
|
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
|
||||||
|
@@ -149,3 +149,21 @@ bb2: ;;<label>
|
|||||||
%reg160 = add long 7654321, %cast117 ;; and here.
|
%reg160 = add long 7654321, %cast117 ;; and here.
|
||||||
ret int 0
|
ret int 0
|
||||||
end
|
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
|
||||||
|
Reference in New Issue
Block a user