From 9e73187d69d14f670c88520bc664c6cb47c17e89 Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Wed, 6 Oct 2010 20:09:48 -0400 Subject: [PATCH] parser: add Blackfin gcc info The Blackfin port uses some custom attributes to control memory placement, and it has some custom builtins. So add the ones that the kernel actually utilizes to avoid massive build errors with sparse. Signed-off-by: Mike Frysinger Signed-off-by: Christopher Li --- lib.c | 9 +++++++++ parse.c | 6 ++++++ 2 files changed, 15 insertions(+) diff --git a/lib.c b/lib.c index d6e8b0e4..c4a6f878 100644 --- a/lib.c +++ b/lib.c @@ -718,6 +718,15 @@ void declare_builtin_functions(void) add_pre_buffer("extern long __builtin_labs(long);\n"); add_pre_buffer("extern double __builtin_fabs(double);\n"); + /* Add Blackfin-specific stuff */ + add_pre_buffer( + "#ifdef __bfin__\n" + "extern void __builtin_bfin_csync(void);\n" + "extern void __builtin_bfin_ssync(void);\n" + "extern int __builtin_bfin_norm_fr1x32(int);\n" + "#endif\n" + ); + /* And some floating point stuff.. */ add_pre_buffer("extern int __builtin_isgreater(float, float);\n"); add_pre_buffer("extern int __builtin_isgreaterequal(float, float);\n"); diff --git a/parse.c b/parse.c index 7f1ee27a..537055ff 100644 --- a/parse.c +++ b/parse.c @@ -515,6 +515,12 @@ const char *ignored_attributes[] = { "__format_arg__", "hot", "__hot__", + "l1_text", + "__l1_text__", + "l1_data", + "__l1_data__", + "l2", + "__l2__", "may_alias", "__may_alias__", "malloc", -- 2.11.4.GIT