From: Chris Lattner Date: Wed, 11 Oct 2006 03:59:48 +0000 (+0000) Subject: Both of these functions should turn into cmpbge instructions, even though X-Git-Tag: android-x86-6.0-r1~1003^2~40318 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=2f239b9289a8c0998705003fdc87648c47b763a3;p=android-x86%2Fexternal-llvm.git Both of these functions should turn into cmpbge instructions, even though the second has an and of 254 not 255. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30870 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/test/CodeGen/Alpha/cmpbge.ll b/test/CodeGen/Alpha/cmpbge.ll new file mode 100644 index 00000000000..50f00bf4aa8 --- /dev/null +++ b/test/CodeGen/Alpha/cmpbge.ll @@ -0,0 +1,16 @@ +; RUN: llvm-as < %s | llc -march=alpha | grep cmpbge | wc -l | grep 2 + +bool %test1(ulong %A, ulong %B) { + %C = and ulong %A, 255 + %D = and ulong %B, 255 + %E = setge ulong %C, %D + ret bool %E +} + +bool %test2(ulong %a, ulong %B) { + %A = shl ulong %a, ubyte 1 + %C = and ulong %A, 254 + %D = and ulong %B, 255 + %E = setge ulong %C, %D + ret bool %E +}