diff options
| author | Chris Lattner <sabre@nondot.org> | 2004-06-09 07:59:40 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2004-06-09 07:59:40 +0000 |
| commit | ce527c8e6d0f98e8aa9f6373cc0caf3c9f349289 (patch) | |
| tree | 028120d570e1fa2add9d5da72c17b64acf2cc289 /llvm/test/Regression/Transforms/InstCombine/select.ll | |
| parent | 2acee7e4d68ed9a21afb9bf86b33cac9f3783418 (diff) | |
| download | bcm5719-llvm-ce527c8e6d0f98e8aa9f6373cc0caf3c9f349289.tar.gz bcm5719-llvm-ce527c8e6d0f98e8aa9f6373cc0caf3c9f349289.zip | |
More instcombine testcases
llvm-svn: 14094
Diffstat (limited to 'llvm/test/Regression/Transforms/InstCombine/select.ll')
| -rw-r--r-- | llvm/test/Regression/Transforms/InstCombine/select.ll | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/llvm/test/Regression/Transforms/InstCombine/select.ll b/llvm/test/Regression/Transforms/InstCombine/select.ll index 891f057d57a..fe89d93a664 100644 --- a/llvm/test/Regression/Transforms/InstCombine/select.ll +++ b/llvm/test/Regression/Transforms/InstCombine/select.ll @@ -109,3 +109,30 @@ bool %test14b(bool %C, int %X) { ret bool %R } +int %test15a(int %X) { ;; Code sequence for (X & 16) ? 16 : 0 + %t1 = and int %X, 16 + %t2 = seteq int %t1, 0 + %t3 = select bool %t2, int 0, int 16 ;; X & 16 + ret int %t3 +} + +int %test15b(int %X) { ;; Code sequence for (X & 32) ? 0 : 24 + %t1 = and int %X, 32 + %t2 = seteq int %t1, 0 + %t3 = select bool %t2, int 32, int 0 ;; ~X & 32 + ret int %t3 +} + +int %test15c(int %X) { ;; Alternate code sequence for (X & 16) ? 16 : 0 + %t1 = and int %X, 16 + %t2 = seteq int %t1, 16 + %t3 = select bool %t2, int 16, int 0 ;; X & 16 + ret int %t3 +} + +int %test15d(int %X) { ;; Alternate code sequence for (X & 16) ? 16 : 0 + %t1 = and int %X, 16 + %t2 = setne int %t1, 0 + %t3 = select bool %t2, int 16, int 0 ;; X & 16 + ret int %t3 +} |

