- 12 Nov, 2015 36 commits
-
-
2015-11-12 Hristian Kirtchev <kirtchev@adacore.com> * exp_attr.adb, freeze.adb, sem_util.adb, sem_ch13.adb: Minor reformatting. From-SVN: r230235
Hristian Kirtchev committed -
2015-11-12 Ed Schonberg <schonberg@adacore.com> * exp_attr.adb (Compile_Stream_Body_In_Scope): When compiling a stream operation for an array type, install the scope of the component type if it is private and not in scope, to prevent spurious errors if the full view of the component type has defaulted discriminants. From-SVN: r230234
Ed Schonberg committed -
sem_ch13.adb (Analyze_Attribute_Definition_Clause): For a variable, if this is not an overlay, set on Treat_As_Volatile on it. 2015-11-12 Eric Botcazou <ebotcazou@adacore.com> * sem_ch13.adb (Analyze_Attribute_Definition_Clause): For a variable, if this is not an overlay, set on Treat_As_Volatile on it. * gcc-interface/decl.c (E_Variable): Do not force the type to volatile for address clauses. Tweak and adjust various RM references. 2015-11-12 Eric Botcazou <ebotcazou@adacore.com> * checks.ads: Minor comment fix. From-SVN: r230233
Eric Botcazou committed -
* gnat_rm.texi, gnat_ugn.texi, doc/gnat_ugn/platform_specific_information.rst, doc/gnat_ugn/gnat_and_program_execution.rst, doc/gnat_ugn/the_gnat_compilation_model.rst, doc/gnat_rm/standard_and_implementation_defined_restrictions.rst, doc/gnat_rm/implementation_defined_pragmas.rst: Update documentation. From-SVN: r230232
Arnaud Charlet committed -
* gnat_rm.texi, gnat_ugn.texi, doc/gnat_ugn/platform_specific_information.rst, doc/gnat_ugn/gnat_and_program_execution.rst, doc/gnat_ugn/the_gnat_compilation_model.rst, doc/gnat_rm/standard_and_implementation_defined_restrictions.rst, doc/gnat_rm/implementation_defined_pragmas.rst: Update documentation. From-SVN: r230231
Arnaud Charlet committed -
From-SVN: r230230
Arnaud Charlet committed -
2015-11-12 Eric Botcazou <ebotcazou@adacore.com> * einfo.ads (Overlays_Constant): Document usage for E_Constant. * freeze.adb (Warn_Overlay): Small reformatting. (Check_Address_Clause): Deal specifically with deferred constants. For a variable or a non-imported constant overlaying a constant object and with initialization value, either remove the initialization or issue a warning. Fix a couple of typos. * sem_util.adb (Note_Possible_Modification): Overhaul the condition for the warning on modified constants and use Find_Overlaid_Entity instead of doing it manually. * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Compute and set Overlays_Constant once on entry. Do not treat the overlaid entity as volatile. Do not issue the warning on modified constants here. * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Constant>: Remove over-restrictive condition for the special treatment of deferred constants. <E_Variable>: Remove obsolete associated code. From-SVN: r230229
Eric Botcazou committed -
2015-11-12 Eric Botcazou <ebotcazou@adacore.com> * gcc-interface/trans.c (gnat_to_gnu) <N_Subprogram_Renaming_Decl>: Do not materialize renamed subprograms if only annotating types. From-SVN: r230228
Eric Botcazou committed -
decl.c (gnat_to_gnu_entity): Create IMPORTED_DECL nodes to describe the subprogram renamings which are... 2015-11-12 Pierre-Marie de Rodat <derodat@adacore.com> * gcc-interface/decl.c (gnat_to_gnu_entity): Create IMPORTED_DECL nodes to describe the subprogram renamings which are relevant at debug time. * gcc-interface/gigi.h (get_debug_scope): Add declaration. * gcc-interface/trans.c (Identifier_to_gnu): Consider N_Defining_Operator_Symbol as valid entities. (gnat_to_gnu): Handle N_Defining_Operator_Symbol the same way as other entities. Introduce a specific handling for N_Subprogram_Renaming_Declaration: call gnat_to_gnu_entity on the entity defined for relevant ones. (process_decls): Process subprogram renaming declarations during the second pass only. * gcc-interface/utils.c (get_debug_scope): Make it external. Consider N_Defining_Operator_Symbol as valid entities. (gnat_write_global_declarations): Output debugging information for top-level imported declarations. * gcc-interface/Makefile.in: Fix typo. From-SVN: r230227
Arnaud Charlet committed -
2015-11-12 Emmanuel Briot <briot@adacore.com> * s-os_lib.ads: Documentation update. 2015-11-12 Arnaud Charlet <charlet@adacore.com> * s-taprop-vxworks.adb, s-osinte-vxworks.ads: Use a single import of taskDelay to avoid confusion. 2015-11-12 Ed Schonberg <schonberg@adacore.com> * exp_ch6.adb (Expand_Simple_Function_Return): If the return type is class-wide and the expression is a view conversion, remove the conversion to prevent overriding of the tag, which must be that of the object being returned. 2015-11-12 Tristan Gingold <gingold@adacore.com> * bindgen.adb (Gen_Adainit): Code cleanup. 2015-11-12 Hristian Kirtchev <kirtchev@adacore.com> * s-stalib.ads: Code cleanup. 2015-11-12 Ed Schonberg <schonberg@adacore.com> * sem_ch3.adb (Analyze_Incomplete_Type_Decl): small optimization. (Analyze_Subtype_Declaration): For floating point types, inherit dimensions. (OK_For_Limited_Init_In_05): Handle properly a conditional expression whose condition is static, and is rewritten as the branch that will be executed. 2015-11-12 Ed Schonberg <schonberg@adacore.com> * sem_attr.adb (Resolve_Attribute, case 'Access): If the context type is an access constant type, do not mark the attribute reference as a possible modification of the prefix. From-SVN: r230226
Arnaud Charlet committed -
* sem_ch6.adb (Analyze_Procedure_Call) If CodePeer_Mode is True, do not analyze the expression of a machine code insertion. * sem_ch13.adb (Analyze_Code_Statement) If CodePeer_Mode is True, mark the N_Code_Statement node as analyzed and do nothing else. From-SVN: r230225
Steve Baird committed -
2015-11-12 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb (Check_Limited_Return): Make global to package for use elsewhere. (Analyze_Expression_Function): Remove duplicated code, pre-analyze expression to capture names and call Check_Limited_Return so that semantic checks are identical to those for regular functions returning limited types. 2015-11-12 Gary Dismukes <dismukes@adacore.com> * bindgen.adb: Fix typo. * sem_ch6.adb: Minor reformatting. 2015-11-12 Emmanuel Briot <briot@adacore.com> * s-os_lib.adb (Argument_String_To_List): fix handling of windows separators From-SVN: r230224
Arnaud Charlet committed -
2015-11-12 Christian Bruel <christian.bruel@st.com> * gcc.target/arm/mmx-1.c: Adjust for unified asm. From-SVN: r230223
Christian Bruel committed -
gcc/ 2015-11-12 Renlin Li <renlin.li@arm.com> * config/arm/arm.md (addsi3_compare_op2): Make the order of assembly pattern consistent with constraint order. From-SVN: r230222
Renlin Li committed -
From-SVN: r230221
Jonathan Wakely committed -
2015-11-12 Tom de Vries <tom@codesourcery.com> * gen-pass-instances.awk (handle_line): Simplify match regexp. From-SVN: r230220
Tom de Vries committed -
2015-11-12 Tom de Vries <tom@codesourcery.com> * gen-pass-instances.awk (handle_line): Simplify init of postfix_starts_at. From-SVN: r230219
Tom de Vries committed -
2015-11-12 Tom de Vries <tom@codesourcery.com> * gen-pass-instances.awk (handle_line): Rename var where to call_starts_at. From-SVN: r230218
Tom de Vries committed -
2015-11-11 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/arc.c (gen_compare_reg): Swap operands also when we do not expand to rtl. From-SVN: r230217
Claudiu Zissulescu committed -
2015-11-12 Richard Biener <rguenther@suse.de> PR tree-optimization/58497 * tree-vect-generic.c: Include gimplify.h. (tree_vec_extract): Lookup constant/constructor DEFs. (do_cond): Unshare cond. From-SVN: r230216
Richard Biener committed -
i386.c (ix86_legitimate_combined_insn): Reject combined insn if the alignment of vector mode memory operand is less... * config/i386/i386.c (ix86_legitimate_combined_insn): Reject combined insn if the alignment of vector mode memory operand is less than ssememalign. testsuite/ChangeLog: * gcc.target/i386/sse-1.c (swizzle): Assume that a is aligned to 64 bits. From-SVN: r230215
Uros Bizjak committed -
2015-11-12 Tom de Vries <tom@codesourcery.com> * gen-pass-instances.awk (handle_line): Print parentheses and pass_name explicitly. From-SVN: r230213
Tom de Vries committed -
2015-11-12 Tom de Vries <tom@codesourcery.com> * gen-pass-instances.awk (handle_line): Add pass_num, prefix and postfix vars. From-SVN: r230212
Tom de Vries committed -
2015-11-12 Tom de Vries <tom@codesourcery.com> * gen-pass-instances.awk (handle_line): Add comments. From-SVN: r230211
Tom de Vries committed -
2015-11-12 Tom de Vries <tom@codesourcery.com> * gen-pass-instances.awk (handle_line): Rename len_of_end to len_of_close. From-SVN: r230210
Tom de Vries committed -
2015-11-12 Tom de Vries <tom@codesourcery.com> * gen-pass-instances.awk (handle_line): Add len_of_call variable. From-SVN: r230209
Tom de Vries committed -
2015-11-12 Tom de Vries <tom@codesourcery.com> * gen-pass-instances.awk (handle_line): Restructure using early-out. From-SVN: r230208
Tom de Vries committed -
2015-11-12 Tom de Vries <tom@codesourcery.com> * gen-pass-instances.awk (handle_line): Unify semicolon use. From-SVN: r230207
Tom de Vries committed -
2015-11-12 Tom de Vries <tom@codesourcery.com> * gen-pass-instances.awk (handle_line): Remove unused var line_length. From-SVN: r230206
Tom de Vries committed -
2015-11-12 Tom de Vries <tom@codesourcery.com> * gen-pass-instances.awk: Add emacs indent setting. From-SVN: r230205
Tom de Vries committed -
2015-11-12 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com> * fold-const.c (fold_binary_loc) : Move Convert A/B/C to A/(B*C) to match.pd. Move Convert A/(B/C) to (A/B)*C to match.pd. Move Convert C1/(X*C2) into (C1/C2)/X to match.pd. Move Optimize (X & (-A)) / A where A is a power of 2, to X >> log2(A) to match.pd. * match.pd (rdiv (rdiv:s @0 @1) @2): New simplifier. (rdiv @0 (rdiv:s @1 @2)): New simplifier. (div (convert? (bit_and @0 INTEGER_CST@1)) INTEGER_CST@2): New simplifier. (rdiv REAL_CST@0 (mult @1 REAL_CST@2)): New simplifier. From-SVN: r230204
Naveen H.S committed -
gcc/Changelog 2015-11-12 Charles Baylis <charles.baylis@linaro.org> * config/arm/neon.md: (neon_vld2_lane<mode>): Remove unused max variable. (neon_vst2_lane<mode>): Likewise. (neon_vld3_lane<mode>): Likewise. (neon_vst3_lane<mode>): Likewise. (neon_vld4_lane<mode>): Likewise. (neon_vst4_lane<mode>): Likewise. From-SVN: r230203
Charles Baylis committed -
* decl.c (duplicate_decls): When combining typedefs, remove the new type from the variants list. From-SVN: r230202
Jason Merrill committed -
* pt.c (instantiate_class_template_1): Set function_depth around instantiation of lambda op(). From-SVN: r230201
Jason Merrill committed -
Earlier, graphite used to translate portions of the original program after scop-detection in order to represent the SCoP into polyhedral model. This was required because each basic block was represented as independent basic block in the polyhedral model. So all the cross-basic-block dependencies were translated out-of-ssa. With this patch those dependencies are also exposed to the ISL, so there is no need to modify the original structure of the program. After this patch we should be able to enable graphite at some default optimization level. Highlights: Remove cross bb scalar to array translation For reductions, add support for more than just INT_CST Early bailout on codegen. Verify loop-closed ssa structure during copy of renames The uses of exprs should come from bb which dominates the bb Collect the init value of close phi in loop-guard Do not follow vuses for close-phi, postpone loop-close phi until the corresponding loop-phi is processed Bail out if no bb found to place cond/loop -phis Move insertion of liveouts at the end of codegen Insert loop-phis in the loop-header. This patch passes regtest and bootstrap with BOOT_CFLAGS='-O2 -fgraphite-identity -floop-nest-optimize' 2015-11-11 Aditya Kumar <aditya.k7@samsung.com> Sebastian Pop <s.pop@samsung.com> * graphite-isl-ast-to-gimple.c (class translate_isl_ast_to_gimple): New member codegen_error (translate_isl_ast_for_loop): Remove call to single_succ_edge and early return. (translate_isl_ast_node_user): Early return in case of error. (translate_isl_ast_to_gimple::translate_isl_ast): Same. (translate_isl_ast_to_gimple::translate_pending_phi_nodes): New. (add_parameters_to_ivs_params): Remove macro. (graphite_regenerate_ast_isl): Add if_region pointer to region. * graphite-poly.c (new_poly_dr): Remove macro. (print_pdr): Same. (new_gimple_poly_bb): Same. (free_gimple_poly_bb): Same. (print_scop_params): Same. * graphite-poly.h (struct poly_dr): Same. (struct poly_bb): Add new_bb. (gbb_from_bb): Remove dead code. (pbb_from_bb): Same. * graphite-scop-detection.c (parameter_index_in_region_1): Same. (parameter_index_in_region): Same. (find_scop_parameters): Same. (build_cross_bb_scalars_def): New. (build_cross_bb_scalars_use): New. (graphite_find_cross_bb_scalar_vars): New (try_generate_gimple_bb): Reads and Writes. (build_alias_set): Move. (gather_bbs::before_dom_children): Gather bbs visited. (build_scops): call build_alias_set. * graphite-sese-to-poly.c (phi_arg_in_outermost_loop): Delete. (remove_simple_copy_phi): Delete. (remove_invariant_phi): Delete. (simple_copy_phi_p): Delete. (reduction_phi_p): Delete. (isl_id_for_dr): Remove unused param. (parameter_index_in_region_1): Remove macro usage. (set_scop_parameter_dim): Same. (add_param_constraints): Same. (add_conditions_to_constraints): Same (build_scop_iteration_domain): Same. (pdr_add_alias_set): Comment. (add_scalar_version_numbers): New. (build_poly_dr): ISL id. (build_scop_drs): Move. (build_poly_sr_1): Same. (insert_stmts): Remove. (build_poly_sr): New. (new_pbb_from_pbb): Delete. (insert_out_of_ssa_copy_on_edge): Delete. (create_zero_dim_array): Delete. (scalar_close_phi_node_p): Delete. (propagate_expr_outside_region): Delete. (rewrite_close_phi_out_of_ssa): Delete. (rewrite_phi_out_of_ssa): Delete. (rewrite_degenerate_phi): Delete. (rewrite_reductions_out_of_ssa): Delete. (rewrite_cross_bb_scalar_dependence): Delete. (handle_scalar_deps_crossing_scop_limits): (rewrite_cross_bb_scalar_deps): Delete. (build_poly_scop): Remove calls to out-of-ssa functions. * graphite.c (graphite_transform_loops): Early return in case of codegen error. * sese.c (debug_rename_map_1): Delete. (debug_rename_map): Delete. (sese_record_loop): Remove macro. (build_sese_loop_nests): Same. (new_sese_info): Same. (free_sese_info): Same. (sese_insert_phis_for_liveouts): (is_loop_closed_ssa_use): New. (number_of_phi_nodes): New. (bb_contains_loop_close_phi_nodes): New. (bb_contains_loop_phi_nodes): New. (phi_uses_name): New. (is_valid_rename): (get_rename): Add old_bb and loop_phi for more precise matching of exprs. (set_rename): Pass region. (later_of_the_two): New. (gsi_insert_earliest): New. (collect_all_ssa_names): New. (substitute_ssa_name): New. (rename_all_uses): New. (get_rename_from_scev): New. (rename_uses): Pass old_bb for more precise matching of exprs. (get_def_bb_for_const): New. (get_new_name): New. (get_loc): New. (get_edges): New. (copy_loop_phi_args): New. (copy_loop_phi_nodes): New. (get_loop_init_value): New. (find_init_value): New. (find_init_value_close_phi): New. (copy_loop_close_phi_args): New. (copy_loop_close_phi_nodes): New. (add_phi_arg_for_new_expr): New. (copy_cond_phi_args): New. (copy_cond_phi_nodes): New. (copy_phi_nodes): New. (should_copy_to_new_region): New. (set_rename_for_each_def): New. (graphite_copy_stmts_from_block): Early return in case of error. (copy_bb_and_scalar_dependences): Same. * sese.h (vec_find): New. (SESE_PARAMS): Delete. (SESE_LOOPS): Delete. (SESE_LOOP_NEST): Delete. (sese_contains_loop): Remove macro usage. (sese_nb_params): Same. (struct gimple_poly_bb): Added read_scalar_refs, write_scalar_refs. Co-Authored-By: Sebastian Pop <s.pop@samsung.com> From-SVN: r230200
Aditya Kumar committed -
From-SVN: r230199
GCC Administrator committed
-
- 11 Nov, 2015 4 commits
-
-
From-SVN: r230195
David Edelsohn committed -
The patch builds the original schedule based on the now optimized scattering dimension instead of building one based on the loop index only. The implementation is simpler and catches more cases where the original schedule and the transformed schedule are the same, such as the one below: for (i = 0; i < 1000; i++) { Temp = F[i]; for (j = 0; j < 1000; j++) { D[j] = E[j] * Temp; A[i][j] = A[i][j] + B[i][j] * C[i][j] - D[j] ; } D[i] = E[i] * F[i]; } * graphite-sese-to-poly.c (build_scop_original_schedule): Call isl_union_map_add_map on every pbb->schedule. From-SVN: r230191
Abderrazek Zaafrani committed -
* gcc.dg/graphite/fuse-1.c: Adjust pattern. Remove dg-do. * gcc.dg/graphite/fuse-2.c: Same. * gcc.dg/graphite/graphite.exp (opt_files): Add fuse-*.c and isl-ast-gen-*.c files. * gcc.dg/graphite/isl-ast-gen-blocks-1.c: Remove dg-do and dg-options. * gcc.dg/graphite/isl-ast-gen-blocks-2.c: Same. * gcc.dg/graphite/isl-ast-gen-blocks-3.c: Same. * gcc.dg/graphite/isl-ast-gen-blocks-4.c: Same. * gcc.dg/graphite/isl-ast-gen-if-1.c: Same. * gcc.dg/graphite/isl-ast-gen-if-2.c: Same. * gcc.dg/graphite/isl-ast-gen-single-loop-1.c: Same. * gcc.dg/graphite/isl-ast-gen-single-loop-2.c: Same. * gcc.dg/graphite/isl-ast-gen-single-loop-3.c: Same. * gcc.dg/graphite/isl-ast-gen-user-1.c: Same. * gcc.dg/graphite/isl-codegen-loop-dumping.c: Remove. From-SVN: r230190
Sebastian Pop committed -
2015-11-11 Tom de Vries <tom@codesourcery.com> * tree-parloops.c (create_parallel_loop): Return void. From-SVN: r230189
Tom de Vries committed
-