add an idiom that loop idiom could theoretically catch.
authorChris Lattner <sabre@nondot.org>
Mon, 21 Feb 2011 01:33:38 +0000 (01:33 +0000)
committerChris Lattner <sabre@nondot.org>
Mon, 21 Feb 2011 01:33:38 +0000 (01:33 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126101 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/README.txt

index 4e14fbbb09ba97af88f8b7e73ef54e2b1ce43ea5..bda764deffe09bacae4f8ab3250fe7bdde485963 100644 (file)
@@ -287,6 +287,16 @@ unsigned int popcount(unsigned int input) {
   return count;
 }
 
+This should be recognized as CLZ:  rdar://8459039
+
+unsigned clz_a(unsigned a) {
+  int i;
+  for (i=0;i<32;i++)
+    if (a & (1<<(31-i)))
+      return i;
+  return 32;
+}
+
 This sort of thing should be added to the loop idiom pass.
 
 //===---------------------------------------------------------------------===//