On Thu, Oct 26, 2006 at 11:47:30AM -0600, Matthew Wilcox wrote: > > IA-64 uses __builtin_popcountl() which wasn't a function sparse knew > about. This patch adds it. I've never looked at sparse before, so this > is a hack-and-run job. Please feel free to rewrite it if it doesn't suit. AFAICS, that's way over the top. That kind of stuff is needed only when builtin can't be described as a normal function. This, OTOH... diff --git a/lib.c b/lib.c --- a/lib.c +++ b/lib.c @@ -467,6 +467,16 @@ void declare_builtin_functions(void) add_pre_buffer("extern void __builtin_trap(void);\n"); add_pre_buffer("extern int __builtin_ffs(int);\n"); add_pre_buffer("extern void *__builtin_alloca(__SIZE_TYPE__);\n"); + add_pre_buffer("extern int __builtin_popcount(unsigned int);\n"); + add_pre_buffer("extern int __builtin_popcountl(unsigned long);\n"); + add_pre_buffer("extern void __builtin_prefetch (const void *, ...);\n"); + add_pre_buffer("extern long __builtin_alpha_extbl(long, long);\n"); + add_pre_buffer("extern long __builtin_alpha_extwl(long, long);\n"); + add_pre_buffer("extern long __builtin_alpha_insbl(long, long);\n"); + add_pre_buffer("extern long __builtin_alpha_inswl(long, long);\n"); + add_pre_buffer("extern long __builtin_alpha_insql(long, long);\n"); + add_pre_buffer("extern long __builtin_alpha_inslh(long, long);\n"); + add_pre_buffer("extern long __builtin_alpha_cmpbge(long, long);\n"); } void create_builtin_stream(void) - To unsubscribe from this list: send the line "unsubscribe linux-sparse" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html