Hi, > So it's not important, but the patch doesn't have the removal of the > cilk+ testsuite or runtime. BUt again, it's not a big deal, I can guess > what that part of the patch looks like.
I used Jakub's suggestion in https://gcc.gnu.org/ml/gcc-patches/2017-11/msg01348.html and didn't add libcilkrts and cilk-plus directories to patch(without this patch doesn't fit in gcc-patches), only to change log. I will include them, when I'll commit the patch, but I guess there is nothing to review here: rm -rf gcc/testsuite/c-c++-common/cilk-plus rm -rf gcc/testsuite/g++.dg/cilk-plus rm -rf gcc/testsuite/gcc.dg/cilk-plus rm -rf libcilkrts I can send it as an additional patch(or patches) if this is required. Thanks for your comments, fixed them in attached patch.vm > -----Original Message----- > From: Jeff Law [mailto:l...@redhat.com] > Sent: Tuesday, November 21, 2017 8:41 AM > To: Koval, Julia <julia.ko...@intel.com>; Jakub Jelinek <ja...@redhat.com> > Cc: GCC Patches <gcc-patches@gcc.gnu.org> > Subject: Re: [patch] remove cilk-plus > > On 11/16/2017 10:02 AM, Koval, Julia wrote: > > Thanks for your comments, fixed it. > > > > 2017-11-16 Julia Koval <julia.ko...@intel.com> > > Sebastian Peryt <sebastian.pe...@intel.com> > > > > * Makefile.def (target_modules): Remove libcilkrts. > > * Makefile.in: Ditto. > > * configure: Ditto. > > * configure.ac: Ditto. > > > > contrib/ > > * contrib/gcc_update: Ditto. > > > > gcc/ > > * Makefile.in (cilkplus.def, cilk-builtins.def, c-family/cilk.o, > > c-family/c-cilkplus.o, c-family/array-notation-common.o, > > cilk-common.o, cilk.h, cilk-common.c): Remove. > > * builtin-types.def > > (BT_FN_INT_PTR_PTR_PTR_FTYPE_BT_INT_BT_PTR_BT_PTR_BT_PTR): > Remove. > > * builtins.c (is_builtin_name): Remove cilkplus condition. > > (BUILT_IN_CILK_DETACH, BUILT_IN_CILK_POP_FRAME): Remove. > > * builtins.def (DEF_CILK_BUILTIN_STUB, DEF_CILKPLUS_BUILTIN, > > cilk-builtins.def, cilkplus.def): Remove. > > * cif-code.def (CILK_SPAWN): Remove. > > * cilk-builtins.def: Delete. > > * cilk-common.c: Ditto. > > * cilk.h: Ditto. > > * cilkplus.def: Ditto. > > * config/darwin.h (fcilkplus): Delete. > > * cppbuiltin.c: Ditto. > > * doc/extend.texi: Remove cilkplus doc. > > * doc/generic.texi: Ditto. > > * doc/invoke.texi: Ditto. > > * doc/passes.texi: Ditto. > > * gcc.c (fcilkplus): Remove. > > * gengtype.c (cilk.h): Remove. > > * gimple-pretty-print.c (dump_gimple_omp_for): Remove cilkplus > support. > > * gimple.h (GF_OMP_FOR_KIND_CILKFOR, > GF_OMP_FOR_KIND_CILKSIMD): Remove. > > * gimplify.c (gimplify_return_expr, maybe_fold_stmt, > gimplify_call_expr, > > is_gimple_stmt, gimplify_modify_expr, gimplify_scan_omp_clauses, > > gimplify_adjust_omp_clauses, gimplify_omp_for, gimplify_expr): > Remove > > cilkplus conditions. > > * ipa-fnsummary.c (ipa_dump_fn_summary, compute_fn_summary, > > inline_read_section): Ditto. > > * ipa-inline-analysis.c (cilk.h): Remove. > > * ira.c (ira_setup_eliminable_regset): Remove cilkplus support. > > * lto-wrapper.c (merge_and_complain, append_compiler_options, > > append_linker_options): Remove condition for fcilkplus. > > * lto/lto-lang.c (cilk.h): Remove. > > (lto_init): Remove condition for fcilkplus. > > * omp-expand.c (expand_cilk_for_call): Delete. > > (expand_omp_taskreg, expand_omp_for_static_chunk, > > expand_omp_for): Remove cilkplus > > conditions. > > (expand_cilk_for): Delete. > > * omp-general.c (omp_extract_for_data): Remove cilkplus support. > > * omp-low.c (scan_sharing_clauses, create_omp_child_function, > > execute_lower_omp, diagnose_sb_0): Ditto. > > * omp-simd-clone.c (simd_clone_clauses_extract): Ditto. > > * tree-core.h (OMP_CLAUSE__CILK_FOR_COUNT_): Delete. > > * tree-nested.c: Ditto. > > * tree-pretty-print.c (dump_omp_clause): Remove cilkplus support. > > (dump_generic_node): Ditto. > > * tree.c (OMP_CLAUSE__CILK_FOR_COUNT_): Delete. > > * tree.def (cilk_simd, cilk_for, cilk_spawn_stmt, cilk_sync_stmt): > > Delete. > > * tree.h (CILK_SPAWN_FN, EXPR_CILK_SPAWN): Delete. > > > > gcc/c-family/ > > * array-notation-common.c: Delete. > > * c-cilkplus.c: Ditto. > > * c-common.c (_Cilk_spawn, _Cilk_sync, _Cilk_for): Remove. > > * c-common.def (ARRAY_NOTATION_REF): Remove. > > * c-common.h (RID_CILK_SPAWN, build_array_notation_expr, > > build_array_notation_ref, C_ORT_CILK, c_check_cilk_loop, > > c_validate_cilk_plus_loop, cilkplus_an_parts, > cilk_ignorable_spawn_rhs_op, > > cilk_recognize_spawn): Remove. > > * c-gimplify.c (CILK_SPAWN_STMT): Remove. > > * c-omp.c: Remove CILK_SIMD check. > > * c-pragma.c: Ditto. > > * c-pragma.h: Remove CILK related pragmas. > > * c-pretty-print.c (c_pretty_printer::postfix_expression): Remove > > ARRAY_NOTATION_REF condition. > > (c_pretty_printer::expression): Ditto. > > * c.opt (fcilkplus): Remove. > > * cilk.c: Delete. > > > > gcc/c/ > > * Make-lang.in (c/c-array-notation.o): Remove. > > * c-array-notation.c: Delete. > > * c-decl.c: Remove cilkplus condition. > > * c-parser.c (c_parser_cilk_simd, c_parser_cilk_for, > > c_parser_cilk_verify_simd, c_parser_array_notation, > > c_parser_cilk_clause_vectorlength, c_parser_cilk_grainsize, > > c_parser_cilk_simd_fn_vector_attrs, > > c_finish_cilk_simd_fn_tokens): Delete. > > (c_parser_declaration_or_fndef): Remove cilkplus condition. > > (c_parser_direct_declarator_inner): Ditto. > > (CILK_SIMD_FN_CLAUSE_MASK): Delete. > > (c_parser_attributes, c_parser_compound_statement, > > c_parser_statement_after_labels, c_parser_if_statement, > > c_parser_switch_statement, c_parser_while_statement, > > c_parser_do_statement, c_parser_for_statement, > > c_parser_unary_expression, c_parser_postfix_expression, > > c_parser_postfix_expression_after_primary, > > c_parser_pragma, c_parser_omp_clause_name, > c_parser_omp_all_clauses, > > c_parser_omp_for_loop, c_finish_omp_declare_simd): Remove cilkplus > support. > > * c-typeck.c (build_array_ref, build_function_call_vec, > convert_arguments, > > lvalue_p, build_compound_expr, c_finish_return, c_finish_if_stmt, > > c_finish_loop, build_binary_op): Remove cilkplus support. > > > > gcc/cp/ > > * Make-lang.in (cp/cp-array-notation.o, cp/cp-cilkplus.o): Delete. > > * call.c (convert_for_arg_passing, build_cxx_call): Remove cilkplus. > > * constexpr.c (potential_constant_expression_1): Ditto. > > * cp-array-notation.c: Delete. > > * cp-cilkplus.c: Ditto. > > * cp-cilkplus.h: Ditto. > > * cp-gimplify.c (cp_gimplify_expr, cp_fold_r, cp_genericize): Remove > > cilkplus condition. > > * cp-objcp-common.c (ARRAY_NOTATION_REF): Delete. > > * cp-tree.h (cilkplus_an_triplet_types_ok_p): Delete. > > * decl.c (grokfndecl, finish_function): Remove cilkplus condition. > > * error.c (dump_decl, dump_expr): Remove ARRAY_NOTATION_REF > condition. > > * lambda.c (cp-cilkplus.h): Remove. > > * parser.c (cp_parser_cilk_simd, cp_parser_cilk_for, > > cp_parser_cilk_simd_vectorlength): Delete. > > (cp_debug_parser, cp_parser_ctor_initializer_opt_and_function_body, > > cp_parser_postfix_expression, > cp_parser_postfix_open_square_expression, > > cp_parser_statement, cp_parser_jump_statement, > cp_parser_direct_declarator, > > cp_parser_late_return_type_opt, cp_parser_gnu_attribute_list, > > cp_parser_omp_clause_name, cp_parser_omp_clause_aligned, > > cp_parser_omp_clause_linear, cp_parser_omp_all_clauses, > cp_parser_omp_flush, > > cp_parser_omp_for_cond, cp_parser_omp_for_incr, > cp_parser_omp_for_loop_init, > > cp_parser_omp_for_loop, > > cp_parser_omp_declare_simd): Remove cilkplus support. > > (CILK_SIMD_FN_CLAUSE_MASK, > cp_parser_late_parsing_cilk_simd_fn_info, > > cp_parser_cilk_grainsize): Remove. > > (cp_parser_pragma, c_parse_file): Remove cilkplus support. > > (cp_parser_cilk_simd_vectorlength, cp_parser_cilk_simd_linear, > > cp_parser_cilk_simd_clause_name, cp_parser_cilk_simd_all_clauses, > > cp_parser_cilk_simd, cp_parser_cilk_for): Remove. > > * parser.h (IN_CILK_SIMD_FOR, IN_CILK_SPAWN): Remove. > > * pt.c (tsubst_attribute, tsubst_expr, tsubst_copy_and_build): Remove > > cilkplus support. > > * semantics.c (finish_goto_stmt, begin_while_stmt, finish_do_body, > > finish_init_stmt, finish_switch_cond, simplify_aggr_init_expr, > > finish_omp_clauses, finish_omp_clauses, finish_omp_for): Remove > cilkplus > > support. > > * tree.c (lvalue_kind): Remove ARRAY_NOTATION_REF conditon. > > * typeck.c (cp_build_array_ref, cp_build_compound_expr, > > check_return_expr): Remove cilkplus support. > > > > gcc/testsuite/ > > * c-c++-common/attr-simd-3.c: Delete. > > * c-c++-common/cilk-plus/AN/an-if.c: Delete. > > * c-c++-common/cilk-plus/AN/array_test1.c: Delete. > > * c-c++-common/cilk-plus/AN/array_test2.c: Delete. > > * c-c++-common/cilk-plus/AN/array_test_ND.c: Delete. > > * c-c++-common/cilk-plus/AN/builtin_fn_custom.c: Delete. > > * c-c++-common/cilk-plus/AN/builtin_fn_mutating.c: Delete. > > * c-c++-common/cilk-plus/AN/builtin_func_double.c: Delete. > > * c-c++-common/cilk-plus/AN/builtin_func_double2.c: Delete. > > * c-c++-common/cilk-plus/AN/comma_exp.c: Delete. > > * c-c++-common/cilk-plus/AN/conditional.c: Delete. > > * c-c++-common/cilk-plus/AN/decl-ptr-colon.c: Delete. > > * c-c++-common/cilk-plus/AN/dimensionless-arrays.c: Delete. > > * c-c++-common/cilk-plus/AN/exec-once.c: Delete. > > * c-c++-common/cilk-plus/AN/exec-once2.c: Delete. > > * c-c++-common/cilk-plus/AN/fn_ptr-2.c: Delete. > > * c-c++-common/cilk-plus/AN/fn_ptr.c: Delete. > > * c-c++-common/cilk-plus/AN/fp_triplet_values.c: Delete. > > * c-c++-common/cilk-plus/AN/gather-scatter-errors.c: Delete. > > * c-c++-common/cilk-plus/AN/gather_scatter.c: Delete. > > * c-c++-common/cilk-plus/AN/if_test.c: Delete. > > * c-c++-common/cilk-plus/AN/if_test_errors.c: Delete. > > * c-c++-common/cilk-plus/AN/misc.c: Delete. > > * c-c++-common/cilk-plus/AN/n-ptr-test.c: Delete. > > * c-c++-common/cilk-plus/AN/parser_errors.c: Delete. > > * c-c++-common/cilk-plus/AN/parser_errors2.c: Delete. > > * c-c++-common/cilk-plus/AN/parser_errors3.c: Delete. > > * c-c++-common/cilk-plus/AN/parser_errors4.c: Delete. > > * c-c++-common/cilk-plus/AN/pr57457-2.c: Delete. > > * c-c++-common/cilk-plus/AN/pr57457.c: Delete. > > * c-c++-common/cilk-plus/AN/pr57490.c: Delete. > > * c-c++-common/cilk-plus/AN/pr57541-2.c: Delete. > > * c-c++-common/cilk-plus/AN/pr57541.c: Delete. > > * c-c++-common/cilk-plus/AN/pr57577.c: Delete. > > * c-c++-common/cilk-plus/AN/pr58942.c: Delete. > > * c-c++-common/cilk-plus/AN/pr61191.c: Delete. > > * c-c++-common/cilk-plus/AN/pr61455-2.c: Delete. > > * c-c++-common/cilk-plus/AN/pr61455.c: Delete. > > * c-c++-common/cilk-plus/AN/pr61962.c: Delete. > > * c-c++-common/cilk-plus/AN/pr61963.c: Delete. > > * c-c++-common/cilk-plus/AN/pr62008.c: Delete. > > * c-c++-common/cilk-plus/AN/pr63884.c: Delete. > > * c-c++-common/cilk-plus/AN/rank_mismatch.c: Delete. > > * c-c++-common/cilk-plus/AN/rank_mismatch2.c: Delete. > > * c-c++-common/cilk-plus/AN/rank_mismatch3.c: Delete. > > * c-c++-common/cilk-plus/AN/sec_implicit.c: Delete. > > * c-c++-common/cilk-plus/AN/sec_implicit2.c: Delete. > > * c-c++-common/cilk-plus/AN/sec_implicit_ex.c: Delete. > > * c-c++-common/cilk-plus/AN/sec_reduce_ind_same_value.c: Delete. > > * c-c++-common/cilk-plus/AN/sec_reduce_max_min_ind.c: Delete. > > * c-c++-common/cilk-plus/AN/sec_reduce_return.c: Delete. > > * c-c++-common/cilk-plus/AN/side-effects-1.c: Delete. > > * c-c++-common/cilk-plus/AN/test_builtin_return.c: Delete. > > * c-c++-common/cilk-plus/AN/test_sec_limits.c: Delete. > > * c-c++-common/cilk-plus/AN/tst_lngth.c: Delete. > > * c-c++-common/cilk-plus/AN/vla.c: Delete. > > * c-c++-common/cilk-plus/CK/Wparentheses-1.c: Delete. > > * c-c++-common/cilk-plus/CK/cilk-for-2.c: Delete. > > * c-c++-common/cilk-plus/CK/cilk-for-3.c: Delete. > > * c-c++-common/cilk-plus/CK/cilk-fors.c: Delete. > > * c-c++-common/cilk-plus/CK/cilk_for_errors.c: Delete. > > * c-c++-common/cilk-plus/CK/cilk_for_grain.c: Delete. > > * c-c++-common/cilk-plus/CK/cilk_for_grain_errors.c: Delete. > > * c-c++-common/cilk-plus/CK/cilk_for_ptr_iter.c: Delete. > > * c-c++-common/cilk-plus/CK/compound_cilk_spawn.c: Delete. > > * c-c++-common/cilk-plus/CK/concec_cilk_spawn.c: Delete. > > * c-c++-common/cilk-plus/CK/errors.c: Delete. > > * c-c++-common/cilk-plus/CK/fib.c: Delete. > > * c-c++-common/cilk-plus/CK/fib_init_expr_xy.c: Delete. > > * c-c++-common/cilk-plus/CK/fib_no_return.c: Delete. > > * c-c++-common/cilk-plus/CK/fib_no_sync.c: Delete. > > * c-c++-common/cilk-plus/CK/invalid_spawns.c: Delete. > > * c-c++-common/cilk-plus/CK/invalid_sync.c: Delete.c > > * c-c++-common/cilk-plus/CK/nested_cilk_for.c: Delete. > > * c-c++-common/cilk-plus/CK/no_args_error.c: Delete. > > * c-c++-common/cilk-plus/CK/pr59631.c: Delete. > > * c-c++-common/cilk-plus/CK/pr60197-2.c: Delete. > > * c-c++-common/cilk-plus/CK/pr60197.c: Delete. > > * c-c++-common/cilk-plus/CK/pr60469.c: Delete. > > * c-c++-common/cilk-plus/CK/pr60586.c: Delete. > > * c-c++-common/cilk-plus/CK/pr63307.c: Delete. > > * c-c++-common/cilk-plus/CK/pr69826-1.c: Delete. > > * c-c++-common/cilk-plus/CK/pr69826-2.c: Delete. > > * c-c++-common/cilk-plus/CK/pr79428-4.c: Delete. > > * c-c++-common/cilk-plus/CK/pr79428-7.c: Delete. > > * c-c++-common/cilk-plus/CK/spawn_in_return.c: Delete. > > * c-c++-common/cilk-plus/CK/spawnee_inline.c: Delete. > > * c-c++-common/cilk-plus/CK/spawner_inline.c: Delete. > > * c-c++-common/cilk-plus/CK/spawning_arg.c: Delete. > > * c-c++-common/cilk-plus/CK/steal_check.c: Delete. > > * c-c++-common/cilk-plus/CK/sync_wo_spawn.c: Delete. > > * c-c++-common/cilk-plus/CK/test__cilk.c: Delete. > > * c-c++-common/cilk-plus/CK/varargs_test.c: Delete. > > * c-c++-common/cilk-plus/PS/Wparentheses-1.c: Delete. > > * c-c++-common/cilk-plus/PS/body.c: Delete. > > * c-c++-common/cilk-plus/PS/clauses1.c: Delete. > > * c-c++-common/cilk-plus/PS/clauses2.c: Delete. > > * c-c++-common/cilk-plus/PS/clauses3.c: Delete. > > * c-c++-common/cilk-plus/PS/clauses4.c: Delete. > > * c-c++-common/cilk-plus/PS/for1.c: Delete. > > * c-c++-common/cilk-plus/PS/for2.c: Delete. > > * c-c++-common/cilk-plus/PS/for3.c: Delete. > > * c-c++-common/cilk-plus/PS/pr69363.c: Delete. > > * c-c++-common/cilk-plus/PS/reduction-1.c: Delete. > > * c-c++-common/cilk-plus/PS/reduction-2.c: Delete. > > * c-c++-common/cilk-plus/PS/reduction-3.c: Delete. > > * c-c++-common/cilk-plus/PS/run-1.c: Delete. > > * c-c++-common/cilk-plus/PS/safelen.c: Delete. > > * c-c++-common/cilk-plus/PS/vectorlength-2.c: Delete. > > * c-c++-common/cilk-plus/PS/vectorlength-3.c: Delete. > > * c-c++-common/cilk-plus/PS/vectorlength.c: Delete. > > * c-c++-common/cilk-plus/SE/ef_error.c: Delete. > > * c-c++-common/cilk-plus/SE/ef_error2.c: Delete. > > * c-c++-common/cilk-plus/SE/ef_error3.c: Delete. > > * c-c++-common/cilk-plus/SE/ef_test.c: Delete. > > * c-c++-common/cilk-plus/SE/ef_test2.c: Delete. > > * c-c++-common/cilk-plus/SE/vlength_errors.c: Delete. > > * g++.dg/cilk-plus/AN/array_function.c: Delete. > > * g++.dg/cilk-plus/AN/array_test1_tplt.c: Delete. > > * g++.dg/cilk-plus/AN/array_test2_tplt.c: Delete. > > * g++.dg/cilk-plus/AN/array_test_ND_tplt.c: Delete. > > * g++.dg/cilk-plus/AN/braced_list.c: Delete. > > * g++.dg/cilk-plus/AN/builtin_fn_custom_tplt.c: Delete. > > * g++.dg/cilk-plus/AN/builtin_fn_mutating_tplt.c: Delete. > > * g++.dg/cilk-plus/AN/fp_triplet_values_tplt.c: Delete. > > * g++.dg/cilk-plus/AN/postincr_test.c: Delete. > > * g++.dg/cilk-plus/AN/preincr_test.c: Delete. > > * g++.dg/cilk-plus/CK/catch_exc.c: Delete. > > * g++.dg/cilk-plus/CK/cf3.c: Delete. > > * g++.dg/cilk-plus/CK/cilk-for-tplt.c: Delete. > > * g++.dg/cilk-plus/CK/const_spawn.c: Delete. > > * g++.dg/cilk-plus/CK/fib-opr-overload.c: Delete. > > * g++.dg/cilk-plus/CK/fib-tplt.c: Delete. > > * g++.dg/cilk-plus/CK/for1.c: Delete. > > * g++.dg/cilk-plus/CK/lambda_spawns.c: Delete. > > * g++.dg/cilk-plus/CK/lambda_spawns_tplt.c: Delete. > > * g++.dg/cilk-plus/CK/pr60586.c: Delete. > > * g++.dg/cilk-plus/CK/pr66326.c: Delete. > > * g++.dg/cilk-plus/CK/pr68001.c: Delete. > > * g++.dg/cilk-plus/CK/pr68997.c: Delete. > > * g++.dg/cilk-plus/CK/pr69024.c: Delete. > > * g++.dg/cilk-plus/CK/pr69048.c: Delete. > > * g++.dg/cilk-plus/CK/pr69267.c: Delete. > > * g++.dg/cilk-plus/CK/pr80038.c: Delete. > > * g++.dg/cilk-plus/CK/stl_iter.c: Delete. > > * g++.dg/cilk-plus/CK/stl_rev_iter.c: Delete. > > * g++.dg/cilk-plus/CK/stl_test.c: Delete. > > * g++.dg/cilk-plus/cilk-plus.exp > > * g++.dg/cilk-plus/ef_test.C: Delete. > > * g++.dg/cilk-plus/for.C: Delete. > > * g++.dg/cilk-plus/for2.C: Delete. > > * g++.dg/cilk-plus/for3.C: Delete. > > * g++.dg/cilk-plus/for4.C: Delete. > > * g++.dg/cilk-plus/pr60967.C: Delete. > > * g++.dg/cilk-plus/pr69028.C: Delete. > > * g++.dg/cilk-plus/pr70565.C: Delete. > > * g++.dg/pr57662.C: Delete. > > * gcc.dg/cilk-plus/cilk-plus.exp > > * gcc.dg/cilk-plus/for1.c: Delete. > > * gcc.dg/cilk-plus/for2.c: Delete. > > * gcc.dg/cilk-plus/jump-openmp.c: Delete. > > * gcc.dg/cilk-plus/jump.c: Delete. > > * gcc.dg/cilk-plus/pr69798-1.c: Delete. > > * gcc.dg/cilk-plus/pr69798-2.c: Delete. > > * gcc.dg/cilk-plus/pr78306.c: Delete. > > * gcc.dg/cilk-plus/pr79116.c: Delete. > > * gcc.dg/graphite/id-28.c: Delete. > > * lib/cilk-plus-dg.exp: Delete. > > * lib/target-supports.exp (cilkplus_runtime): Delete. > > > > libcilkrts: Delete > So it's not important, but the patch doesn't have the removal of the > cilk+ testsuite or runtime. BUt again, it's not a big deal, I can guess > what that part of the patch looks like. > > It's not unusual to find lingering bits after the removal. So if after > the kit is ack'd & committed you find additional tidbits, don't hesitate > to let us know. > > > In c-family/c-gimplify.c:c_gimplify_expr you have this change: > > case MODIFY_EXPR: > case INIT_EXPR: > case CALL_EXPR: > - if (fn_contains_cilk_spawn_p (cfun) > - && cilk_detect_spawn_and_unwrap (expr_p) > - /* If an error is found, the spawn wrapper is removed and the > - original expression (MODIFY/INIT/CALL_EXPR) is processes as > - it is supposed to be. */ > - && !seen_error ()) > - return (enum gimplify_status) gimplify_cilk_spawn (expr_p); > - > default:; > I wonder if we should just remove the case labels as well since they do > nothing after the cilk+ bits are removed. > > In c-family/c.opt rather than deleting the flag entirely, standard > practice is leave the flag and issue a Deprecated error/warning. There > should be examples in c-family/c.opt. > > In c/c-parser: > > @@ -2338,8 +2330,6 @@ c_parser_declaration_or_fndef (c_parser *parser, > bool fndef_ok, > else > { > fnbody = c_parser_compound_statement (parser); > - if (flag_cilkplus && contains_array_notation_expr (fnbody)) > - fnbody = expand_array_notation_exprs (fnbody); > } > tree fndecl = current_function_decl; > if (nested) > > I think the curly-braces become redundant after your remove the cilk+ > specific code. > > Also in c/c-parser.c, this time in > c_parser_postfix_expression_after_primary. The assignment to idx before > this comment: > > + /* Here we have 3 options: > + 1. Array [EXPR] -- Normal Array call. > + 2. Array [EXPR : EXPR] -- Array notation without stride. > + 3. Array [EXPR : EXPR : EXPR] -- Array notation with stride. > + > + For 1, we just handle it just like a normal array expression. > + For 2 and 3 we handle it like we handle array notations. The > + idx value we have above becomes the initial/start index. > + */ > > Appears to be indented too far. Also the close comment should be at the > end of the previous line. > > > In these two hunks, you need to reindent the "else" clause that has > become unconditional: > @@ -9416,15 +9195,9 @@ c_parser_postfix_expression_after_primary > (c_parser *parser, > finish = c_parser_peek_token (parser)->get_finish (); > c_parser_consume_token (parser); > /* If the expressions have array notations, we expand them. */ > - if (flag_cilkplus > - && TREE_CODE (expr.value) == ARRAY_NOTATION_REF) > - expr = fix_array_notation_expr (expr_loc, > POSTINCREMENT_EXPR, expr); > - else > - { > expr = default_function_array_read_conversion (expr_loc, > expr); > expr.value = build_unary_op (op_loc, POSTINCREMENT_EXPR, > expr.value, false); > - } > set_c_expr_source_range (&expr, start, finish); > expr.original_code = ERROR_MARK; > expr.original_type = NULL; > @@ -9435,15 +9208,9 @@ c_parser_postfix_expression_after_primary > (c_parser *parser, > finish = c_parser_peek_token (parser)->get_finish (); > c_parser_consume_token (parser); > /* If the expressions have array notations, we expand them. */ > - if (flag_cilkplus > - && TREE_CODE (expr.value) == ARRAY_NOTATION_REF) > - expr = fix_array_notation_expr (expr_loc, > POSTDECREMENT_EXPR, expr); > - else > - { > expr = default_function_array_read_conversion (expr_loc, > expr); > expr.value = build_unary_op (op_loc, POSTDECREMENT_EXPR, > expr.value, false); > - } > set_c_expr_source_range (&expr, start, finish); > expr.original_code = ERROR_MARK; > expr.original_type = NULL; > > > In c_parser_omp_for_loop: > > > @@ -15882,8 +15604,6 @@ c_parser_omp_for_loop (location_t loc, c_parser > *parser, enum tree_code code, > case LE_EXPR: > break; > case NE_EXPR: > - if (code == CILK_SIMD || code == CILK_FOR) > - break; > /* FALLTHRU. */ > default: > /* Can't be cond = error_mark_node, because we want to > preserve > > I think you can just delete the NE_EXPR case label and the associated > FALLTHRU comment. > > > The && part of this condition needs reindenting as a result of pulling > the code out of the conditional. > > > > - if (!is_cilkplus_cilk_simd_fn) > - gcc_assert (token->type == CPP_NAME > + gcc_assert (token->type == CPP_NAME > && strcmp (IDENTIFIER_POINTER (token->value), > "simd") == 0); > > > In cp/parser.c: > > @@ -25090,12 +24798,6 @@ cp_parser_gnu_attribute_list (cp_parser* parser) > vec<tree, va_gc> *vec; > int attr_flag = (attribute_takes_identifier_p (identifier) > ? id_attr : normal_attr); > - if (is_cilkplus_vector_p (identifier)) > - { > - cp_parser_cilk_simd_fn_vector_attrs (parser, id_token); > - continue; > - } > - else > vec = cp_parser_parenthesized_expression_list > (parser, attr_flag, /*cast_p=*/false, > /*allow_expansion_p=*/false, > You need to reindent the code from the else clause that you're keeping. > > > I think the outer curleys are redundant now: > > > @@ -34825,12 +34495,8 @@ cp_parser_omp_for_loop_init (cp_parser *parser, > if (cp_lexer_next_token_is (parser->lexer, > CPP_OPEN_PAREN)) > { > - if (code != CILK_SIMD && code != CILK_FOR) > - error ("parenthesized initialization is not allowed in " > + error ("parenthesized initialization is not allowed in " > "OpenMP %<for%> loop"); > - else > - error ("parenthesized initialization is " > - "not allowed in for-loop"); > } > else > /* Trigger an error. */ > > > > Indentation on the else clause here needs to be fixed: > > @@ -35267,9 +34921,6 @@ cp_parser_omp_for_loop (cp_parser *parser, > enum > tree_code code, tree clauses, > > /* Note that we saved the original contents of this flag when we entered > the structured block, and so we don't need to re-save it here. */ > - if (code == CILK_SIMD || code == CILK_FOR) > - parser->in_statement = IN_CILK_SIMD_FOR; > - else > parser->in_statement = IN_OMP_FOR; > > /* Note that the grammar doesn't call for a structured block here, > > > > > I know it seems like a lot of issues, but I'm encouraged by the fact > that they're all just formatting things. The one or two correctness > fragments I was worried about turned out to be non-issues when I looked > at the larger context. > > So if you could fix the things noted above and repost. I'm pretty sure > it'll be approved at that point. > > jeff
cilk-plus.tar.xz
Description: cilk-plus.tar.xz