X-Git-Url: https://git.ozlabs.org/?p=ccan;a=blobdiff_plain;f=tools%2Fconfigurator%2Fconfigurator.c;h=51ac8fbfeba777577cb607d48518818f74aa9ed8;hp=5ccc8c914dc83a41680cc3429da414f323a49b6a;hb=1567e4bd07b4ff64f082745fad01d1efcc8e1c0c;hpb=3d3e9b9cbf0bf43c3ce2670175d936677e29f621 diff --git a/tools/configurator/configurator.c b/tools/configurator/configurator.c index 5ccc8c91..51ac8fbf 100644 --- a/tools/configurator/configurator.c +++ b/tools/configurator/configurator.c @@ -114,10 +114,18 @@ static struct test tests[] = { "return __builtin_clzl(1) == (sizeof(long)*8 - 1) ? 0 : 1;" }, { "HAVE_BUILTIN_CLZLL", INSIDE_MAIN, NULL, NULL, "return __builtin_clzll(1) == (sizeof(long long)*8 - 1) ? 0 : 1;" }, + { "HAVE_BUILTIN_CTZ", INSIDE_MAIN, NULL, NULL, + "return __builtin_ctz(1 << (sizeof(int)*8 - 1)) == (sizeof(int)*8 - 1) ? 0 : 1;" }, + { "HAVE_BUILTIN_CTZL", INSIDE_MAIN, NULL, NULL, + "return __builtin_ctzl(1UL << (sizeof(long)*8 - 1)) == (sizeof(long)*8 - 1) ? 0 : 1;" }, + { "HAVE_BUILTIN_CTZLL", INSIDE_MAIN, NULL, NULL, + "return __builtin_ctzll(1ULL << (sizeof(long long)*8 - 1)) == (sizeof(long long)*8 - 1) ? 0 : 1;" }, { "HAVE_BUILTIN_CONSTANT_P", INSIDE_MAIN, NULL, NULL, "return __builtin_constant_p(1) ? 0 : 1;" }, { "HAVE_BUILTIN_EXPECT", INSIDE_MAIN, NULL, NULL, "return __builtin_expect(argc == 1, 1) ? 0 : 1;" }, + { "HAVE_BUILTIN_FFS", INSIDE_MAIN, NULL, NULL, + "return __builtin_ffs(0) == 0 ? 0 : 1;" }, { "HAVE_BUILTIN_FFSL", INSIDE_MAIN, NULL, NULL, "return __builtin_ffsl(0L) == 0 ? 0 : 1;" }, { "HAVE_BUILTIN_FFSLL", INSIDE_MAIN, NULL, NULL, @@ -126,6 +134,11 @@ static struct test tests[] = { "return __builtin_popcountl(255L) == 8 ? 0 : 1;" }, { "HAVE_BUILTIN_TYPES_COMPATIBLE_P", INSIDE_MAIN, NULL, NULL, "return __builtin_types_compatible_p(char *, int) ? 1 : 0;" }, + { "HAVE_ICCARM_INTRINSICS", DEFINES_FUNC, NULL, NULL, + "#include \n" + "int func(int v) {\n" + " return __CLZ(__RBIT(v));\n" + "}" }, { "HAVE_BYTESWAP_H", OUTSIDE_MAIN, NULL, NULL, "#include \n" }, { "HAVE_CLOCK_GETTIME",