This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] Move some Cilk+ code around


The function is_cilkplus_vector_p is defined both in c-parser.c and parser.c
and is exactly the same so it seems that it should rather be defined in the
common Cilk+ code (even though for such a small static inline fn it probably
doesn't matter much).  While at it, fix some typos and simplify the code a bit.

Bootstrapped/regtested on x86_64-linux, ok for trunk?

2015-10-20  Marek Polacek  <polacek@redhat.com>

	* array-notation-common.c (is_cilkplus_vector_p): Define.
	* c-common.h (is_cilkplus_vector_p): Declare.

	* c-parser.c (is_cilkplus_vector_p): Don't define here.

	* parser.c (is_cilkplus_vector_p): Don't define here.

diff --git gcc/c-family/array-notation-common.c gcc/c-family/array-notation-common.c
index 85ded8d..6b55747 100644
--- gcc/c-family/array-notation-common.c
+++ gcc/c-family/array-notation-common.c
@@ -676,3 +676,12 @@ fix_sec_implicit_args (location_t loc, vec <tree, va_gc> *list,
       vec_safe_push (array_operand, (*list)[ii]);
   return array_operand;
 }
+
+/* Returns true if NAME is an IDENTIFIER_NODE with identifier "vector",
+   "__vector", or "__vector__".  */
+
+bool
+is_cilkplus_vector_p (tree name)
+{
+  return flag_cilkplus && is_attribute_p ("vector", name);
+}
diff --git gcc/c-family/c-common.h gcc/c-family/c-common.h
index cf44482..4b5cac8 100644
--- gcc/c-family/c-common.h
+++ gcc/c-family/c-common.h
@@ -1435,6 +1435,7 @@ extern void cilkplus_extract_an_triplets (vec<tree, va_gc> *, size_t, size_t,
 					  vec<vec<an_parts> > *);
 extern vec <tree, va_gc> *fix_sec_implicit_args
   (location_t, vec <tree, va_gc> *, vec<an_loop_parts>, size_t, tree);
+extern bool is_cilkplus_vector_p (tree);
 
 /* In cilk.c.  */
 extern tree insert_cilk_frame (tree);
diff --git gcc/c/c-parser.c gcc/c/c-parser.c
index 704ebc6..a5c1d84 100644
--- gcc/c/c-parser.c
+++ gcc/c/c-parser.c
@@ -3848,17 +3848,6 @@ c_parser_attribute_any_word (c_parser *parser)
   return attr_name;
 }
 
-/* Returns true of NAME is an IDENTIFIER_NODE with identiifer "vector,"
-   "__vector" or "__vector__."  */
-
-static inline bool
-is_cilkplus_vector_p (tree name)
-{ 
-  if (flag_cilkplus && is_attribute_p ("vector", name)) 
-    return true;
-  return false;
-}
-
 #define CILK_SIMD_FN_CLAUSE_MASK				  \
 	((OMP_CLAUSE_MASK_1 << PRAGMA_CILK_CLAUSE_VECTORLENGTH)	  \
 	 | (OMP_CLAUSE_MASK_1 << PRAGMA_CILK_CLAUSE_LINEAR)	  \
diff --git gcc/cp/parser.c gcc/cp/parser.c
index f07a5e4..cfe5468 100644
--- gcc/cp/parser.c
+++ gcc/cp/parser.c
@@ -23225,17 +23225,6 @@ cp_parser_gnu_attributes_opt (cp_parser* parser)
   return attributes;
 }
 
-/* Returns true of NAME is an IDENTIFIER_NODE with identiifer "vector,"
-   "__vector" or "__vector__."  */
-
-static inline bool
-is_cilkplus_vector_p (tree name)
-{ 
-  if (flag_cilkplus && is_attribute_p ("vector", name)) 
-    return true;
-  return false;
-}
-
 /* Parse a GNU attribute-list.
 
    attribute-list:

	Marek


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]