+2014-06-29 Roman Gareev <gareevroman@gmail.com>
+
+ * graphite-clast-to-gimple.c:
+ gloog is renamed to graphite_regenerate_ast_cloog.
+ gloog_error is renamed to graphite_regenerate_error.
+ * graphite-clast-to-gimple.h:
+ The definition of the struct bb_pbb_def is moved to graphite-htab.h.
+ Add inclusion of the hash-table.h.
+ * graphite-htab.h:
+ The declaration of the function gloog is moved
+ to graphite-clast-to-gimple.h and renamed to
+ graphite_regenerate_ast_cloog.
+ * graphite.c (graphite_transform_loops):
+ gloog is renamed to graphite_regenerate_ast_cloog.
+
2014-06-28 Jan Hubicka <hubicka@ucw.cz>
* tree-streamer-out.c (pack_ts_type_common_value_fields): Stream if type
/* This flag is set when an error occurred during the translation of
CLAST to Gimple. */
-static bool gloog_error;
+static bool graphite_regenerate_error;
/* Verifies properties that GRAPHITE should maintain during translation. */
if (precision > BITS_PER_WORD)
{
- gloog_error = true;
+ graphite_regenerate_error = true;
return integer_type_node;
}
if (!type)
{
- gloog_error = true;
+ graphite_regenerate_error = true;
return integer_type_node;
}
if (!POINTER_TYPE_P (type))
return fold_build2 (MULT_EXPR, type, cst, name);
- gloog_error = true;
+ graphite_regenerate_error = true;
return cst;
}
}
if (precision > BITS_PER_WORD)
{
- gloog_error = true;
+ graphite_regenerate_error = true;
return integer_type_node;
}
if (!type)
{
- gloog_error = true;
+ graphite_regenerate_error = true;
return integer_type_node;
}
build_iv_mapping (iv_map, stmt, ip);
next_e = copy_bb_and_scalar_dependences (GBB_BB (gbb), ip->region,
- next_e, iv_map, &gloog_error);
+ next_e, iv_map,
+ &graphite_regenerate_error);
iv_map.release ();
new_bb = next_e->src;
return union_domain;
}
-/* Return the options that will be used in GLOOG. */
+/* Return the options that will be used in graphite_regenerate_ast_cloog. */
static CloogOptions *
set_cloog_options (void)
/* Enable complex equality spreading: removes dummy statements
(assignments) in the generated code which repeats the
substitution equations for statements. This is useless for
- GLooG. */
+ graphite_regenerate_ast_cloog. */
options->esp = 1;
/* Silence CLooG to avoid failing tests due to debug output to stderr. */
*/
bool
-gloog (scop_p scop, bb_pbb_htab_type *bb_pbb_mapping)
+graphite_regenerate_ast_cloog (scop_p scop, bb_pbb_htab_type *bb_pbb_mapping)
{
auto_vec<tree, 10> newivs;
loop_p context_loop;
struct ivs_params ip;
timevar_push (TV_GRAPHITE_CODE_GEN);
- gloog_error = false;
+ graphite_regenerate_error = false;
params_index = new clast_index_htab_type (10);
recompute_all_dominators ();
graphite_verify ();
- if (gloog_error)
+ if (graphite_regenerate_error)
set_ifsese_condition (if_region, integer_zero_node);
free (if_region->true_region);
num_no_dependency);
}
- return !gloog_error;
+ return !graphite_regenerate_error;
}
#endif
#ifndef GCC_GRAPHITE_CLAST_TO_GIMPLE_H
#define GCC_GRAPHITE_CLAST_TO_GIMPLE_H
+#include "graphite-htab.h"
+
extern CloogState *cloog_state;
/* Data structure for CLooG program representation. */
struct clast_stmt *stmt;
};
-/* Stores BB's related PBB. */
-
-struct bb_pbb_def
-{
- basic_block bb;
- poly_bb_p pbb;
-};
-
+extern bool graphite_regenerate_ast_cloog (scop_p, bb_pbb_htab_type *);
extern void debug_clast_stmt (struct clast_stmt *);
extern void print_clast_stmt (FILE *, struct clast_stmt *);
#define GCC_GRAPHITE_HTAB_H
#include "hash-table.h"
-#include "graphite-clast-to-gimple.h"
+
+/* Stores BB's related PBB. */
+
+struct bb_pbb_def
+{
+ basic_block bb;
+ poly_bb_p pbb;
+};
/* Hashtable helpers. */
typedef hash_table<bb_pbb_hasher> bb_pbb_htab_type;
-extern bool gloog (scop_p, bb_pbb_htab_type *);
poly_bb_p find_pbb_via_hash (bb_pbb_htab_type *, basic_block);
bool loop_is_parallel_p (loop_p, bb_pbb_htab_type *, int);
scop_p get_loop_body_pbbs (loop_p, bb_pbb_htab_type *, vec<poly_bb_p> *);