1. 30 Aug, 2013 15 commits
    • recog.c (verify_changes): Verify that changes[i].old is non-zero before applying REG_P. · ac7eacd2
              * recog.c (verify_changes): Verify that changes[i].old is non-zero
              before applying REG_P.
      
      From-SVN: r202107
      Joern Rennecke committed
    • Move testsuite changes to correct ChangeLog, and delete a new · 8f2ea9a3
      test that should not have been committed.
      
      2013-08-30  Teresa Johnson  <tejohnson@google.com>
      
      	* gcc.dg/inline-dump.c: Delete inadvertant commit.
      
      From-SVN: r202106
      Teresa Johnson committed
    • re PR tree-optimization/58277 (wrong code at -O3) · 8b29fd4e
      	PR tree-optimization/58277
      	* tree-ssa-strlen.c (strlen_enter_block): If do_invalidate gave up
      	after seeing too many stmts with vdef in between dombb and current
      	bb, invalidate everything.
      
      	* gcc.c-torture/execute/pr58277-1.c: New test.
      	* gcc.c-torture/execute/pr58277-2.c: New test.
      
      From-SVN: r202104
      Jakub Jelinek committed
    • fold-const.c (fold_single_bit_test): Fix overflow test. · 26d75703
      2013-08-30  Richard Biener  <rguenther@suse.de>
      
      	* fold-const.c (fold_single_bit_test): Fix overflow test.
      
      From-SVN: r202103
      Richard Biener committed
    • function.c (assign_parm_setup_reg): For a parameter passed by pointer and which… · f7e088e7
      function.c (assign_parm_setup_reg): For a parameter passed by pointer and which can live in a register...
      
      	* function.c (assign_parm_setup_reg): For a parameter passed by pointer
      	and which can live in a register, always retrieve the value on entry.
      	* var-tracking.c (add_stores): Treat the copy on entry for a parameter
      	passed by invisible reference specially.
      	(emit_notes_in_bb) <MO_VAL_USE>: Emit notes before the instruction.
      	(vt_add_function_parameter): Correctly deal with a parameter passed by
      	invisible reference.
      
      From-SVN: r202102
      Eric Botcazou committed
    • Add custom HTM fast path for RTM on x86_64. · bec9ec3f
      	* libitm_i.h (gtm_thread): Assign an asm name to serial_lock.
      	(htm_fastpath): Assign an asm name.
      	* libitm.h (_ITM_codeProperties): Add non-ABI flags used by custom
      	HTM fast paths.
      	(_ITM_actions): Likewise.
      	* config/x86/target.h (HTM_CUSTOM_FASTPATH): Enable custom fastpath on
      	x86_64.
      	* config/x86/sjlj.S (_ITM_beginTransaction): Add custom HTM fast path.
      	* config/posix/rwlock.h (gtm_rwlock): Update comments.  Move summary
      	field to the start of the structure.
      	* config/linux/rwlock.h (gtm_rwlock): Update comments.
      	* beginend.cc (gtm_thread::begin_transaction): Add retry policy
      	handling for custom HTM fast paths.
      
      From-SVN: r202101
      Torvald Riegel committed
    • Correct previous patch to not mark terminate as LEAF. · 8595a07d
      	* class.c (build_vtbl_initializer): Drop LEAF
      	* decl.c (cxx_init_decl_processing): Likewise.
      	(push_throw_library_fn): Likewise.
      	* except.c (init_exception_processing): Likewise.
      	(do_begin_catch): Likewise.
      	(do_end_catch): Likewise.
      	(do_allocate_exception): Likewise.
      
      From-SVN: r202100
      Jan Hubicka committed
    • class.c (build_vtbl_initializer): Make __cxa_deleted_virtual ECF_NORETURN | ECF_LEAF · fafa0521
      	* class.c (build_vtbl_initializer): Make __cxa_deleted_virtual
      	ECF_NORETURN | ECF_LEAF
      	* cp-tree.h (build_library_fn_ptr, build_cp_library_fn_ptr,
      	push_library_fn, push_void_library_fn): Update prototype.
      	* decl.c (build_library_fn_1): Remove.
      	(push_cp_library_fn, build_cp_library_fn): Update to take ECF flags.
      	(cxx_init_decl_processing): Update; global_delete_fndecl is ECF_NOTROW;
      	__cxa_pure_virtual is ECF_NORETURN | ECF_NORETURN | ECF_LEAF.
      	(build_library_fn_1): Add ecf_flags argument; rename to ...
      	(build_library_fn): ... this one.
      	(build_cp_library_fn): Take ecf_flags; do not copy NOTHROW flag.
      	(build_library_fn_ptr): Take ecf_flags.
      	(build_cp_library_fn_ptr): Likewise.
      	(push_library_fn): Likewise.
      	(push_cp_library_fn): Likewise.
      	(push_void_library_fn): Likewise.
      	(push_throw_library_fn): All throws are ECF_NORETURN.
      	(__cxa_atexit, __cxa_thread_atexit): Add ECF_LEAF | ECF_NOTHROW attributes.
      	(expand_static_init): __cxa_guard_acquire, __cxa_guard_release,
      	__cxa_guard_abort are ECF_NOTHROW | ECF_LEAF.
      	* except.c (init_exception_processing): terminate is
      	ECF_NOTHROW | ECF_NORETURN | ECF_LEAF.
      	(declare_nothrow_library_fn): Add ecf_flags parameter.
      	(__cxa_get_exception_ptr): Is ECF_NOTHROW | ECF_PURE | ECF_LEAF |
      	ECF_TM_PURE.
      	(do_begin_catch): cxa_begin_catch and _ITM_cxa_begin_catch
      	are ECF_NOTHROW | ECF_LEAF.
      	(do_end_catch): __cxa_end_catch and _ITM_cxa_end_catch is
      	ECF_LEAF.
      	(do_allocate_exception): _cxa_allocate_exception
      	and _ITM_cxa_allocate_exception are ECF_NOTHROW | ECF_MALLOC
      	| ECF_LEAF
      	(do_free_exception): __cxa_free_exception is
      	ECF_NOTHROW | ECF_LEAF.
      	* rtti.c (build_dynamic_cast_1): __dynamic_cast
      	is ECF_LEAF | ECF_PURE | ECF_NOTHROW.
      
      From-SVN: r202099
      Jan Hubicka committed
    • * tree.c (set_call_expr_flags): Fix handling of TM_PURE. · 47500756
      From-SVN: r202098
      Jan Hubicka committed
    • re PR tree-optimization/58228 (wrong code (with vectorization?) at -O3 on x86_64-linux-gnu) · 6e8dad05
      2013-08-30  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/58228
      	* tree-vect-data-refs.c (vect_analyze_data_ref_access): Do not
      	allow invariant loads in nested loop vectorization.
      
      	* gcc.dg/torture/pr58228.c: New testcase.
      
      From-SVN: r202097
      Richard Biener committed
    • re PR tree-optimization/58223 (wrong code at -O3 on x86_64-linux-gnu) · 062ef2c8
      2013-08-30  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/58223
      	* tree-loop-distribution.c (has_anti_dependence): Rename to ...
      	(has_anti_or_output_dependence): ... this and adjust to also
      	look for output dependences.
      	(mark_nodes_having_upstream_mem_writes): Adjust.
      	(rdg_flag_uses): Likewise.
      
      	* gcc.dg/torture/pr58223.c: New testcase.
      	* gcc.dg/tree-ssa/ldist-16.c: Flip expected behavior.
      
      From-SVN: r202096
      Richard Biener committed
    • re PR tree-optimization/58010 (ICE in vect_create_epilog_for_reduction, at tree-vect-loop.c:4378) · 7a764c60
      2013-08-30  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/58010
      	* tree-vect-loop.c (vect_create_epilog_for_reduction): Remove
      	assert that we have a loop-closed PHI.
      
      	* gcc.dg/pr58010.c: New testcase.
      
      From-SVN: r202095
      Richard Biener committed
    • lto-symtab.c (lto_cgraph_replace_node): Free decl_in_state. · 82e9d642
      
      	* lto-symtab.c (lto_cgraph_replace_node): Free decl_in_state.
      	* cgraph.c (cgraph_release_function_body): Free decl_in_state.
      	* lto-section-in.c (lto_free_function_in_decl_state): New function.
      	(lto_free_function_in_decl_state_for_node): New function.
      
      From-SVN: r202094
      Jan Hubicka committed
    • lto-symtab.c (lto_cgraph_replace_node): Free decl_in_state. · 256eefa9
      	* lto-symtab.c (lto_cgraph_replace_node): Free decl_in_state.
      	* cgraph.c (cgraph_release_function_body): Free decl_in_state.
      	* lto-section-in.c (lto_free_function_in_decl_state): New function.
      	(lto_free_function_in_decl_state_for_node): New function.
      
      	* lto.c (read_cgraph_and_symbols): Remove ggc_collect;
      	clear section node; add comment why we do not collect.
      
      From-SVN: r202093
      Jan Hubicka committed
    • Daily bump. · 3f0fdc34
      From-SVN: r202092
      GCC Administrator committed
  2. 29 Aug, 2013 15 commits
  3. 28 Aug, 2013 10 commits
    • re PR c++/58255 ([C++11] explicit delegating constructor with no arguments wrongly rejected) · 1ca66f7e
      /cp
      2013-08-28  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/58255
      	* init.c (build_aggr_init): When init == void_type_node do not
      	set LOOKUP_ONLYCONVERTING.
      
      /testsuite
      2013-08-28  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/58255
      	* g++.dg/cpp0x/dc7.C: New.
      
      From-SVN: r202061
      Paolo Carlini committed
    • Replace fixed size array that was holding vtable pointers with a vector, allowing dynamic resizing. · b208ba40
      Replace fixed size array that was holding vtable pointers
      with a vector, allowing dynamic resizing.  ALso fix issues with
      warning diagnostics.
      
      From-SVN: r202060
      Caroline Tice committed
    • ipa-inline.c (edge_badness): Fix integer underflow. · 1b08b734
      2013-08-28  Dehao Chen  <dehao@google.com>
      
      	* ipa-inline.c (edge_badness): Fix integer underflow.
      
      From-SVN: r202059
      Dehao Chen committed
    • gtm-builtins.def (_ITM_free): Declare leaf. · 48a3fa69
      	* gtm-builtins.def (_ITM_free): Declare leaf.
      
      From-SVN: r202058
      Uros Bizjak committed
    • Apparently I forgot to commit the ChangeLog when I committed the change to libvtv previously. · baa2052d
      Apparently I forgot to commit the ChangeLog when I committed
      the change to libvtv previously.  Fixing that now.
      
      From-SVN: r202056
      Caroline Tice committed
    • re PR target/58067 (ICE in GFortran recog.c:2158) · 215f73e6
      	PR target/58067
      	* config/i386/i386.md (*tls_global_dynamic_64_largepic): New insn.
      	(*tls_local_dynamic_base_64_largepic): Likewise.
      	(tls_global_dynamic_64_<mode>, tls_local_dynamic_base_64_<mode>):
      	Remove predicate from call operand.
      	* config/i386/i386.c (ix86_tls_get_addr): For -mcmodel=large -fpic
      	return sum of pic_offset_table_rtx and UNSPEC_PLTOFF of the symbol.
      
      From-SVN: r202055
      Jakub Jelinek committed
    • tree-ssa-threadedge.c (thread_around_empty_block): Remove checks for the number… · 34554d1a
      tree-ssa-threadedge.c (thread_around_empty_block): Remove checks for the number of predecessors and successors allowed.
      
              * tree-ssa-threadedge.c (thread_around_empty_block): Remove
              checks for the number of predecessors and successors allowed.
              * tree-ssa-threadupdate.c (mark_threaded_blocks): Ignore requests
              which require copying a joiner block if there is a request which
              is a subpath that requires no joiner block copying.
      
      From-SVN: r202054
      Jeff Law committed
    • lto-streamer-out.c (DFS_write_tree_body): Drop BINFO_INHERITANCE_CHAIN,… · 184799e7
      lto-streamer-out.c (DFS_write_tree_body): Drop BINFO_INHERITANCE_CHAIN, BINFO_SUBVTT_INDEX and BINFO_VPTR_INDEX.
      
      
      	* lto-streamer-out.c (DFS_write_tree_body): Drop
      	BINFO_INHERITANCE_CHAIN, BINFO_SUBVTT_INDEX and BINFO_VPTR_INDEX.
      	(hash_tree): Do not hash DECL_DEFER_OUTPUT, BINFO_INHERITANCE_CHAIN,
      	BINFO_SUBVTT_INDEX, BINFO_VPTR_INDEX, DECL_IN_TEXT_SECTION.
      	* tree-streamer-in.c (unpack_ts_decl_common_value_fields):
      	Do not read DECL_ERROR_ISSUED.
      	(unpack_ts_decl_with_vis_value_fields): Do not read
      	DECL_DEFER_OUTPUT.
      	(lto_input_ts_binfo_tree_pointers): Do not read BINFO_INHERITANCE_CHAIN,
              BINFO_SUBVTT_INDEX, BINFO_VPTR_INDEX
      	* tree-streamer-out.c (pack_ts_decl_common_value_fields): Do not
      	write DECL_ERROR_ISSUED..
      	(pack_ts_decl_with_vis_value_fields): Do not write
      	DECL_DEFER_OUTPUT.
      	(write_ts_binfo_tree_pointers): Do not read BINFO_INHERITANCE_CHAIN,
              BINFO_SUBVTT_INDEX, BINFO_VPTR_INDEX
      	* print-tree.c (print_node): Do not print DECL_ERROR_ISSUED.
      	* tree.h (tree_decl_common): Update comment.
      	(DECL_ERROR_ISSUED): Remove.
      
      From-SVN: r202053
      Jan Hubicka committed
    • lto.c (compare_tree_sccs_1): Drop DECL_ERROR_ISSUED, DECL_DEFER_OUTPUT and DECL_IN_TEXT_SECTION. · c01c111b
      
      
      	* lto.c (compare_tree_sccs_1): Drop DECL_ERROR_ISSUED,
      	DECL_DEFER_OUTPUT and DECL_IN_TEXT_SECTION.
      	(unify_scc): Do checking assert.
      
      	* lto-streamer-out.c (DFS_write_tree_body): Drop
      	BINFO_INHERITANCE_CHAIN, BINFO_SUBVTT_INDEX and BINFO_VPTR_INDEX.
      	(hash_tree): Do not hash DECL_DEFER_OUTPUT, BINFO_INHERITANCE_CHAIN,
      	BINFO_SUBVTT_INDEX, BINFO_VPTR_INDEX, DECL_IN_TEXT_SECTION.
      	* tree-streamer-in.c (unpack_ts_decl_common_value_fields):
      	Do not read DECL_ERROR_ISSUED.
      	(unpack_ts_decl_with_vis_value_fields): Do not read
      	DECL_DEFER_OUTPUT.
      	(lto_input_ts_binfo_tree_pointers): Do not read BINFO_INHERITANCE_CHAIN,
              BINFO_SUBVTT_INDEX, BINFO_VPTR_INDEX
      	* tree-streamer-out.c (pack_ts_decl_common_value_fields): Do not
      	write DECL_ERROR_ISSUED..
      	(pack_ts_decl_with_vis_value_fields): Do not write
      	DECL_DEFER_OUTPUT.
      	(write_ts_binfo_tree_pointers): Do not read BINFO_INHERITANCE_CHAIN,
              BINFO_SUBVTT_INDEX, BINFO_VPTR_INDEX
      	* print-tree.c (print_node): Do not print DECL_ERROR_ISSUED.
      	* tree.h (tree_decl_common): Update comment.
      	(DECL_ERROR_ISSUED): Remove.
      
      From-SVN: r202052
      Jan Hubicka committed
    • PR spam/58261 · 9bb6628e
      	PR spam/58262
      	Fix up ChangeLog entry whitespace.
      
      From-SVN: r202051
      Jakub Jelinek committed