summaryrefslogtreecommitdiffstats
path: root/clang/test
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2008-07-21 17:19:41 +0000
committerDaniel Dunbar <daniel@zuster.org>2008-07-21 17:19:41 +0000
commitd93abc3bb0acdd430839abdd67bd3920fee87bbc (patch)
tree1d5ac573dc129568c04abfe6824263f29bb485f0 /clang/test
parentb0e39386516c94edba98e7853b0f1f886ae428e9 (diff)
downloadbcm5719-llvm-d93abc3bb0acdd430839abdd67bd3920fee87bbc.tar.gz
bcm5719-llvm-d93abc3bb0acdd430839abdd67bd3920fee87bbc.zip
Implement ffs, parity, and popcount builtins.
+ test case llvm-svn: 53851
Diffstat (limited to 'clang/test')
-rw-r--r--clang/test/CodeGen/builtins-ffs_parity_popcount.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/clang/test/CodeGen/builtins-ffs_parity_popcount.c b/clang/test/CodeGen/builtins-ffs_parity_popcount.c
new file mode 100644
index 00000000000..19a5cf9a679
--- /dev/null
+++ b/clang/test/CodeGen/builtins-ffs_parity_popcount.c
@@ -0,0 +1,15 @@
+// RUN: clang -emit-llvm -o - %s > %t
+// RUN: ! grep "__builtin" %t
+
+#include <stdio.h>
+
+void test(int M, long long N) {
+ printf("%d %lld: %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d\n",
+ M, N,
+ __builtin_ffs(M), __builtin_ffsl(M), __builtin_ffsll(M),
+ __builtin_parity(M), __builtin_parityl(M), __builtin_parityll(M),
+ __builtin_popcount(M), __builtin_popcountl(M), __builtin_popcountll(M),
+ __builtin_ffs(N), __builtin_ffsl(N), __builtin_ffsll(N),
+ __builtin_parity(N), __builtin_parityl(N), __builtin_parityll(N),
+ __builtin_popcount(N), __builtin_popcountl(N), __builtin_popcountll(N));
+}
OpenPOWER on IntegriCloud