diff options
author | Tobias Burnus <burnus@net-b.de> | 2013-10-30 19:53:42 +0100 |
---|---|---|
committer | Tobias Burnus <burnus@gcc.gnu.org> | 2013-10-30 19:53:42 +0100 |
commit | c5028d807fd315cfeb2f1d44e5ffb1c6ca470aff (patch) | |
tree | 7d8909733bc9f939a4e8f741e8c10d5e7814c0e5 /gcc/cp/init.c | |
parent | 1079f7a198ba7e1114d8dce44f72a00cf9abb8eb (diff) | |
download | gcc-c5028d807fd315cfeb2f1d44e5ffb1c6ca470aff.zip gcc-c5028d807fd315cfeb2f1d44e5ffb1c6ca470aff.tar.gz gcc-c5028d807fd315cfeb2f1d44e5ffb1c6ca470aff.tar.bz2 |
re PR other/33426 (Support of #pragma ivdep)
2013-10-30 Tobias Burnus <burnus@net-b.de>
gcc/cp/
PR other/33426
* cp-tree.h (RANGE_FOR_IVDEP): Define.
(cp_convert_range_for, finish_while_stmt_cond, finish_do_stmt,
finish_for_cond): Take 'bool ivdep' parameter.
* cp-array-notation.c (create_an_loop): Update call.
* init.c (build_vec_init): Ditto.
* pt.c (tsubst_expr): Ditto.
* parser.c (cp_parser_iteration_statement, cp_parser_for,
cp_parser_range_for, cp_convert_range_for): Update calls.
(cp_parser_pragma): Accept GCC ivdep for 'while' and 'do'.
* semantics.c (finish_while_stmt_cond, finish_do_stmt,
finish_for_cond): Optionally build ivdep annotation.
gcc/testsuite/
PR other/33426
* g++.dg/vect/pr33426-ivdep-2.cc: New.
* g++.dg/vect/pr33426-ivdep-3.cc: New.
* g++.dg/vect/pr33426-ivdep-4.cc: New.
gcc/
PR other/33426
* gcc/tree-cfg.c (replace_loop_annotate): Replace warning by
warning_at.
From-SVN: r204223
Diffstat (limited to 'gcc/cp/init.c')
-rw-r--r-- | gcc/cp/init.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/cp/init.c b/gcc/cp/init.c index 78ea986..bfd9152 100644 --- a/gcc/cp/init.c +++ b/gcc/cp/init.c @@ -3667,7 +3667,7 @@ build_vec_init (tree base, tree maxindex, tree init, finish_for_init_stmt (for_stmt); finish_for_cond (build2 (NE_EXPR, boolean_type_node, iterator, build_int_cst (TREE_TYPE (iterator), -1)), - for_stmt); + for_stmt, false); elt_init = cp_build_unary_op (PREDECREMENT_EXPR, iterator, 0, complain); if (elt_init == error_mark_node) |