aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2013-10-02tree-loop-distribution.c: Include tree-vectorizer.h for find_loop_location.Richard Biener8-93/+102
2013-10-02 Richard Biener <rguenther@suse.de> * tree-loop-distribution.c: Include tree-vectorizer.h for find_loop_location. (enum partition_kind): Remove PKIND_REDUCTION. (struct partition_s): Remove has_writes member, add reduction_p member. (partition_alloc): Adjust. (partition_builtin_p): Likewise. (partition_has_writes): Remove. (partition_reduction_p): New function. (partition_merge_into): Likewise. (generate_code_for_partition): Commonize builtin partition handling tail. (rdg_cannot_recompute_vertex_p): Remove. (already_processed_vertex_p): Likewise. (rdg_flag_vertex): Do not set has_writes. (classify_partition): Adjust. (rdg_build_partitions): Do not set has_writes, treat all partitions as useful. (distribute_loop): Record number of library calls generated. Adjust. (tree_loop_distribution): Report number of loops and library calls generated as opt-info. * gcc.dg/tree-ssa/ldist-11.c: Adjust. * gcc.dg/tree-ssa/ldist-17.c: Likewise. * gcc.dg/tree-ssa/ldist-23.c: Likewise. * gcc.dg/tree-ssa/ldist-pr45948.c: Likewise. * gfortran.dg/ldist-pr45199.f: Likewise. From-SVN: r203115
2013-10-02tree-flow.h: Include new .h files.Andrew Macleod1-0/+23
* tree-flow.h: Include new .h files. Move prototypes. * tree-cfgcleanup.h: New file. Add prototypes from tree-flow.h. * tree-dfa.h: New File. Add prototypes from tree-flow.h. (get_addr_base_and_unit_offset_1) Move from tree-flow-inline.h. * tree-pretty-print.h: Add prototypes from tree-flow.h. * tree-into-ssa.h: New File. Add prototypes from tree-flow.h. ({debug|dump}*): Move debugging prototypes out of tree-into-ssa.c. * tree-into-ssa.c ({debug|dump}*): Move prototypes to header file. * tree.h (get_ref_base_and_extent): Move prototype out. * tree-flow-inline.h (get_addr_base_and_unit_offset_1): Move to tree-dfa.h. * gimple-low.h: New File. Add prototypes from tree-flow.h. * gimple-low.c (try_catch_may_fallthru, block_may_fallthru): Move to... * tree.c (try_catch_may_fallthru, block_may_fallthru): Here. * tree-scalar-evolution.c: Include tree.h. * sese.c: Include tree.h. * dumpfile.c: Move gimple-pretty-print.h include after tree.h. * dwarf2out.c: Include tree-dfa.h. * tree-chrec.c: Include tree.h. * tree-data-ref.c: Include tree.h. From-SVN: r203114
2013-10-02tree-flow.h: Include new .h files.Andrew Macleod17-411/+438
* tree-flow.h: Include new .h files. Move prototypes. * tree-cfgcleanup.h: New file. Add prototypes from tree-flow.h. * tree-dfa.h: New File. Add prototypes from tree-flow.h. (get_addr_base_and_unit_offset_1) Move from tree-flow-inline.h. * tree-pretty-print.h: Add prototypes from tree-flow.h. * tree-into-ssa.h: New File. Add prototypes from tree-flow.h. ({debug|dump}*): Move debugging prototypes out of tree-into-ssa.c. * tree-into-ssa.c ({debug|dump}*): Move prototypes to header file. * tree.h (get_ref_base_and_extent): Move prototype out. * tree-flow-inline.h (get_addr_base_and_unit_offset_1): Move to tree-dfa.h. * gimple-low.h: New File. Add prototypes from tree-flow.h. * gimple-low.c (try_catch_may_fallthru, block_may_fallthru): Move to... * tree.c (try_catch_may_fallthru, block_may_fallthru): Here. * tree-scalar-evolution.c: Include tree.h. * sese.c: Include tree.h. * dumpfile.c: Move gimple-pretty-print.h include after tree.h. * dwarf2out.c: Include tree-dfa.h. * tree-chrec.c: Include tree.h. * tree-data-ref.c: Include tree.h. From-SVN: r203113
2013-10-02gimple-ssa-strength-reduction.c (backtrace_base_for_ref): Fix whitespace.Yufeng Zhang2-1/+6
gcc/ * gimple-ssa-strength-reduction.c (backtrace_base_for_ref): Fix whitespace. From-SVN: r203112
2013-10-02Update t-sparc, t-sol2 etc. for automatic dependenciesRainer Orth5-36/+36
* config/t-sol2 (sol2-c.o): Remove header dependencies. Use $(COMPILE) and $(POSTCOMPILE). (sol2-cxx.o): Likewise. (sol2-stubs.o): Likewise. (sol2.o): Likewise. * config/x-solaris (host-solaris.o): Likewise. * config/sparc/t-sparc (sparc.o): Remove. (sparc-c.o): Remove header dependencies. Use $(COMPILE) and $(POSTCOMPILE). * config/sparc/x-sparc: Likewise. From-SVN: r203111
2013-10-02In accordance with http://gcc.gnu.org/ml/gcc-patches/2013-10/msg00131.html :Joern Rennecke7-6/+15
gcc: * config/arc/arc-opts.h: Add 2013 to Copyright years. * config/arc/arc700.md: Likewise. * config/arc/arc-modes.def: Likewise. * config/arc/arc-simd.h: Likewise. * config/arc/t-arc-uClibc: Likewise. * config/arc/t-arc-newlib: Likewise. libgcc: * config/arc/crtgend.S: Add 2013 to Copyright years. * config/arc/gmon/atomic.h: Likewise. * config/arc/gmon/auxreg.h: Likewise. * config/arc/gmon/sys/gmon_out.h: Likewise. * config/arc/gmon/sys/gmon.h: Likewise. * config/arc/gmon/prof-freq.c: Likewise. * config/arc/gmon/mcount.c: Likewise. * config/arc/gmon/prof-freq-stub.S: Likewise. * config/arc/gmon/gmon.c: Likewise. * config/arc/gmon/machine-gmon.h: Likewise. * config/arc/gmon/profil.S: Likewise. * config/arc/gmon/dcache_linesz.S: Likewise. * config/arc/crtg.S: Likewise. * config/arc/ieee-754/arc600-mul64/divsf3.S: Likewise. * config/arc/ieee-754/arc600-mul64/divdf3.S: Likewise. * config/arc/ieee-754/adddf3.S: Likewise. * config/arc/ieee-754/truncdfsf2.S: Likewise. * config/arc/ieee-754/fixsfsi.S: Likewise. * config/arc/ieee-754/gtsf2.S: Likewise. * config/arc/ieee-754/floatsisf.S: Likewise. * config/arc/ieee-754/arc600-dsp/divsf3.S: Likewise. * config/arc/ieee-754/arc600-dsp/divdf3.S: Likewise. * config/arc/ieee-754/arc600-dsp/mulsf3.S: Likewise. * config/arc/ieee-754/fixdfsi.S: Likewise. * config/arc/ieee-754/addsf3.S: Likewise. * config/arc/ieee-754/gesf2.S: Likewise. * config/arc/ieee-754/floatsidf.S: Likewise. * config/arc/ieee-754/extendsfdf2.S: Likewise. * config/arc/ieee-754/divtab-arc-df.c: Likewise. * config/arc/ieee-754/gtdf2.S: Likewise. * config/arc/ieee-754/fixunsdfsi.S: Likewise. * config/arc/ieee-754/uneqdf2.S: Likewise. * config/arc/ieee-754/divsf3-stdmul.S: Likewise. * config/arc/ieee-754/uneqsf2.S: Likewise. * config/arc/ieee-754/arc-ieee-754.h: Likewise. * config/arc/ieee-754/divtab-arc-sf.c: Likewise. * config/arc/ieee-754/eqdf2.S: Likewise. * config/arc/ieee-754/ordsf2.S: Likewise. * config/arc/ieee-754/divsf3.S: Likewise. * config/arc/ieee-754/divdf3.S: Likewise. * config/arc/ieee-754/floatunsidf.S: Likewise. * config/arc/ieee-754/orddf2.S: Likewise. * config/arc/ieee-754/eqsf2.S: Likewise. * config/arc/ieee-754/gedf2.S: Likewise. * config/arc/crtn.S: Likewise. * config/arc/crti.S: Likewise. * config/arc/t-arc700-uClibc: Likewise. * config/arc/asm.h: Likewise. * config/arc/libgcc-excl.ver: Likewise. * config/arc/t-arc-newlib: Likewise. * config/arc/divtab-arc700.c: Likewise. * config/arc/initfini.c: Likewise. * config/arc/fp-hack.h: Likewise. From-SVN: r203110
2013-10-02re PR c++/58565 ([c++11] ICE with label in statement expression)Paolo Carlini4-0/+18
/cp 2013-10-02 Paolo Carlini <paolo.carlini@oracle.com> PR c++/58565 * semantics.c (potential_constant_expression_1): Handle LABEL_EXPR. /testsuite 2013-10-02 Paolo Carlini <paolo.carlini@oracle.com> PR c++/58565 * g++.dg/parse/crash64.C: New. From-SVN: r203109
2013-10-02aarch64.c (aarch64_expand_prologue): Use plus_constant.Renlin Li2-13/+18
2013-10-02 Renlin Li <renlin.li@arm.com> * config/aarch64/aarch64.c (aarch64_expand_prologue): Use plus_constant. (aarch64_expand_epilogue): Likewise. From-SVN: r203108
2013-10-02gimple-ssa-strength-reduction.c (legal_cast_p_1): Forward declaration.Yufeng Zhang4-0/+49
gcc/ * gimple-ssa-strength-reduction.c (legal_cast_p_1): Forward declaration. (backtrace_base_for_ref): Call get_unwidened with 'base_in' if 'base_in' represent a conversion and legal_cast_p_1 holds; set 'base_in' with the returned value from get_unwidened. gcc/testsuite/ * gcc.dg/tree-ssa/slsr-40.c: New test. From-SVN: r203107
2013-10-02arm.c (arm_legitimize_reload_address): Explain why plus_constant is not used.Kyrylo Tkachov2-1/+10
2013-10-02 Kyrylo Tkachov <kyrylo.tkachov@arm.com> * config/arm/arm.c (arm_legitimize_reload_address): Explain why plus_constant is not used. From-SVN: r203106
2013-10-02Daily bump.GCC Administrator1-1/+1
From-SVN: r203101
2013-10-01x86-tune.def (DEF_TUNE): Remove m_CORE_ALL.Wei Mi3-1/+63
2013-10-01 Wei Mi <wmi@google.com> * config/i386/x86-tune.def (DEF_TUNE): Remove m_CORE_ALL. * config/i386/i386.md: Add define_peephole2 to break partial reg stall for cvtss2sd/cvtsd2ss. From-SVN: r203095
2013-10-01simdext.md: Update copyright years.Joern Rennecke1-1/+1
gcc: * config/arc/simdext.md: Update copyright years. libgcc: * config/arc/ieee-754/arc600-dsp/muldf3.S: Update copyright years * config/arc/ieee-754/arc600-mul64/muldf3.S: Likewise. * config/arc/ieee-754/muldf3.S: Likewise. From-SVN: r203094
2013-10-01arc.c (pass_arc_ifcvt::clone): Update for ctxt_ ->m_ctxt change.Joern Rennecke2-1/+6
* config/arc/arc.c (pass_arc_ifcvt::clone): Update for ctxt_ ->m_ctxt change. From-SVN: r203093
2013-10-01* config/arc/arc.c (arc_frame_info): Restore GTY marker.Joern Rennecke2-2/+1
From-SVN: r203092
2013-10-01tree-ssa-threadupdate.c (struct redirection_data): Delete outgoing_edge and ↵Jeff Law2-23/+48
intermediate_edge fields. * tree-ssa-threadupdate.c (struct redirection_data): Delete outgoing_edge and intermediate_edge fields. Instead store the path. (redirection_data::hash): Hash on the last edge's destination index. (redirection_data::equal): Check the entire thread path. (lookup_redirectio_data): Corresponding changes. (create_edge_and_update_destination_phis): Likewise. (thread_single_edge): Likewise. From-SVN: r203091
2013-10-01* doc/extend.texi (long_call/medium_call/short_call): Amend typo fix.Joern Rennecke1-1/+1
From-SVN: r203090
2013-10-01arc.c (stdio.h): Don't include directly.Joern Rennecke2-139/+131
* config/arc/arc.c (stdio.h): Don't include directly. (arc_frame_info): Remove GTY marker. (arc_expand_epilogue): Remove [0]: Remove fp_restored_p. Remove if (1) condition. (arc_encode_section_info): Fix comment. Co-Authored-By: Diego Novillo <dnovillo@google.com> From-SVN: r203089
2013-10-01re PR fortran/58579 (Memory allocation fails when calling character-valued ↵Tobias Burnus2-5/+14
function) 2013-10-01 Tobias Burnus <burnus@net-b.de> PR fortran/58579 * trans-expr.c (gfc_conv_string_tmp): Correctly obtain the byte size of a single character. From-SVN: r203088
2013-10-01arc.md: Expand adc_0 comment stating the intended purpose and why it isn't ↵Joern Rennecke2-9/+10
ready. * config/arc/arc.md: Expand adc_0 comment stating the intended purpose and why it isn't ready. Replace commented out call_value_via_label_mixed with a plain comment about bl_s. Co-Authored-By: Diego Novillo <dnovillo@google.com> From-SVN: r203085
2013-10-01extend.texi (long_call/medium_call/short_call): Typo fix.Joern Rennecke2-2/+6
* doc/extend.texi (long_call/medium_call/short_call): Typo fix. (__builtin_arc_aligned): Likewise. Co-Authored-By: Diego Novillo <dnovillo@google.com> From-SVN: r203080
2013-10-01re PR c++/58563 ([c++11] ICE calling invalid destructor)Paolo Carlini4-1/+21
/cp 2013-10-01 Paolo Carlini <paolo.carlini@oracle.com> PR c++/58563 * parser.c (cp_parser_lookup_name): Check make_typename_type return value for error_mark_node. /testsuite 2013-10-01 Paolo Carlini <paolo.carlini@oracle.com> PR c++/58563 * g++.dg/cpp0x/pr58563.C: New. From-SVN: r203079
2013-10-01simdext.md (UNSPEC_ARC_SIMD_VLD32WH): Delete.Joern Rennecke2-21/+7
* config/arc/simdext.md (UNSPEC_ARC_SIMD_VLD32WH): Delete. (UNSPEC_ARC_SIMD_VLD32WL): Likewise. (vld32wh_insn, vld32wl_insn): Delete commented-out old versions of these patterns. From-SVN: r203078
2013-10-01arc.c (arc_conditional_register_usage): Use ARC_FIRST_SIMD_VR_REG / ↵Joern Rennecke2-1/+10
ARC_LAST_SIMD_VR_REG. * config/arc/arc.c (arc_conditional_register_usage): Use ARC_FIRST_SIMD_VR_REG / ARC_LAST_SIMD_VR_REG. Also set reg_alloc_order for DMA config regs. From-SVN: r203075
2013-10-01install.texi (--with-cpu): Mention ARC.Joern Rennecke5-9/+1072
2013-10-01 Joern Rennecke <joern.rennecke@embecosm.com> Jeremy Bennett <jeremy.bennett@embecosm.com> * doc/install.texi (--with-cpu): Mention ARC. (arc-*-elf32): New paragraph. (arc-linux-uclibc): Likewise. * doc/md.texi (Machine Constraints): Add ARC part. * doc/invoke.texi: (menu): Add ARC Options. (Machine Dependent Options) <ARC Options>: Add synopsis. (node ARC Options): Add. * doc/extend.texi (long_call / short_call attribute): Add ARC. (ARC Built-in Functions): New section defining generic ARC built-in functions. (ARC SIMD Built-in Functions): New section defining SIMD specific built-in functions. (Declaring Attributes of Functions): Extended description of short_call and long_call attributes for ARC and added index entries. Co-Authored-By: Jeremy Bennett <jeremy.bennett@embecosm.com> From-SVN: r203074
2013-10-01arc, arc: New directories.Saurabh Verma18-0/+20445
2013-10-01 Saurabh Verma <saurabh.verma@codito.com> Ramana Radhakrishnan <ramana.radhakrishnan@codito.com> Joern Rennecke <joern.rennecke@embecosm.com> Muhammad Khurram Riaz <khurram.riaz@arc.com> Brendan Kehoe <brendan@zen.org> Michael Eager <eager@eagercon.com> Simon Cook <simon.cook@embecosm.com> Jeremy Bennett <jeremy.bennett@embecosm.com> * config/arc, common/config/arc: New directories. Co-Authored-By: Brendan Kehoe <brendan@zen.org> Co-Authored-By: Jeremy Bennett <jeremy.bennett@embecosm.com> Co-Authored-By: Joern Rennecke <joern.rennecke@embecosm.com> Co-Authored-By: Michael Eager <eager@eagercon.com> Co-Authored-By: Muhammad Khurram Riaz <khurram.riaz@arc.com> Co-Authored-By: Ramana Radhakrishnan <ramana.radhakrishnan@codito.com> Co-Authored-By: Simon Cook <simon.cook@embecosm.com> From-SVN: r203072
2013-10-01Configuration bits for ARC port:Joern Rennecke2-1/+69
toplevel: 2013-02-25 Simon Cook <simon.cook@embecosm.com> Changes to build configuration to allow big endian ARC ELF toolchain * configure.ac: Also add target-libgloss to noconfigdirs for arceb-*-*. * configure: Regenerate. gcc: 2013-04-03 Joern Rennecke <joern.rennecke@embecosm.com> Brendan Kehoe <brendan@zen.org> Simon Cook <simon.cook@embecosm.com> * config.gcc (arc*-*-elf*, arc*-*-linux-uclibc*): New configurations. libstdc++-v3: 2012-08-16 Joern Rennecke <joern.rennecke@embecosm.com> * acinclude.m4 (GLIBCXX_ENABLE_SJLJ_EXCEPTIONS): Also check for _Unwind_SjLj_Register when deciding if to set enable_sjlj_exceptions. * configure: Regenerate. contrib: 2013-09-05 Joern Rennecke <joern.rennecke@embecosm.com> * config-list.mk: Add arc configurations. From-SVN: r203070
2013-10-01tree-ssa-live.h (coalesce_ssa_name): Move Prototype to...Andrew MacLeod6-44/+74
* tree-ssa-live.h (coalesce_ssa_name): Move Prototype to... * tree-ssa-coalesce.h: New. Move prototype to here. * tree-outof-ssa.h: Include tree-ssa-coalesce.h. * tree-ssa-coalesce.c: Include tree-outof-ssa.h. (gimple_can_coalesce_p): Move to... * gimple.c (gimple_can_coalesce_p): Here. From-SVN: r203069
2013-10-01tree-into-ssa.c (enum need_phi_state): Relocate from tree-flow.h.Andrew MacLeod16-1321/+1476
* tree-into-ssa.c (enum need_phi_state): Relocate from tree-flow.h. (dump_decl_set): Move to gimple.c. * gimple.h: Don't include tree-ssa-operands.h. (dump_decl_set): Add prototype. (gimple_vuse_op, gimple_vdef_op, update_stmt, update_stmt_if_modified): Move to gimple-ssa.h. (phi_ssa_name_p, phi_nodes, phi_nodes_ptr, gimple_phi_arg_def, gimple_phi_arg_def_ptr, gimple_phi_arg_edge, gimple_phi_arg_location, gimple_phi_arg_location_from_edge, gimple_phi_arg_set_location, gimple_phi_arg_has_location): Relocate from tree-flow-inline.h * gimple.c (walk_stmt_load_store_ops): Use gimple_phi_arg_def rather than PHI_ARG_DEF. (dump_decl_set): Relocate here. * gimple-ssa.h: New file. (gimple_vuse_op, gimple_vdef_op, update_stmt, update_stmt_if_modified): Relocate from gimple.h. * tree-cfg.c (has_zero_uses_1, single_imm_use_1): Move to... * tree-ssa-operands.c (swap_ssa_operands): Rename from swap_tree_operands and remove non-ssa path. (has_zero_uses_1, single_imm_use_1): Relocate from tree-cfg.c. * tree-ssa-reassoc.c (linearize_expr_tree, repropagate_negates): Use swap_ssa_operands. * tree-vect-loop.c (destroy_loop_vec_info, vect_is_slp_reduction, vect_is_simple_reduction_1): Use swap_ssa_operands. * tree-flow.h: Move various prototypes to tree-phinodes.h. (enum need_phi_state): Move to tree-into-ssa.c. (struct immediate_use_iterator_d, FOR_EACH_IMM_*, BREAK_FROM_IMM_USE_STMT): Move to ssa-iterators.h. (swap_tree_operands): Rename and move prototype to tree-ssa-operands.h. * tree-flow-inline.h (delink_imm_use, link_imm_use_to_list, link_imm_use, set_ssa_use_from_ptr, link_imm_use_stmt, relink_imm_use, relink_imm_use_stmt, end_readonly_imm_use_p, first_readonly_imm_use, next_readonly_imm_use, has_zero_uses, has_single_use, single_imm_use, num_imm_uses): Move to ssa-iterators.h. (get_use_from_ptr, get_def_from_ptr): Move to tree-ssa-operands.h (gimple_phi_arg_imm_use_ptr, phi_arg_index_from_use): Move to tree-phinodes.h. (op_iter_done, op_iter_next_def, op_iter_next_tree, clear_and_done_ssa_iter, op_iter_init, op_iter_init_use, op_iter_init_def, op_iter_init_tree, single_ssa_tree_operand, single_ssa_use_operand, single_ssa_def_operand, zero_ssa_operands, num_ssa_operands, delink_stmt_imm_use, single_phi_def, op_iter_init_phiuse, op_iter_init_phidef, end_imm_use_stmt_p, end_imm_use_stmt_traverse, move_use_after_head, link_use_stmts_after, first_imm_use_stmt, next_imm_use_stmt, first_imm_use_on_stmt, end_imm_use_on_stmt_p, next_imm_use_on_stmt): Move to ssa-iterators.h. (gimple_phi_arg_def, gimple_phi_arg_def_ptr, gimple_phi_arg_edge, gimple_phi_arg_location, gimple_phi_arg_location_from_edge, gimple_phi_arg_set_location, gimple_phi_arg_has_location, phi_nodes, phi_nodes_ptr, phi_ssa_name_p): Move to gimple.h. (set_phi_nodes): Move to tree-phinodes.h. * tree-ssa-operands.h (enum ssa_op_iter_type, struct ssa_operand_iterator_d, SSA_OP*, FOR_EACH_SSA*, SINGLE_SSA*, ZERO_SSA_OPERANDS, NUM_SSA_OPERANDS): Move to ssa-iterators.h. (dump_decl_set): Remove prototype. (get_use_from_ptr, get_def_from_ptr): Relocate from tree-flow.h. * tree-phinodes.h: New file. Move some prototypes from tree-flow.h. (set_phi_nodes): Relocate from tree-flow-inline.h. (gimple_phi_arg_imm_use_ptr, phi_arg_index_from_use): Relocate from tree-flow-inline.h * tree-ssa.h: Add tree-phinodes.h, gimple-ssa.h, ssa-iterators.h to include list. Temporarily add gimple.h to include list. * ssa-iterators.h: New file. (struct immediate_use_iterator_d, FOR_EACH_IMM_*, BREAK_FROM_IMM_USE_STMT): Relocate from tree-flow.h. (enum ssa_op_iter_type, struct ssa_operand_iterator_d, SSA_OP*, FOR_EACH_SSA*, SINGLE_SSA*, ZERO_SSA_OPERANDS, NUM_SSA_OPERANDS): Relocate from tree-ssa-operands.h. (delink_imm_use, link_imm_use_to_list, link_imm_use, set_ssa_use_from_ptr, link_imm_use_stmt, relink_imm_use, relink_imm_use_stmt, end_readonly_imm_use_p, first_readonly_imm_use, next_readonly_imm_use, has_zero_uses, has_single_use, single_imm_use, num_imm_uses, get_use_from_ptr, get_def_from_ptr, phi_arg_index_from_use, op_iter_done, op_iter_next_def, op_iter_next_tree, clear_and_done_ssa_iter, op_iter_init, op_iter_init_use, op_iter_init_def, op_iter_init_tree, single_ssa_tree_operand, single_ssa_use_operand, single_ssa_def_operand, zero_ssa_operands, num_ssa_operands, delink_stmt_imm_use, single_phi_def, op_iter_init_phiuse, op_iter_init_phidef, end_imm_use_stmt_p, end_imm_use_stmt_traverse, move_use_after_head, link_use_stmts_after, first_imm_use_stmt, next_imm_use_stmt, first_imm_use_on_stmt, end_imm_use_on_stmt_p, next_imm_use_on_stmt): Relocate from tree-flow-inline.h. * tree-outof-ssa.h: Change _SSAEXPAND_H macro to GCC_TREE_OUTOF_SSA_H. From-SVN: r203068
2013-10-01gcc/Vidya Praveen4-12/+357
2013-10-01 Vidya Praveen <vidyapraveen@arm.com> * aarch64-simd.md (aarch64_<ANY_EXTEND:su><ADDSUB:optab>l2<mode>_internal): Rename to ... (aarch64_<ANY_EXTEND:su><ADDSUB:optab>l<mode>_hi_internal): ... this; Insert '\t' to output template. (aarch64_<ANY_EXTEND:su><ADDSUB:optab>l<mode>_lo_internal): New. (aarch64_saddl2<mode>, aarch64_uaddl2<mode>): Modify to call gen_aarch64_<ANY_EXTEND:su><ADDSUB:optab>l<mode>_hi_internal() instead. (aarch64_ssubl2<mode>, aarch64_usubl2<mode>): Ditto. gcc/testsuite/ 2013-10-01 Vidya Praveen <vidyapraveen@arm.com> * gcc.target/aarch64/vect_saddl_1.c: New. From-SVN: r203066
2013-10-01install.texi (Host/target specific installation notes for GCC): Put @anchor ↵Uros Bizjak3-120/+160
before @heading. * doc/install.texi (Host/target specific installation notes for GCC): Put @anchor before @heading. * doc/gcc.texi (titlepage): Use @uref and http:// prefix for website. Use @email for email addresses. From-SVN: r203065
2013-10-01tree-ssa-threadedge.c (thread_across_edge): Make path a pointer to a vec.Jeff Law4-125/+179
* tree-ssa-threadedge.c (thread_across_edge): Make path a pointer to a vec. Only delete the path if we create one without successfully registering a jump thread. * tree-ssa-threadupdate.h (register_jump_thread): Pass in path vector as a pointer. * tree-ssa-threadupdate.c (threaded_edges): Remove. No longer used (paths): New vector of jump threading paths. (THREAD_TARGET, THREAD_TARGET2): Remove accessor macros. (THREAD_PATH): New accessor macro for the entire thread path. (lookup_redirection_data): Get intermediate and final outgoing edge from the thread path. (create_edge_and_update_destination_phis): Copy the threading path. (ssa_fix_duplicate_block_edges): Get edges and block types from the jump threading path. (ssa_redirect_edges): Get edges and block types from the jump threading path. Free the path vector. (thread_block): Get edges from the jump threading path. Look at the entire path to see if we thread to a loop exit. If we cancel a jump thread request, then free the path vector. (thread_single_edge): Get edges and block types from the jump threading path. Free the path vector. (thread_through_loop_header): Get edges and block types from the jump threading path. Free the path vector. (mark_threaded_blocks): Iterate over the vector of paths and store the path on the appropriate edge. Get edges and block types from the jump threading path. (mark_threaded_blocks): Get edges and block types from the jump threading path. Free the path vector. (thread_through_all_blocks): Use the vector of paths rather than a vector of 3-edge sets. (register_jump_thread): Accept pointer to a path vector rather than the path vector itself. Store the path vector for later use. Simplify. From-SVN: r203061
2013-10-01re PR target/58574 (Wrong code due to s390x machine reorg pass)Jakub Jelinek4-25/+259
2013-10-01 Jakub Jelinek <jakub@redhat.com> Andreas Krebbel <Andreas.Krebbel@de.ibm.com> PR target/58574 * config/s390/s390.c (s390_split_branches): Modify check for table jump insns. (s390_chunkify_start): Rearrange table jump insn check in order to deal with compare and branch insns correctly. 2013-10-01 Jakub Jelinek <jakub@redhat.com> PR target/58574 * gcc.c-torture/execute/pr58574.c: New testcase. Co-Authored-By: Andreas Krebbel <Andreas.Krebbel@de.ibm.com> From-SVN: r203060
2013-10-01re PR other/58578 (mpfr tasinh test doesn't terminate when built with trunk ↵Kugan Vivekanandarajah4-75/+23
for ARM) 2013-10-01 Kugan Vivekanandarajah <kuganv@linaro.org> gcc/ PR target/58578 Revert 2013-04-05 Greta Yorsh <Greta.Yorsh@arm.com> * config/arm/arm.md (arm_ashldi3_1bit): define_insn into define_insn_and_split. (arm_ashrdi3_1bit,arm_lshrdi3_1bit): Likewise. (shiftsi3_compare): New pattern. (rrx): New pattern. * config/arm/unspecs.md (UNSPEC_RRX): New. gcc/testsuite PR target/58578 * gcc.target/arm/pr58578.c: New test. From-SVN: r203059
2013-10-01re PR tree-optimization/58556 (gen-vect-26.c / gen-vect-28.c regression ↵Kyrylo Tkachov3-4/+10
merging from r202839 to r202981) [gcc/testsuite/] 2013-10-01 Kyrylo Tkachov <kyrylo.tkachov@arm.com> PR tree-optimization/58556 * gcc.dg/tree-ssa/gen-vect-26.c: Use dynamic vector cost model. * gcc.dg/tree-ssa/gen-vect-28.c: Likewise. From-SVN: r203057
2013-10-01stmt.c (expand_asm_operands): Revert part of 2013-09-24 special casing inout ↵Alan Modra2-3/+6
operands. * stmt.c (expand_asm_operands): Revert part of 2013-09-24 special casing inout operands. From-SVN: r203056
2013-10-01target-supports.exp (check_effective_target_ptr32plus): Fail for MSP430.Nick Clifton10-11/+30
* lib/target-supports.exp (check_effective_target_ptr32plus): Fail for MSP430. * gcc.c-torture/compile/20010327-1.c: Only run the test for ptr32plus targets. * gcc.c-torture/compile/pr41181.c: Likewise. * gcc.c-torture/compile/calls.c: Likewise. * gcc.c-torture/compile/990617-1.c: Likewise. * gcc.c-torture/compile/pr55955.c: Only run the test for int32plus targets. * gcc.c-torture/compile/limits-externdecl.c: Likewise. From-SVN: r203055
2013-10-01re PR tree-optimization/58553 (New fail in PASS->FAIL: ↵Richard Biener4-16/+62
gcc.c-torture/execute/memcpy-2.c execution on arm and aarch64) 2013-10-01 Richard Biener <rguenther@suse.de> PR tree-optimization/58553 * tree-loop-distribution.c (struct partition_s): Add niter member. (classify_partition): Populate niter member for the partition and properly identify whether the relevant store happens before or after the loop exit. (generate_memset_builtin): Use niter member from the partition. (generate_memcpy_builtin): Likewise. * gcc.dg/torture/pr58553.c: New testcase. From-SVN: r203054
2013-10-01Daily bump.GCC Administrator1-1/+1
From-SVN: r203051
2013-09-30vec.h (vec_prefix, vec): Prefix member names with "m_".Richard Sandiford3-90/+95
gcc/ * vec.h (vec_prefix, vec): Prefix member names with "m_". * vec.c (vec_prefix::calculate_allocation): Update accordingly. From-SVN: r203047
2013-09-30basic-block.h (edge_list): Prefix member names with "m_".Richard Sandiford47-160/+224
gcc/ * basic-block.h (edge_list): Prefix member names with "m_". * context.h (context): Likewise. * domwalk.h (dom_walker): Likewise. * gengtype-state.c (s_expr_writer, state_writer): Likewise. * graphite-sese-to-poly.c (sese_dom_walker): Likewise. * hash-table.h (hash_table): Likewise. * machmode.h (bit_field_mode_iterator): Likewise. * pass_manager.h (pass_list): Likewise. * tree-into-ssa.c (mark_def_dom_walker): Likewise. * tree-pass.h (pass_data): Likewise. * tree-ssa-dom.c (dom_opt_dom_walker): Likewise. * tree-ssa-phiopt.c (nontrapping_dom_walker): Likewise, * tree-ssa-uncprop.c (uncprop_dom_walker): Likewise. * asan.c (pass_data_asan): Update accordingly. * cfganal.c (control_dependences::find_control_dependence): Likewise. (control_dependences::control_dependences): Likewise. (control_dependences::~control_dependences): Likewise. (control_dependences::~control_dependences): Likewise. (control_dependences::get_edges_dependent_on): Likewise. * cgraphbuild.c (pass_data_rebuild_cgraph_edges::clone): Likewise. (pass_data_remove_cgraph_callee_edges::clone): Likewise. * context.c (gcc::context::context): Likewise. * cprop.c (pass_rtl_cprop::clone): Likewise. * domwalk.c (dom_walker::walk): Likewise. * ipa-inline-analysis.c (pass_inline_parameters::clone): Likewise. * ipa-pure-const.c (pass_local_pure_const::clone): Likewise. * mode-switching.c (pass_mode_switching::clone): Likewise. * passes.c (opt_pass::opt_pass): Likewise. (pass_manager::pass_manager): Likewise. * predict.c (pass_strip_predict_hints::clone): Likewise. * recog.c (pass_data pass_data_peephole2::clone): Likewise. (pass_split_all_insns::clone): Likewise. * stor-layout.c (bit_field_mode_iterator::bit_field_mode_iterator): Likewise. (bit_field_mode_iterator::next_mode): Likewise. (bit_field_mode_iterator::prefer_smaller_modes): Likewise. * tree-cfg.c (pass_split_crit_edges::clone): Likewise. * tree-cfgcleanup.c (pass_merge_phi::clone): Likewise. * tree-complex.c (pass_lower_complex::clone): Likewise. * tree-eh.c (pass_cleanup_eh::clone): Likewise. * tree-object-size.c (pass_object_sizes::clone): Likewise. * tree-optimize.c (pass_fixup_cfg::clone): Likewise. * tree-ssa-ccp.c (pass_data_ccp::clone): Likewise. (pass_fold_builtins::clone): Likewise. * tree-ssa-copy.c (pass_data_copy_prop::clone): Likewise. * tree-ssa-copyrename.c (pass_rename_ssa_copies::clone): Likewise. * tree-ssa-dce.c (pass_dce::clone, pass_dce_loop::clone): Likewise. (pass_cd_dce::clone): Likewise. * tree-ssa-dom.c (pass_dominator::clone): Likewise. (pass_phi_only_cprop::clone): Likewise. * tree-ssa-dse.c (pass_dse::clone): Likewise. * tree-ssa-forwprop.c (pass_forwprop::clone): Likewise. * tree-ssa-loop.c (pass_lim::clone): Likewise. * tree-ssa-phiopt.c (pass_phiopt::clone): Likewise. * tree-ssa-pre.c (pass_fre::clone): Likewise. * tree-ssa-reassoc.c (pass_reassoc::clone): Likewise. * tree-ssa-uninit.c (pass_late_warn_uninitialized::clone): Likewise. * tree-tailcall.c (pass_tail_recursion::clone): Likewise. * tree-vect-generic.c (pass_lower_vector_ssa::clone): Likewise. * tree-vrp.c (pass_vrp::clone): Likewise. * tsan.c (pass_tsan::clone): Likewise. From-SVN: r203046
2013-09-30re PR middle-end/58564 (possible wrong code bug at -O0)Jakub Jelinek2-3/+7
PR middle-end/58564 * fold-const.c (tree_unary_nonnegative_warnv_p): Use INTEGRAL_TYPE_P (t) instead of TREE_CODE (t) == INTEGER_TYPE. From-SVN: r203044
2013-09-30re PR middle-end/58564 (possible wrong code bug at -O0)Jakub Jelinek4-3/+42
PR middle-end/58564 * fold-const.c (fold_ternary_loc): For A < 0 : <sign bit of A> : 0 optimization, punt if sign_bit_p looked through any zero extension. * gcc.c-torture/execute/pr58564.c: New test. From-SVN: r203042
2013-09-30tree-ssa-threadupdate.c (ssa_fix_duplicate_block_edges): Update redirected ↵Teresa Johnson4-15/+25
out edge count in joiner case. * tree-ssa-threadupdate.c (ssa_fix_duplicate_block_edges): Update redirected out edge count in joiner case. (ssa_redirect_edges): Common the joiner and non-joiner cases so that joiner case gets profile updates. * testsuite/gcc.dg/tree-ssa/ssa-dom-thread-3.c (expand_one_var): Update for additional dump message. From-SVN: r203041
2013-09-30compiler: Use backend interface for variable expressions.Chris Manghane4-8/+61
* go-gcc.cc (Backend::error_expression): New function. (Backend::var_expression): New function. (Backend::indirect_expression): New function. From-SVN: r203038
2013-09-30re PR tree-optimization/58554 (Revision 202619 causes runtime failure in ↵Richard Biener4-2/+39
CPU2006 benchmark 445.gobmk) 2013-09-30 Richard Biener <rguenther@suse.de> PR tree-optimization/58554 * tree-loop-distribution.c (classify_partition): Require unconditionally executed stores for memcpy and memset recognition. (tree_loop_distribution): Calculate dominance info. * gcc.dg/torture/pr58554.c: New testcase. From-SVN: r203031
2013-09-30Function profiling macro support for Aarch64Venkataramanan Kumar4-16/+24
From-SVN: r203028
2013-09-30darwin.md (load_macho_picbase_si): Wrap machopic calls and defines in ↵Iain Sandoe2-1/+30
TARGET_MACHO conditional. gcc: * config/rs6000/darwin.md (load_macho_picbase_si): Wrap machopic calls and defines in TARGET_MACHO conditional. (load_macho_picbase_di): Likewise. (reload_macho_picbase): Likewise. (reload_macho_picbase_si): Likewise. (reload_macho_picbase_di): Likewise. (nonlocal_goto_receiver): Likewise. From-SVN: r203027
2013-09-30msp430.c (msp430x_names): New array.Nick Clifton3-12/+316
* config/msp430/msp430.c (msp430x_names): New array. Lists MCUs that use the MSP430X ISA. (msp430_option_override): Scan -mmcu command line option for any MCU name that supports the MSP430X ISA. * config/msp430/t-msp430 (MULTILIB_MATCHES): Add matches for known -mmcu options which enable the MSP430X ISA. From-SVN: r203026
2013-09-30barrel-shifter-1.c: New test.Simon Cook40-0/+344
2013-09-30 Simon Cook <simon.cook@embecosm.com> Joern Rennecke <joern.rennecke@embecosm.com> * gcc.target/arc/barrel-shifter-1.c: New test. * gcc.target/arc/barrel-shifter-2.c: Likewise. * gcc.target/arc/long-calls.c, gcc.target/arc/mA6.c: Likewise. * gcc.target/arc/mA7.c, gcc.target/arc/mARC600.c: Likewise. * gcc.target/arc/mARC601.c, gcc.target/arc/mARC700.c: Likewise. * gcc.target/arc/mcpu-arc600.c, gcc.target/arc/mcpu-arc601.c: Likewise. * gcc.target/arc/mcpu-arc700.c, gcc.target/arc/mcrc.c: Likewise. * gcc.target/arc/mdpfp.c, gcc.target/arc/mdsp-packa.c: Likewise. * gcc.target/arc/mdvbf.c, gcc.target/arc/mlock.c: Likewise. * gcc.target/arc/mmac-24.c, gcc.target/arc/mmac-d16.c: Likewise. * gcc.target/arc/mno-crc.c, gcc.target/arc/mno-dsp-packa.c: Likewise. * gcc.target/arc/mno-dvbf.c, gcc.target/arc/mno-lock.c: Likewise. * gcc.target/arc/mno-mac-24.c, gcc.target/arc/mno-mac-d16.c: Likewise. * gcc.target/arc/mno-rtsc.c, gcc.target/arc/mno-swape.c: Likewise. * gcc.target/arc/mno-xy.c, gcc.target/arc/mrtsc.c: Likewise. * gcc.target/arc/mspfp.c, gcc.target/arc/mswape.c: Likewise. * gcc.target/arc/mtune-ARC600.c: Likewise. * gcc.target/arc/mtune-ARC601.c: Likewise. * gcc.target/arc/mtune-ARC700-xmac: Likewise. * gcc.target/arc/mtune-ARC700.c: Likewise. * gcc.target/arc/mtune-ARC725D.c: Likewise. * gcc.target/arc/mtune-ARC750D.c: Likewise. * gcc.target/arc/mul64.c, gcc.target/arc/mxy.c: Likewise. * gcc.target/arc/no-dpfp-lrsr.c: Likewise. Co-Authored-By: Joern Rennecke <joern.rennecke@embecosm.com> From-SVN: r203025