diff options
| author | Craig Topper <craig.topper@gmail.com> | 2011-10-14 07:06:56 +0000 |
|---|---|---|
| committer | Craig Topper <craig.topper@gmail.com> | 2011-10-14 07:06:56 +0000 |
| commit | 965de2c197ef28761845f30fc439095778e3865f (patch) | |
| tree | 63ec68518c82cbbaa3de793b9f9f8426daba63fd /llvm/test/CodeGen/X86/bmi.ll | |
| parent | c5e829cad21d537d6bd379d889ae915071958dce (diff) | |
| download | bcm5719-llvm-965de2c197ef28761845f30fc439095778e3865f.tar.gz bcm5719-llvm-965de2c197ef28761845f30fc439095778e3865f.zip | |
Add X86 ANDN instruction. Including instruction selection.
llvm-svn: 141947
Diffstat (limited to 'llvm/test/CodeGen/X86/bmi.ll')
| -rw-r--r-- | llvm/test/CodeGen/X86/bmi.ll | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/X86/bmi.ll b/llvm/test/CodeGen/X86/bmi.ll index e0d1b583aa9..88c09e3acdc 100644 --- a/llvm/test/CodeGen/X86/bmi.ll +++ b/llvm/test/CodeGen/X86/bmi.ll @@ -36,3 +36,18 @@ define i8 @t4(i8 %x) nounwind { declare i8 @llvm.cttz.i8(i8) nounwind readnone +define i32 @andn32(i32 %x, i32 %y) nounwind readnone { + %tmp1 = xor i32 %x, -1 + %tmp2 = and i32 %y, %tmp1 + ret i32 %tmp2 +; CHECK: andn32: +; CHECK: andnl +} + +define i64 @andn64(i64 %x, i64 %y) nounwind readnone { + %tmp1 = xor i64 %x, -1 + %tmp2 = and i64 %tmp1, %y + ret i64 %tmp2 +; CHECK: andn64: +; CHECK: andnq +} |

