gcc/ * cilk-builtins.def (__cilkrts_cilk_for_32): New. (__cilkrts_cilk_for_64): Likewise. * cilk-common.c (declare_cilk_for_builtin): New function. (cilk_init_builtins): Declare __cilkrts_cilk_for_32 and __cilkrts_cilk_for_64 bultins. * cilk.h (enum cilk_tree_index): Added CILK_TI_F_LOOP_32 and CILK_TI_F_LOOP_64. (cilk_for_32_fndecl): New define. (cilk_for_64_fndecl): Likewise. * gimple-pretty-print.c (dump_gimple_omp_for): Correct hadling of GF_OMP_FOR_KIND_CILKFOR cases; Added NE_EXPR case. * gimple.h (enum gf_mask): Added GF_OMP_FOR_KIND_CILKFOR; adjusted GF_OMP_FOR_KIND_MASK, GF_OMP_FOR_SIMD, GF_OMP_FOR_COMBINED, GF_OMP_FOR_COMBINED_INTO. * gimplify.c (gimplify_scan_omp_clauses): Added OMP_CLAUSE__CILK_FOR_COUNT_ case. (gimplify_adjust_omp_clauses): Ditto. (gimplify_omp_for): Added CILK_FOR case. (gimplify_expr): Ditto. * omp-low.c: Include cilk.h. (extract_omp_for_data): Set appropriate kind for GF_OMP_FOR_KIND_CILKFOR; added check for GF_OMP_FOR_KIND_CILKFOR. (scan_sharing_clauses): Added OMP_CLAUSE__CILK_FOR_COUNT_ cases. (create_omp_child_function_name): Added second argument to handle cilk_for case. (cilk_for_check_loop_diff_type): New function. (expand_cilk_for_call): Likewise. (expand_cilk_for): Likewise. (create_omp_child_function): Set cilk_for_count; handle the cases when it is true; call create_omp_child_function_name with second argument. (expand_omp_taskreg): Set is_cilk_for and handle cases when it's true. (expand_omp_for): Handle case of GF_OMP_FOR_KIND_CILKFOR. * tree-core.h (omp_clause_code): Added OMP_CLAUSE__CILK_FOR_COUNT_. * tree-nested.c (convert_nonlocal_omp_clauses): Added OMP_CLAUSE__CILK_FOR_COUNT_ case. (convert_local_omp_clauses): Ditto. * tree-pretty-print.c (dump_omp_clause): Added OMP_CLAUSE__CILK_FOR_COUNT_ and OMP_CLAUSE_SCHEDULE_CILKFOR cases. (dump_generic_node): Added CILK_FOR case. * tree.c (omp_clause_num_ops): New element OMP_CLAUSE__CILK_FOR_COUNT_ (1). (omp_clause_code_name): New element _Cilk_for_count_. (walk_tree_1): Added OMP_CLAUSE__CILK_FOR_COUNT_ case. * tree.def: Add tree code for CILK_FOR. gcc/c/ * c-parser.c (c_parser_cilk_for): New function. (c_parser_cilk_grainsize): Likewise. (c_get_temp_regvar): Likewise. (c_parser_statement_after_labels): Added RID_CILK_FOR case. (c_parser_pragma): Added PRAGMA_CILK_GRAINSIZE case. (c_parser_omp_for_loop): Added CILK_FOR and CILK_SIMD checks. * c-typeck.c (c_finish_omp_clauses): Added OMP_CLAUSE__CILK_FOR_COUNT_ case. gcc/cp/ * cp-cilkplus.c (cpp_validate_cilk_plus_loop_aux): Loc definition simplified. * parser.c (cp_parser_cilk_for): New function. (cp_parser_cilk_grainsize): Likewise. (cp_parser_statement): Added RID_CILK_FOR case. (cp_parser_omp_for_cond): Added CILK_FOR check. (cp_parser_omp_for_loop_init): Change function argument to accept tree_code instead just a bool flag; change the check to use that tree_code; check for initialization declaration in case of Cilk_for. (cp_parser_omp_for_loop): Added checks for CILK_FOR and RID_CILK_FOR; changed call to cp_parser_omp_for_loop_init according new arguments' list. (cp_parser_pragma): Added PRAGMA_CILK_GRAINSIZE case. * pt.c (tsubst_expr): Added CILK_FOR case. * semantics.c: Include convert.h. (finish_omp_clauses): Properly handle OMP_CLAUSE_SCHEDULE_CILKFOR case; added OMP_CLAUSE__CILK_FOR_COUNT_. (handle_omp_for_class_iterator): New argument lastp and its usage; added NE_EXPR case. (finish_omp_for): Changed call to handle_omp_for_class_iterator according new arguments' list; in case of Cilk_for save very first decl and create empty stmt_list block; use block to build correct statement tree. gcc/c-family/ * c-cilkplus.c (cilk_for_number_of_iterations): New function. * c-common.c (c_common_reswords): Added _Cilk_for. * c-common.h (enum rid): Added RID_CILK_FOR. (cilk_for_number_of_iterations): Add declaration. * c-omp.c (c_finish_omp_for): Added checks for CILK_SIMD and CILK_FOR. * c-pragma.c (init_pragma): Register "grainsize" pragma. * c-pragma.h (enum pragma_kind): Add PRAGMA_CILK_GRAINSIZE. gcc/testsuite/ * c-c++-common/cilk-plus/CK/cilk-fors.c: New test. * c-c++-common/cilk-plus/CK/cilk-for-2.c: New test. * c-c++-common/cilk-plus/CK/cilk-for-3.c: New test. * c-c++-common/cilk-plus/CK/cilk_for_errors.c: New test. * c-c++-common/cilk-plus/CK/cilk_for_grain.c: New test. * c-c++-common/cilk-plus/CK/cilk_for_grain_errors.c: New test. * c-c++-common/cilk-plus/CK/cilk_for_ptr_iter.c: New test. * c-c++-common/cilk-plus/CK/nested_cilk_for.c: New test. * g++.dg/cilk-plus/CK/cf3.cc: New test. * g++.dg/cilk-plus/CK/cilk-for-tplt.cc: New test. * g++.dg/cilk-plus/CK/for1.cc: New test. * g++.dg/cilk-plus/CK/stl_iter.cc: New test. * g++.dg/cilk-plus/CK/stl_rev_iter.cc: New test. * g++.dg/cilk-plus/CK/stl_test.cc: New test. Co-Authored-By: Balaji V. Iyer <balaji.v.iyer@intel.com> Co-Authored-By: Igor Zamyatin <igor.zamyatin@intel.com> From-SVN: r214818
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| asan | Loading commit data... | |
| cilk-plus | Loading commit data... | |
| cpp | Loading commit data... | |
| dfp | Loading commit data... | |
| dwarf2 | Loading commit data... | |
| gomp | Loading commit data... | |
| guality | Loading commit data... | |
| simulate-thread | Loading commit data... | |
| tm | Loading commit data... | |
| torture | Loading commit data... | |
| tsan | Loading commit data... | |
| ubsan | Loading commit data... | |
| Wbool-compare-1.c | Loading commit data... | |
| Wcast-qual-1.c | Loading commit data... | |
| Wconversion-real.c | Loading commit data... | |
| Wfloat-conversion.c | Loading commit data... | |
| Wint-to-pointer-cast-1.c | Loading commit data... | |
| Wint-to-pointer-cast-2.c | Loading commit data... | |
| Wint-to-pointer-cast-3.c | Loading commit data... | |
| Wmemset-transposed-args1.c | Loading commit data... | |
| Wmemset-transposed-args2.c | Loading commit data... | |
| Wpointer-arith-1.c | Loading commit data... | |
| Wsequence-point-1.c | Loading commit data... | |
| Wsizeof-pointer-memaccess1.c | Loading commit data... | |
| Wsizeof-pointer-memaccess2.c | Loading commit data... | |
| Wunused-local-typedefs.c | Loading commit data... | |
| Wunused-var-1.c | Loading commit data... | |
| Wunused-var-10.c | Loading commit data... | |
| Wunused-var-11.c | Loading commit data... | |
| Wunused-var-12.c | Loading commit data... | |
| Wunused-var-13.c | Loading commit data... | |
| Wunused-var-14.c | Loading commit data... | |
| Wunused-var-2.c | Loading commit data... | |
| Wunused-var-3.c | Loading commit data... | |
| Wunused-var-4.c | Loading commit data... | |
| Wunused-var-5.c | Loading commit data... | |
| Wunused-var-6.c | Loading commit data... | |
| Wunused-var-7.c | Loading commit data... | |
| Wunused-var-8.c | Loading commit data... | |
| Wunused-var-9.c | Loading commit data... | |
| Wvarargs-2.c | Loading commit data... | |
| Wvarargs.c | Loading commit data... | |
| addrtmp.c | Loading commit data... | |
| array-lit.c | Loading commit data... | |
| asmgoto-1.c | Loading commit data... | |
| asmgoto-2.c | Loading commit data... | |
| asmgoto-3.c | Loading commit data... | |
| asmgoto-4.c | Loading commit data... | |
| attr-used-2.c | Loading commit data... | |
| attr-used.c | Loading commit data... | |
| attributes-1.c | Loading commit data... | |
| attributes-2.c | Loading commit data... | |
| builtin-offsetof.c | Loading commit data... | |
| convert-vec-1.c | Loading commit data... | |
| cxxbitfields-3.c | Loading commit data... | |
| cxxbitfields-6.c | Loading commit data... | |
| fmax-errors.c | Loading commit data... | |
| fold-bitand-4.c | Loading commit data... | |
| fold-divmul-1.c | Loading commit data... | |
| init-vec-1.c | Loading commit data... | |
| int128-1.c | Loading commit data... | |
| int128-2.c | Loading commit data... | |
| int128-types-1.c | Loading commit data... | |
| opaque-vector.c | Loading commit data... | |
| pr20000.c | Loading commit data... | |
| pr20318.c | Loading commit data... | |
| pr28656.c | Loading commit data... | |
| pr30020.c | Loading commit data... | |
| pr33193.c | Loading commit data... | |
| pr33763.c | Loading commit data... | |
| pr36282-1.c | Loading commit data... | |
| pr36282-2.c | Loading commit data... | |
| pr36282-3.c | Loading commit data... | |
| pr36282-4.c | Loading commit data... | |
| pr36513-2.c | Loading commit data... | |
| pr36513.c | Loading commit data... | |
| pr37743.c | Loading commit data... | |
| pr41779.c | Loading commit data... | |
| pr41935.c | Loading commit data... | |
| pr42674.c | Loading commit data... | |
| pr43395.c | Loading commit data... | |
| pr43690.c | Loading commit data... | |
| pr43772.c | Loading commit data... | |
| pr43942.c | Loading commit data... | |
| pr44832.c | Loading commit data... | |
| pr46562-2.c | Loading commit data... | |
| pr46562.c | Loading commit data... | |
| pr48418.c | Loading commit data... | |
| pr49706-2.c | Loading commit data... | |
| pr49706.c | Loading commit data... | |
| pr50459-2.c | Loading commit data... | |
| pr50459.c | Loading commit data... | |
| pr51294.c | Loading commit data... | |
| pr51712.c | Loading commit data... | |
| pr51768.c | Loading commit data... | |
| pr52177.c | Loading commit data... | |
| pr52181.c | Loading commit data... | |
| pr53633.c | Loading commit data... | |
| pr54486.c | Loading commit data... | |
| pr54988.c | Loading commit data... | |
| pr55619.c | Loading commit data... | |
| pr55771.c | Loading commit data... | |
| pr56302.c | Loading commit data... | |
| pr56566.c | Loading commit data... | |
| pr56607.c | Loading commit data... | |
| pr57653-2.c | Loading commit data... | |
| pr57653-2.h | Loading commit data... | |
| pr57653.c | Loading commit data... | |
| pr57653.h | Loading commit data... | |
| pr57793.c | Loading commit data... | |
| pr58346-1.c | Loading commit data... | |
| pr58346-2.c | Loading commit data... | |
| pr58346-3.c | Loading commit data... | |
| pr59032.c | Loading commit data... | |
| pr59037.c | Loading commit data... | |
| pr59223.c | Loading commit data... | |
| pr59280.c | Loading commit data... | |
| pr60101.c | Loading commit data... | |
| pr60156.c | Loading commit data... | |
| pr60226.c | Loading commit data... | |
| pr60439.c | Loading commit data... | |
| pr60689.c | Loading commit data... | |
| pr61553.c | Loading commit data... | |
| pr62199-2.c | Loading commit data... | |
| pr62199.c | Loading commit data... | |
| raw-string-1.c | Loading commit data... | |
| raw-string-10.c | Loading commit data... | |
| raw-string-11.c | Loading commit data... | |
| raw-string-12.c | Loading commit data... | |
| raw-string-13.c | Loading commit data... | |
| raw-string-14.c | Loading commit data... | |
| raw-string-15.c | Loading commit data... | |
| raw-string-16.c | Loading commit data... | |
| raw-string-17.c | Loading commit data... | |
| raw-string-18.c | Loading commit data... | |
| raw-string-19.c | Loading commit data... | |
| raw-string-2.c | Loading commit data... | |
| raw-string-3.c | Loading commit data... | |
| raw-string-4.c | Loading commit data... | |
| raw-string-5.c | Loading commit data... | |
| raw-string-6.c | Loading commit data... | |
| raw-string-7.c | Loading commit data... | |
| raw-string-8.c | Loading commit data... | |
| raw-string-9.c | Loading commit data... | |
| restrict-1.c | Loading commit data... | |
| restrict-2.c | Loading commit data... | |
| restrict-4.c | Loading commit data... | |
| rotate-1.c | Loading commit data... | |
| rotate-1a.c | Loading commit data... | |
| rotate-2.c | Loading commit data... | |
| rotate-2a.c | Loading commit data... | |
| rotate-3.c | Loading commit data... | |
| rotate-3a.c | Loading commit data... | |
| rotate-4.c | Loading commit data... | |
| rotate-4a.c | Loading commit data... | |
| rotate-5.c | Loading commit data... | |
| scal-to-vec1.c | Loading commit data... | |
| scal-to-vec2.c | Loading commit data... | |
| sizeof-array-argument.c | Loading commit data... | |
| transparent-union-1.c | Loading commit data... | |
| uninit-17.c | Loading commit data... | |
| uninit-D-O0.c | Loading commit data... | |
| uninit-D.c | Loading commit data... | |
| uninit-E-O0.c | Loading commit data... | |
| uninit-E.c | Loading commit data... | |
| uninit-F-O0.c | Loading commit data... | |
| uninit-F.c | Loading commit data... | |
| uninit-G-O0.c | Loading commit data... | |
| uninit-G.c | Loading commit data... | |
| uninit-pr51010.c | Loading commit data... | |
| vector-1.c | Loading commit data... | |
| vector-2.c | Loading commit data... | |
| vector-3.c | Loading commit data... | |
| vector-4.c | Loading commit data... | |
| vector-compare-1.c | Loading commit data... | |
| vector-compare-2.c | Loading commit data... | |
| vector-compare-3.c | Loading commit data... | |
| vector-init-1.c | Loading commit data... | |
| vector-init-2.c | Loading commit data... | |
| vector-scalar-2.c | Loading commit data... | |
| vector-scalar.c | Loading commit data... | |
| vector-shift.c | Loading commit data... | |
| vector-shift1.c | Loading commit data... | |
| vector-shift3.c | Loading commit data... | |
| vector-subscript-1.c | Loading commit data... | |
| vector-subscript-2.c | Loading commit data... | |
| vector-subscript-3.c | Loading commit data... | |
| vla-1.c | Loading commit data... | |
| warn-ommitted-condop.c | Loading commit data... | |
| wdate-time.c | Loading commit data... |