move a failing testcase from bit-tracking.ll to narrow.ll, and move the
xfail marker with it

llvm-svn: 26129
diff --git a/llvm/test/Regression/Transforms/InstCombine/bit-tracking.ll b/llvm/test/Regression/Transforms/InstCombine/bit-tracking.ll
index c979833..aa81da9 100644
--- a/llvm/test/Regression/Transforms/InstCombine/bit-tracking.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/bit-tracking.ll
@@ -1,29 +1,7 @@
 ; This file contains various testcases that require tracking whether bits are
 ; set or cleared by various instructions.
-; XFAIL: *
 ; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep %ELIM
 
-; test1 - Eliminating the casts in this testcase (by narrowing the AND 
-; operation) allows instcombine to realize the function always returns false.
-;
-bool %test1(int %A, int %B) {
-        %C1 = setlt int %A, %B
-        %ELIM1 = cast bool %C1 to uint
-        %C2 = setgt int %A, %B
-        %ELIM2 = cast bool %C2 to uint
-        %C3 = and uint %ELIM1, %ELIM2
-        %ELIM3 = cast uint %C3 to bool
-        ret bool %ELIM3
-}
-
-; See if we can eliminate the shifts...
-int %test2(int %B) {
-        %ELIM1 = shl int %B, ubyte 31
-        %ELIM2 = shr int %ELIM1, ubyte 31
-        %inc = add int %ELIM2, 1   ; == xor int %B, 1
-        ret int %inc
-}
-
 ; Reduce down to a single XOR
 int %test3(int %B) {
         %ELIMinc = and int %B, 1
diff --git a/llvm/test/Regression/Transforms/InstCombine/narrow.ll b/llvm/test/Regression/Transforms/InstCombine/narrow.ll
new file mode 100644
index 0000000..a26d615
--- /dev/null
+++ b/llvm/test/Regression/Transforms/InstCombine/narrow.ll
@@ -0,0 +1,18 @@
+; This file contains various testcases that check to see that instcombine
+; is narrowing computations when possible.
+
+; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep %ELIM
+; XFAIL: *
+
+; test1 - Eliminating the casts in this testcase (by narrowing the AND
+; operation) allows instcombine to realize the function always returns false.
+;
+bool %test1(int %A, int %B) {
+        %C1 = setlt int %A, %B
+        %ELIM1 = cast bool %C1 to uint
+        %C2 = setgt int %A, %B
+        %ELIM2 = cast bool %C2 to uint
+        %C3 = and uint %ELIM1, %ELIM2
+        %ELIM3 = cast uint %C3 to bool
+        ret bool %ELIM3
+}