summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* * config/msp430/lib2hw_mul.S: Fix alignment.dj2015-11-202-1/+5
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230633 138bc75d-0d04-0410-961f-82ee72b054a4
* fix PR68428: ignore bb dominated by the scop->exitspop2015-11-194-1/+41
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230632 138bc75d-0d04-0410-961f-82ee72b054a4
* fix PR68341: correctly compute the insertion point for close phi nodesspop2015-11-193-35/+74
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230631 138bc75d-0d04-0410-961f-82ee72b054a4
* add testcase for PR68335spop2015-11-192-0/+51
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230630 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c++/68422jason2015-11-194-2/+28
| | | | | | | | | * cp-tree.h (PACK_EXPANSION_SIZEOF_P): New. * parser.c (cp_parser_sizeof_pack): Set it. * pt.c (tsubst_copy) [SIZEOF_EXPR]: Likewise. (tsubst_pack_expansion): Improve T... shortcut for expression packs. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230629 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/nathan2015-11-1915-5/+54
| | | | | | | | | | | | | | | | | | | | | | | * config/nvptx/nvptx.h (SUPPORTS_WEAK): Define. * config/nvptx/nvptx.c (nvptx_write_function_decl): Support DECL_WEAK. (nvptx_declare_objec_name): Likewise. gcc/testsuite/ * lib/target-supports.exp (check_weak_available): Add nvptx-*-*. * gcc.dg/attr-weakref-1.c: Skip for nvptx-*-* * gcc.dg/special/weak-2.c: Likewise. * gcc.dg/weak/weak-12.c: Likewise. * gcc.dg/weak/weak-15.c: Likewise. * gcc.dg/weak/weak-16.c: Likewise. * gcc.dg/weak/weak-1.c: Likewise. * gcc.dg/weak/weak-2.c: Likewise. * gcc.dg/weak/weak-4.c: Likewise. * gcc.dg/torture/pr53922.c: Likewise. * gcc.dg/torture/pr60092.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230628 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c/68412mpolacek2015-11-195-1/+90
| | | | | | | | | | | * c-typeck.c (parser_build_binary_op): Properly handle C_MAYBE_CONST_EXPR before calling warn_tautological_cmp. * gcc.dg/pr68412-2.c: New test. * gcc.dg/pr68412.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230627 138bc75d-0d04-0410-961f-82ee72b054a4
* fix bootstrap without ISL on old linkersspop2015-11-194-33/+40
| | | | | | | With and without this patch passes bootstrap on x86_64-linux with and without ISL. The problem occurs on systems with older linkers that do not remove dead symbols. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230625 138bc75d-0d04-0410-961f-82ee72b054a4
* * libgomp.oacc-c-c++-common/reduction-dbl.c: New.nathan2015-11-198-163/+295
| | | | | | | | | | | | | * libgomp.oacc-c-c++-common/reduction-flt.c: New. * libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Use typedef. * libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Use typedef. * libgomp.oacc-c-c++-common/reduction-2.c: Uncomment broken tests and fix. * libgomp.oacc-c-c++-common/reduction-3.c: Likewise. * libgomp.oacc-c-c++-common/reduction-4.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230621 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c++/68396jason2015-11-193-0/+35
| | | | | | | | | 2015-11-19 Ryan Burn <contact@rnburn.com> * pt.c (find_parameter_packs_r) [DECLTYPE_TYPE]: When traversing the DECLTYPE_TYPE_EXPR, set type_pack_expansion_p to false. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230620 138bc75d-0d04-0410-961f-82ee72b054a4
* 2015-11-19 David Edelsohn <dje.gcc@gmail.com>dje2015-11-192-5/+9
| | | | | | | | | | | Revert 2015-11-18 Alan Modra <amodra@gmail.com> * config/rs6000/rs6000.c (use_toc_relative_ref): Ignore type-limits warning. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230619 138bc75d-0d04-0410-961f-82ee72b054a4
* [Patch, vrp] Allow VRP type conversion folding only for widenings upto word modelaw2015-11-196-1/+91
| | | | | | | | | | * tree.h (desired_pro_or_demotion_p): New function. * tree-vrp.c (simplify_cond_using_ranges): Call it. * gcc.dg/tree-ssa/vrp98.c: New testcase. * gcc.target/avr/uint8-single-reg.c: New testcase. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230618 138bc75d-0d04-0410-961f-82ee72b054a4
* 2015-11-19 Bob Duff <duff@adacore.com>charlet2015-11-192-1/+7
| | | | | | | | | | * sem_elab.adb (Check_Internal_Call_Continue): Correction to previous change: correctly handle generic formals/actuals that look like renamings. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230617 138bc75d-0d04-0410-961f-82ee72b054a4
* liboffloadmic/iverbin2015-11-193-138/+183
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * plugin/libgomp-plugin-intelmic.cpp (struct TargetImageDesc): New. (ImgDescMap): New typedef. (image_descriptors): New static var. (init): Allocate image_descriptors. (offload): Remove vars2 argument. Pass NULL to __offload_offload1 instead of vars2. (unregister_main_image): New static function. (register_main_image): Call unregister_main_image at exit. (GOMP_OFFLOAD_init_device): Print device number, fix offload args. (GOMP_OFFLOAD_fini_device): Likewise. (get_target_table): Remove vd1g and vd2g, don't pass them to offload. (offload_image): Remove declaration of the struct TargetImage. Free table. Insert new descriptor into image_descriptors. (GOMP_OFFLOAD_unload_image): Call __offload_unregister_image, free the corresponding descriptor, and remove it from address_table and image_descriptors. (GOMP_OFFLOAD_alloc): Print device number, remove vd1g. (GOMP_OFFLOAD_free): Likewise. (GOMP_OFFLOAD_host2dev): Print device number, remove vd1g and vd2g. (GOMP_OFFLOAD_dev2host): Likewise. (GOMP_OFFLOAD_run): Print device number, remove vd1g. * plugin/offload_target_main.cpp (__offload_target_table_p1): Remove vd2, don't pass it to __offload_target_enter. (__offload_target_table_p2): Likewise. (__offload_target_alloc): Likewise. (__offload_target_free): Likewise. (__offload_target_host2tgt_p1): Likewise. (__offload_target_host2tgt_p2): Likewise. (__offload_target_tgt2host_p1): Likewise. (__offload_target_tgt2host_p2): Likewise. (__offload_target_run): Likewise. (__offload_target_tgt2tgt): Remove vd1g, don't pass it to __offload_target_enter. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230614 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c++/67409jakub2015-11-194-31/+79
| | | | | | | | | | | | | | | | * decl.c (identify_goto): Add LOC and DIAG_KIND arguments, call emit_diagnostic instead of permerror. (check_previous_goto_1): Adjust identify_goto callers, treat all cases but crossing initialization and entering scope of decl with non-trivial dtor as unconditional hard errors. (check_goto): Use identify_goto. Treat all cases but crossing initialization and entering scope of decl with non-trivial dtor as unconditional hard errors. * g++.dg/eh/goto3.C: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230613 138bc75d-0d04-0410-961f-82ee72b054a4
* * fwprop.c (update_uses): Use flag_checking instead ofmatz2015-11-192-1/+7
| | | | | | | gcc_checking_assert. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230612 138bc75d-0d04-0410-961f-82ee72b054a4
* Fix typo in doc/gty.texidmalcolm2015-11-192-2/+7
| | | | | | | | | gcc/ChangeLog: * doc/gty.texi (Support for inheritance): Fix missing parentheses in example. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230609 138bc75d-0d04-0410-961f-82ee72b054a4
* PR tree-optimization/68431mpolacek2015-11-194-1/+27
| | | | | | | | | * tree-vrp.c (extract_range_from_binary_expr_1): Fix condition. * gcc.dg/tree-ssa/pr68431.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230608 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/cp/cesar2015-11-193-113/+277
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * parser.h (struct cp_omp_declare_simd_data): Add clauses member. (struct cp_parser): Change type the of oacc_routine to cp_omp_declare_simd_data. * parser.c (cp_ensure_no_oacc_routine): Rework to use cp_omp_declare_simd_data. (cp_parser_simple_declaration): Remove boolean first. Update call to cp_parser_init_declarator. Don't NULL out oacc_routine. (cp_parser_init_declarator): Remove boolean first parameter. Update calls to cp_finalize_oacc_routine. (cp_parser_late_return_type_opt): Handle acc routines. (cp_parser_member_declaration): Remove first variable. Handle acc routines like omp declare simd. (cp_parser_function_definition_from_specifiers_and_declarator): Update call to cp_finalize_oacc_routine. (cp_parser_single_declaration): Update call to cp_parser_init_declarator. (cp_parser_save_member_function_body): Remove first_decl parameter. Update call to cp_finalize_oacc_routine. (cp_parser_finish_oacc_routine): Delete. (cp_parser_oacc_routine): Rework to use cp_omp_declare_simd_data. (cp_parser_late_parsing_oacc_routine): New function. (cp_finalize_oacc_routine): Remove first argument. Add more error handling and set the acc routine and 'omp declare target' attributes. (cp_parser_pragma): Remove unnecessary call to cp_ensure_no_oacc_routine. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230607 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/nvptx/nvptx.md (atomic_compare_and_swap<mode>_1,nathan2015-11-192-3/+8
| | | | | | | atomic_exchange<mode>): Input values can be immediates. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230606 138bc75d-0d04-0410-961f-82ee72b054a4
* PR lto/61313ebotcazou2015-11-193-2/+9
| | | | | | | | | * configure.ac (PLUGIN_LD_SUFFIX): Do not touch the value specified by the user. * configure: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230603 138bc75d-0d04-0410-961f-82ee72b054a4
* clang-format: Enhance list of FOR_EACH macrosmarxin2015-11-192-1/+5
| | | | | | | * clang-format: Enhance list of FOR_EACH macros. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230602 138bc75d-0d04-0410-961f-82ee72b054a4
* Add clang-format config to contrib foldermarxin2015-11-196-0/+85
| | | | | | | | | | * .gitignore: Add .clang-format to ignored files. * Makefile.in: Add clang-format. * Makefile.tpl: Likewise. * clang-format: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230601 138bc75d-0d04-0410-961f-82ee72b054a4
* PR target/68408ebotcazou2015-11-192-0/+10
| | | | | | | | * config/sparc/sp-elf.h (CTORS_SECTION_ASM_OP): Undefine. (DTORS_SECTION_ASM_OP): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230598 138bc75d-0d04-0410-961f-82ee72b054a4
* PR rtl-optimization/68376jakub2015-11-195-4/+116
| | | | | | | | | | | * ifcvt.c (noce_try_abs): Disable one_cmpl optimization if encountering x <= 0 ? ~x : x or x > 0 ? ~x : x. * gcc.c-torture/execute/pr68376-1.c: New test. * gcc.c-torture/execute/pr68376-2.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230596 138bc75d-0d04-0410-961f-82ee72b054a4
* 2015-11-19 Richard Biener <rguenther@suse.de>rguenth2015-11-192-0/+9
| | | | | | | | | PR middle-end/68117 * tree-ssa.c (delete_tree_ssa): Revert removal of call to redirect_edge_var_map_destroy. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230594 138bc75d-0d04-0410-961f-82ee72b054a4
* PR target/67770jakub2015-11-194-1/+56
| | | | | | | | | | * config/i386/i386.md (simple_return): Disable if ix86_static_chain_on_stack is true. * gcc.target/i386/pr67770.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230593 138bc75d-0d04-0410-961f-82ee72b054a4
* PR preprocessor/60736jakub2015-11-194-7/+35
| | | | | | | | | | | | | | * include/cpplib.h (cpp_errno_filename): New prototype. * errors.c (cpp_errno): Don't handle msgid "" specially, use _(msgid) instead of msgid as argument to cpp_error. (cpp_errno_filename): New function. * files.c (read_file_guts): Use cpp_errno_filename instead of cpp_errno. (open_file_failed): Likewise. Use file->name if file->path is NULL in diagnostics. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230591 138bc75d-0d04-0410-961f-82ee72b054a4
* PR 68393: Handle SUBREG_PROMOTED_VAR_P in expand_direct_optab_fnrsandifo2015-11-192-7/+29
| | | | | | | | | | | | | | | | Do the usual dance when assigning to SUBREG_PROMOTED_VAR_P destinations: first convert to the outer mode, then extend to the inner mode. Tested that it fixes the powerpc64le-linux-gnu breakage. Also tested on x86_64-linux-gnu and powerpc64-linux-gnu. gcc/ PR bootstrap/68393 * internal-fn.c (expand_direct_optab_fn): Handle SUBREG_PROMOTED_VAR_P destinations. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230590 138bc75d-0d04-0410-961f-82ee72b054a4
* * c-common.c (shorten_compare): Don't -Wtype-limits if thejason2015-11-193-1/+19
| | | | | | non-constant operand comes from a macro. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230589 138bc75d-0d04-0410-961f-82ee72b054a4
* [PATCH][PR tree-optimization/68198] Avoid CFG explosion due to threadinglaw2015-11-195-12/+101
| | | | | | | | | | | | | | | PR tree-optimization/68198 * tree-ssa-threadupdate.c (valid_jump_thread_path): Distinguish between threading a multi-way branch and a thread path that contains a multi-way branch. Disallow the case where a path contains a multi-way branch and does not thread a multi-way branch. (thread_through_all_blocks): Update comment. PR tree-optimization/68198 * gcc.dg/tree-ssa/pr66752-3.c: Update expected output for VRP1. * gcc.dg/tree-ssa/pr68198.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230586 138bc75d-0d04-0410-961f-82ee72b054a4
* Daily bump.gccadmin2015-11-191-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230585 138bc75d-0d04-0410-961f-82ee72b054a4
* 2015-11-18 Steven G. Kargl <kargl@gcc.gnu.org>kargl2015-11-184-0/+28
| | | | | | | | | | | | | | PR fortran/59910 * primary.c (gfc_match_structure_constructor): Reduce a structure constructor in a DATA statement. 2015-11-18 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/59910 * gfortran.dg/pr59910.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230580 138bc75d-0d04-0410-961f-82ee72b054a4
* 2015-11-18 Steven G. Kargl <kargl@gcc.gnu.org>kargl2015-11-184-4/+34
| | | | | | | | | | | | | | | PR fortran/43996 * simplify.c (gfc_simplify_spread): Issue error for too large array constructor in a PARAMETER statement. 2015-11-18 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/43996 * gfortran.dg/pr43996.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230579 138bc75d-0d04-0410-961f-82ee72b054a4
* Add out-of-line versions of some <stdatomic.h> functions (PR c/65083).jsm282015-11-1813-6/+223
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR c/65083 notes that some functions in <stdatomic.h> are normal functions, not generic functions, and so need to have out-of-line copies that can be called when macro expansion is suppressed (unlike the generic functions where DR#419 makes it undefined if you suppress a macro expansion). This patch adds such out-of-line definitions in libatomic for those six functions, at a new LIBATOMIC_1.2 symbol version, as trivial wrappers to the <stdatomic.h> macros, along with declarations of those functions in <stdatomic.h>. Tests are added that are based on the corresponding tests for the macros, but with parentheses around the function names to force the out-of-line functions to be used. Bootstrapped with no regressions on x86_64-pc-linux-gnu. gcc: * ginclude/stdatomic.h (atomic_thread_fence, atomic_signal_fence) (atomic_flag_test_and_set, atomic_flag_test_and_set_explicit) (atomic_flag_clear, atomic_flag_clear_explicit): Declare as functions before defining as macros. gcc/testsuite: * gcc.dg/atomic/stdatomic-fence-2.c, gcc.dg/atomic/stdatomic-flag-2.c: New tests. libatomic: * fence.c, flag.c: New files. * Makefile.am (libatomic_la_SOURCES): Add fence.c and flag.c. * Makefile.in: Regenerate. * configure.ac (libtool_VERSION): Change to 3:0:2. * configure: Regenerate. * libatomic.map (LIBATOMIC_1.2): New symbol version. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230578 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/trans.c (elaborate_all_entities_for_package): Newebotcazou2015-11-182-29/+79
| | | | | | | | function extracted from... Recurse on packages. (elaborate_all_entities): ...here. Call it on packages. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230576 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/ada-tree.h (DECL_INVARIANT_P): New macro.ebotcazou2015-11-1812-316/+519
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gcc-interface/gigi.h (enum standard_datatypes): Remove ADT_longjmp_decl and add ADT_not_handled_by_others_decl. (longjmp_decl): Delete. (not_handled_by_others_decl): New macro. (build_simple_component_ref): Delete. (build_component_ref): Adjust prototype. * gcc-interface/decl.c (gnat_to_gnu_entity): Adjust calls to build_component_ref. (gnat_to_gnu_field): Set DECL_INVARIANT_P on discriminants without default value. * gcc-interface/trans.c (gigi): Reorder initialization sequence and add not_handled_by_others_decl. (Attribute_to_gnu): Adjust calls to build_component_ref. (Subprogram_Body_to_gnu): Likewise. (Call_to_gnu): Likewise. (Exception_Handler_to_gnu_sjlj): Likewise. (gnat_to_gnu): Likewise. (range_check_info_d): Add inserted_cond field. (Loop_Statement_to_gnu): Make two passes on the recorded range checks. (build_noreturn_cond): New static function. (Raise_Error_to_gnu): Record range checks in loops at -O1 and above. (make_invariant): New static function. (Loop_Statement_to_gnu): Use it to compute invariant expressions for the loop bounds if possible, but do not require it if loop unswitching is enabled. * gcc-interface/utils.c (convert_to_fat_pointer): Likewise. (convert): Likewise. (maybe_unconstrained_array): Likewise. Call it instead of build_simple_component_ref and add guard for CONSTRUCTORs. (unchecked_convert): Likewise. * gcc-interface/utils2.c (compare_fat_pointers): Likewise. (build_simple_component_ref): Remove COMPONENT parameter, unify code dealing with VIEW_CONVERT_EXPR and make it more general, remove special treatment for CONSTRUCTORs of template types. (build_component_ref): Remove COMPONENT parameter and adjust call to build_simple_component_ref. (maybe_wrap_malloc): Likewise. (build_allocator): Likewise. (gnat_invariant_expr): Look through overflow checks, deal with addition and subtraction of constants and take into account DECL_INVARIANT_P for the COMPONENT_REF case. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230575 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/nvptx/nvptx.c (nvptx_process_pars): Fix whitespace.nathan2015-11-182-22/+14
| | | | | | | | | (nvptx_record_offload_symbol): Remove code compensating for lack of default dimension handling. (nvptx_goacc_validate_dims): Remove incorrect ARG_UNUSED markers. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230571 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/misc.c: Move global variables to the top of the file.ebotcazou2015-11-184-30/+58
| | | | | | | | | | (gnat_handle_option): Remove obsolete ATTRIBUTE_UNUSED markers. (gnat_init_options): Minor tweak. (gnat_post_options): Set -fstrict-overflow if not done by the user. (internal_error_function): Minor reformatting. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230569 138bc75d-0d04-0410-961f-82ee72b054a4
* Enable condegen in case of cond phis.spop2015-11-182-62/+122
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The codegen of conditional PHIs inside the scop where one predecessor dominates the other was difficult so it wasn't enabled in the previous patch. After a couple of bug-fixes this has been enabled in this patch. Not all the cases could be handled in this case because it becomes difficult to map the basic block back to original code in some cases. Bug-fixes: 1. The vec_find returns -1 when no element was found. This wasn't checked. 2. When the arguments to pending phis could not be resolved in the second pass, the codegen would fail so the new code should be cleaned up. This patch passes regtest and bootstrap on linux-x86-64 with BOOT_CFLAGS='-O2 -fgraphite-identity -floop-nest-optimize' 2015-11-14 hiraditya <hiraditya@msn.com> * graphite-isl-ast-to-gimple.c (copy_loop_phi_args): Change the return type to bool for early exit. (translate_isl_ast_to_gimple::copy_loop_phi_nodes): Early return in case of error. (translate_isl_ast_to_gimple::copy_loop_close_phi_args): Same. (add_phi_arg_for_new_expr): Enable codegen for if-block where one predecessor dominates the other. (translate_isl_ast_to_gimple::copy_cond_phi_args): Fix. When the element is not found it returns -1. (translate_isl_ast_to_gimple::translate_pending_phi_nodes): Bail out early when codegen fails. (graphite_regenerate_ast_isl): Remove codegen region when pending phis could not be generated. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230567 138bc75d-0d04-0410-961f-82ee72b054a4
* Move codegen related functions to graphite-isl-ast-to-gimple.cspop2015-11-185-1661/+1956
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | No functional changes intended. This patch passes regtest and bootstrap on linux-x86-64 with BOOT_CFLAGS='-O2 -fgraphite-identity -floop-nest-optimize' gcc/ChangeLog: 2015-11-14 hiraditya <hiraditya@msn.com> * graphite-isl-ast-to-gimple.c (struct ast_build_info): Remove semicolon. (class translate_isl_ast_to_gimple): Indentation. (translate_pending_phi_nodes): Comment. (add_parameters_to_ivs_params): Moved from sese.c inside class translate_isl_ast_to_gimple. (get_max_schedule_dimensions): Same. (generate_isl_context): Same. (extend_schedule): Same. (generate_isl_schedule): Same. (set_options): Same. (scop_to_isl_ast): Same. (is_valid_rename): Same. (get_rename): Same. (get_rename_from_scev): Same. (get_def_bb_for_const): Same. (get_new_name): Same. (collect_all_ssa_names): Same. (copy_loop_phi_args): Same. (copy_loop_phi_nodes): Same. (copy_loop_close_phi_args): Same. (copy_loop_close_phi_nodes): Same. (copy_cond_phi_args): Same. (copy_cond_phi_nodes): Same. (graphite_copy_stmts_from_block): Same. (copy_bb_and_scalar_dependences): Same. (add_phi_arg_for_new_expr): Same. (rename_uses): Same. (set_rename): Same. (set_rename_for_each_def): Same. (gsi_insert_earliest): Same. (rename_all_uses): Same. (codegen_error_p): Same. (print_isl_ast_node): Same. (translate_isl_ast_for_loop): Call function codegen_error_p. (translate_isl_ast_to_gimple::translate_isl_ast): Same. (translate_isl_ast_node_user): Make nb_loops const and release iv_map before exit. (get_true_edge_from_guard_bb): Move all free-functions early. (get_false_edge_from_guard_bb): Same. (bb_contains_loop_close_phi_nodes): Same. (bb_contains_loop_phi_nodes): Same. (is_loop_closed_ssa_use): Same. (number_of_phi_nodes): Same. (phi_uses_name): Same. (later_of_the_two): Same. (substitute_ssa_name): (get_edges): Same. (get_loc): Same. (get_loop_init_value): Same. (find_init_value): Same. (find_init_value_close_phi): Same. (ast_build_before_for): Same. (graphite_regenerate_ast_isl): Formatting changes. * graphite-scop-detection.c (build_cross_bb_scalars_use): Same. * sese.c (get_rename): Move to graphite-isl-ast-to-gimple.c (set_rename): Same. (gsi_insert_earliest): Same. (collect_all_ssa_names): Same. (rename_all_uses): Same. (rename_uses): Same. (get_def_bb_for_const): Same. (copy_loop_phi_nodes): Same. (copy_loop_close_phi_args): Same. (copy_loop_close_phi_nodes): Same. (copy_cond_phi_args): Same. (copy_cond_phi_nodes): Same. (set_rename_for_each_def): Same. (graphite_copy_stmts_from_block): Same. (copy_bb_and_scalar_dependences): Same. (if_region_set_false_region): Same. (scev_analyzable_p): Same. * sese.h: Delete extern functions moved to graphite-isl-ast-to-gimple.c git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230566 138bc75d-0d04-0410-961f-82ee72b054a4
* 2015-11-18 Andreas Tobler <andreast@gcc.gnu.org>andreast2015-11-182-5/+20
| | | | | | | | * config/i386/freebsd.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Bring in the commit from r125920 for FreeBSD. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230565 138bc75d-0d04-0410-961f-82ee72b054a4
* Support GGC finalizers with PCH.jason2015-11-182-31/+70
| | | | | | | | | | * ggc-page.c (ggc_globals): Change finalizers and vec_finalizers to be vecs of vecs. (add_finalizer): Split out from ggc_internal_alloc. (ggc_handle_finalizers): Run finalizers for the current depth. (init_ggc, ggc_pch_read): Reserve space for finalizers. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230564 138bc75d-0d04-0410-961f-82ee72b054a4
* 2015-11-18 Sandra Loosemore <sandra@codesourcery.com>sandra2015-11-182-2/+8
| | | | | | | | | PR target/68410 * config/nios2/nios2.c (cdx_and_immed): Remove duplicate tests from || expression. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230563 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/avr/avr-mcus.def: Add new avr4 devices atmega48pb anddenisc2015-11-183-2/+16
| | | | | | | | | atmega88pb. Add new avr5 devices ata5791, ata8210, ata8510, atmega168pb and atmega328pb. * doc/avr-mmcu.texi: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230562 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/nathan2015-11-184-5/+702
| | | | | | | | | | | | | | | | | * config/nvptx/nvptx.c (bb_pair_t, bb_pair_vec_t): New types. (pseudo_node_t, struct bracket, bracket_vec_t): New types. (struct bb_sese): New struct. (bb_sese::~bb_sese, bb_sese::append, bb_sese::remove): New. (BB_GET_SESE, BB_SET_SESE): Define. (nvptx_sese_number, nvptx_sese_pseudo, nvptx_sese_color): New. (nvptx_find_sese): New. (nvptx_neuter_pars): Find SESE regions when optimizing. gcc/testsuite/ * gcc.dg/goacc/nvptx-sese-1.c: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230561 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Variable>: Use case #1ebotcazou2015-11-185-2/+30
| | | | | | | for the renaming of an address. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230560 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/trans.c (fold_constant_decl_in_expr) <ARRAY_REF>: Ifebotcazou2015-11-182-0/+8
| | | | | | | the index is not itself constant then bail out. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230558 138bc75d-0d04-0410-961f-82ee72b054a4
* Add PR marker to last changelaw2015-11-181-0/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230556 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc.dg/tree-ssa/split-path-1.c: Fix the testcaselaw2015-11-182-7/+14
| | | | | | to avoid undefined behaviour. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230555 138bc75d-0d04-0410-961f-82ee72b054a4