[PATCH v2] parser: add Blackfin gcc info

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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 <vapier@xxxxxxxxxx>
---
v2
	- put Blackin builtins behind __bfin__

 lib.c   |    9 +++++++++
 parse.c |    6 ++++++
 2 files changed, 15 insertions(+), 0 deletions(-)

diff --git a/lib.c b/lib.c
index ae6a20c..e33d3a5 100644
--- a/lib.c
+++ b/lib.c
@@ -717,6 +717,15 @@ void declare_builtin_functions(void)
 	add_pre_buffer("extern long __builtin_alpha_cmpbge(long, long);\n");
 	add_pre_buffer("extern long __builtin_labs(long);\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 9074b1d..32d2d0a 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__",
 	"malloc",
 	"__malloc__",
 	"may_alias",
-- 
1.7.3.1

--
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


[Index of Archives]     [Newbies FAQ]     [LKML]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Trinity Fuzzer Tool]

  Powered by Linux