1. 10 May, 2013 1 commit
  2. 09 May, 2013 17 commits
    • epiphany.c (epiphany_expand_prologue): When using gen_stack_adjust_str with a register offset... · d4bca93c
              * config/epiphany/epiphany.c (epiphany_expand_prologue):
              When using gen_stack_adjust_str with a register offset, add a
              REG_FRAME_RELATED_EXPR note.
      
      From-SVN: r198753
      Joern Rennecke committed
    • sse.md (*vec_extractv4si_0_zext): New pattern. · 60ca9a65
      	* config/i386/sse.md (*vec_extractv4si_0_zext): New pattern.
      	(*vec_extractv4si_zext_mem): Ditto.
      	(*vec_extractv2di): Add 0->x and x->x alternatives.
      	* config/i386/mmx.md (*vec_extractv2si_zext_mem): New pattern.
      	* config/i386/i386.md (*zero_extendsidi2): Add *Yj->?r alternative.
      
      From-SVN: r198752
      Uros Bizjak committed
    • re PR c++/57222 (Template alias not working in argument of template class template method) · 26863a32
      	PR c++/57222
      	* pt.c (lookup_template_class_1): Handle getting a template
      	template parameter as D1.
      
      From-SVN: r198747
      Jason Merrill committed
    • N3639 C++1y VLA diagnostics · a57dbdaa
      	* decl.c (grokdeclarator): Complain about reference, pointer, or
      	typedef to VLA.
      	(create_array_type_for_decl): Complain about array of VLA.
      	* pt.c (tsubst): Likewise.
      	* rtti.c (get_tinfo_decl): Talk about "array of runtime bound".
      	* semantics.c (finish_decltype_type): Complain about decltype of VLA.
      	* typeck.c (cp_build_addr_expr_1): Complain about VLA.
      	(cxx_sizeof_or_alignof_type): Likewise.
      
      From-SVN: r198746
      Jason Merrill committed
    • N3639 C++1y VLA support · 0138d6b2
      gcc/
      	* gimplify.c (gimplify_vla_decl): Don't touch an existing
      	DECL_VALUE_EXPR.
      gcc/cp/
      	* decl.c (compute_array_index_type): Allow VLAs in C++1y mode.
      	(check_array_initializer): Allow VLA init.
      	(reshape_init_array_1): Adjust.
      	(cp_finish_decl): Check for invalid VLA length.
      	* typeck2.c (process_init_constructor_array): Adjust.
      	(store_init_value): Use build_vec_init for VLAs.
      	* semantics.c (add_capture): Capture VLA as ptr+len.
      	(vla_capture_type): New.
      	(build_capture_proxy): Rebuild the VLA.
      	* typeck.c (build_simple_component_ref): Split out from...
      	(build_ptrmemfunc_access_expr): ...here.
      	* tree.c (array_of_runtime_bound_p): New.
      	* init.c (throw_bad_array_length): New.
      	(build_vec_init): Use it.
      	* parser.c (cp_convert_range_for): When iterating over a VLA,
      	use it directly rather than bind a reference.
      	* cp-tree.h: Declare new functions.
      libstdc++-v3/
      	* libsupc++/new: Add std::bad_array_length.
      	* libsupc++/bad_array_length.cc: New.
      	* libsupc++/eh_aux_runtime.cc: Add __cxa_bad_array_length.
      	* libsupc++/Makefile.in: Build them.
      	* config/abi/pre/gnu.ver: Add new symbols.
      	* config/abi/pre/gnu-versioned-namespace.ver: Add new symbols.
      
      From-SVN: r198745
      Jason Merrill committed
    • tree.c (build_constructor_va): New. · a3409c02
      	* tree.c (build_constructor_va): New.
      	* tree.h: Declare it.
      
      From-SVN: r198744
      Jason Merrill committed
    • re PR lto/57084 (483. xalancbmk run fails with -O2 -flto for i686) · 66e6b990
      2013-05-09  Martin Jambor  <mjambor@suse.cz>
      
      	PR lto/57084
      	* gimple-fold.c (canonicalize_constructor_val): Call
      	cgraph_get_create_real_symbol_node instead of cgraph_get_create_node.
      
      From-SVN: r198743
      Martin Jambor committed
    • Jan Hubicka <jh@suse.cz> · 64cfa6c0
      	Richard Biener  <rguenther@suse.de>
      
      	PR lto/54095
      	* symtab.c (symtab_make_decl_local): Do not add private names.
      
      	* lto.c (lto_register_var_decl_in_symtab): Don't do renaming.
      	(lto_register_var_decl_in_symtab): Likewise.
      	(lto_main): Promote statics.
      	* lto-partition.c (privatize_symbol_name): New function.
      	(promote_symbol): Use it.
      	(may_need_named_section_p): New predicate.
      	(rename_statics): New functions.
      	(lto_promote_cross_file_statics): Simplify; do renaming.
      	(lto_promote_statics_nonwpa): New function.
      	* lto-partition.h (lto_promote_statics_nonwpa): New function.
      
      Co-Authored-By: Richard Biener <rguenther@suse.de>
      
      From-SVN: r198741
      Jan Hubicka committed
    • re PR lto/54095 (Unnecessary static variable renaming) · c3167b00
      
      	PR lto/54095
      	* symtab.c (insert_to_assembler_name_hash): Handle clones.
      	(unlink_from_assembler_name_hash): Likewise.
      	(symtab_prevail_in_asm_name_hash, symtab_register_node,
      	symtab_unregister_node, symtab_initialize_asm_name_hash,
      	change_decl_assembler_name): Update.
      
      From-SVN: r198736
      Jan Hubicka committed
    • aarch64.md: New movtf split. · 12dc6974
      	* config/aarch64/aarch64.md: New movtf split.
      	(*movtf_aarch64): Update.
      	(aarch64_movdi_tilow): Handle TF modes and rename to
      	aarch64_movdi_<mode>low.
      	(aarch64_movdi_tihigh): Handle TF modes and rename to
      	aarch64_movdi_<mode>high
      	(aarch64_movtihigh_di): Handle TF modes and rename to
      	aarch64_mov<mode>high_di
      	(aarch64_movtilow_di): Handle TF modes and rename to
      	aarch64_mov<mode>low_di
      	(aarch64_movtilow_tilow): Remove spurious whitespace.
      	* config/aarch64/aarch64.c (aarch64_split_128bit_move): Handle TFmode
      	splits.
      	(aarch64_print_operand): Update.
      
      From-SVN: r198735
      Sofiane Naci committed
    • configure.ac (HAVE_AS_TLS): Enable tests for powerpcle and powerpc64le. · 227eb343
      	* configure.ac (HAVE_AS_TLS): Enable tests for powerpcle and
      	powerpc64le.
      	* configure: Regenerate.
      
      From-SVN: r198734
      Alan Modra committed
    • Mark all member functions with memory models always inline v2 · a062bb4b
      When a non constant memory model is passed to __atomic_*
      gcc falls back to seq_cst. This drops any HLE acquire or release bits.
      
      This can happen when <atomic> is used with -O0
      as the member functions are not always inlined then and the memory
      argument passed in ends up being non-constant.
      
      v2: Use _GLIBCXX_ALWAYS_INLINE
      
      libstdc++-v3/:
      
      2013-05-08  Andi Kleen  <ak@linux.intel.com>
      
      	PR target/55947
      	* libstdc++-v3/include/bits/atomic_base.h
      	(_GLIBCXX_ALWAYS_INLINE): Add new macro.
      	(atomic_thread_fence, atomic_signal_fence, test_and_set,
      	clear, store, load, exchange, compare_exchange_weak)
      	compare_exchange_strong, fetch_add, fetch_sub, fetch_and,
      	fetch_or, fetch_xor): Mark _GLIBCXX_ALWAYS_INLINE.
      
      From-SVN: r198733
      Andi Kleen committed
    • except.c (is_admissible_throw_operand_or_catch_parameter): Check variably_modified_type_p. · 785b887e
      	* except.c (is_admissible_throw_operand_or_catch_parameter): Check
      	variably_modified_type_p.
      	(expand_start_catch_block): Mark the typeinfo used here.
      	* semantics.c (finish_handler_parms): Not here.
      
      	* error.c (dump_type_suffix): Try harder on VLA length.
      
      From-SVN: r198732
      Jason Merrill committed
    • Core 624/N2932: Throw bad_array_new_length on overflow · 7d5e76c8
      	in array new size calculation.
      
      libstdc++-v3/
      	* libsupc++/new: Add std::bad_array_new_length.
      	* libsupc++/bad_array_new.cc: New.
      	* libsupc++/eh_aux_runtime.cc: Add __cxa_throw_bad_array_new_length.
      	* libsupc++/Makefile.in: Build them.
      	* config/abi/pre/gnu.ver: Add new symbols.
      	* config/abi/pre/gnu-versioned-namespace.ver: Add new symbols.
      gcc/cp/
      	* init.c (throw_bad_array_new_length): New.
      	(build_new_1): Use it.  Don't warn about braced-init-list.
      	(build_vec_init): Use it.
      	* call.c (build_operator_new_call): Use it.
      
      From-SVN: r198731
      Jason Merrill committed
    • re PR c++/57068 (gcc prints warning "ref-qualifiers only available with… · b0f36e5e
      re PR c++/57068 (gcc prints warning "ref-qualifiers only available with -std=c++0x or -std=gnu++0x" for operator&)
      
      	PR c++/57068
      	* decl.c (grokdeclarator): Warn about ref-qualifiers here.
      	* parser.c (cp_parser_ref_qualifier_seq_opt): Not here.
      	* error.c (maybe_warn_cpp0x): s/0x/11/.
      
      From-SVN: r198730
      Jason Merrill committed
    • Daily bump. · 65424645
      From-SVN: r198729
      GCC Administrator committed
  3. 08 May, 2013 14 commits
  4. 07 May, 2013 8 commits
    • 2013-05-07 Han Shen <shenhan@google.com> · 12584362
          Added 2 missing files that should be included in the previous
          submitted patch trunk@r198699.
      
      From-SVN: r198700
      Han Shen committed
    • cfgexpand.c (record_or_union_type_has_array_p): New function. · f6bc1c4a
      2013-05-07  Han Shen  <shenhan@google.com>
      
          gcc/
          * cfgexpand.c (record_or_union_type_has_array_p): New function.
          (expand_used_vars): Add logic handling '-fstack-protector-strong'.
          * common.opt (fstack-protector-strong): New option.
          * doc/cpp.texi (__SSP_STRONG__): New builtin "__SSP_STRONG__".
          * doc/invoke.texi (Optimization Options): Document
          "-fstack-protector-strong".
          * gcc.c (LINK_SSP_SPEC): Add 'fstack-protector-strong'.
      
          gcc/testsuite/
          * gcc.dg/fstack-protector-strong.c: New.
          * g++.dg/fstack-protector-strong.C: New.
      
          gcc/c-family/
          * c-cppbuiltin.c (c_cpp_builtins): Added "__SSP_STRONG__=3".
      
      From-SVN: r198699
      Han Shen committed
    • unordered_base.h: New. · 703f140f
      2013-05-07  François Dumont  <fdumont@gcc.gnu.org>
      
      	* include/profile/unordered_base.h: New.
      	* include/Makefile.am: Add new profile header.
      	* include/Makefile.in: Regenerate.
      	* include/profile/impl/profiler.h
      	(__profcxx_inefficient_hash_is_on): New macro.
      	* include/profile/unordered_map (std::profile::unordered_map<>):
      	Use new _Unordered_profile base class. Use default implementations
      	for special functions.
      	(std::profile::unordered_multimap<>): Likewise.
      	* include/profile/unordered_set (std::profile::unordered_set<>):
      	Likewise.
      	(std::profile::unordered_multiset<>): Likewise.
      	* testsuite/23_containers/unordered_multiset/55043.cc: Fix
      	MoveOnly equality operator signature.
      
      From-SVN: r198698
      François Dumont committed
    • * config/mips/mips.c (mips_machine_reorg2): Return 0. · 4ffecb1f
      From-SVN: r198696
      Steven Bosscher committed
    • ira.c (update_equiv_regs): Add insn having equiv memory even if it is not lhs of the insn. · 5a107a0f
      2013-05-07  Vladimir Makarov  <vmakarov@redhat.com>
      
      	* ira.c (update_equiv_regs): Add insn having equiv memory even if
      	it is not lhs of the insn.
      	(setup_reg_equiv): Remove insn having equiv memory which it is not
      	lhs of the insn.
      	* lra-constraints.c (process_address): Try to improve generation
      	code for address base + disp.
      	(lra_constraints): Make correct the code for checking insn setting
      	up backward equivalence.  Remove insn only if it is in the init
      	insn list.
      	* lra-eliminations.c (update_reg_eliminate): Change return value.
      	(lra_eliminate): Use the result.
      
      From-SVN: r198695
      Vladimir Makarov committed
    • sse.md (ssescalarnummask): New mode attribute. · 3f5783ea
      	* config/i386/sse.md (ssescalarnummask): New mode attribute.
      	(PEXTR_MODE, PEXTR_MODEx): New mode iterators.
      	(*vec_extract<mode>): Merge from *sse4_1_pextrb_memory and
      	*sse4_1_pextrw_memory. Handle register target operands.
      	(*vec_extractv8hi_sse2): New pattern.
      	(*vec_extractv16qi_zext): Rename from *sse4_1_pextrb_<mode>.
      	(*vec_extractv8hi_zext): Rename from *sse2_pextrw_<mode>.
      	(*vec_extract<mode>_mem): New insn and split pattern.
      
      From-SVN: r198691
      Uros Bizjak committed
    • AArch64 testcases for ANDS instruction · 924af4dc
      From-SVN: r198684
      Ian Bolton committed
    • arm.c (arm_asan_shadow_offset): New function. · 8a5800b8
      2013-05-06  Christophe Lyon  <christophe.lyon@linaro.org>
      
      	gcc/
      	* config/arm/arm.c (arm_asan_shadow_offset): New function.
      	(TARGET_ASAN_SHADOW_OFFSET): Define.
      	* config/arm/linux-eabi.h (ASAN_CC1_SPEC): Define.
      	(LINUX_OR_ANDROID_CC): Add ASAN_CC1_SPEC.
      
      	libsanitizer/
      	* configure.tgt: Add ARM pattern.
      
      	testsuite/
      	* lib/target-supports.exp (check_effective_target_hw): New
      	function.
      	* c-c++-common/asan/clone-test-1.c: Call
      	check_effective_target_hw.
      	* c-c++-common/asan/rlimit-mmap-test-1.c: Likewise.
      	* c-c++-common/asan/heap-overflow-1.c: Update regexps to accept
      	possible decorations.
      	* c-c++-common/asan/null-deref-1.c: Likewise.
      	* c-c++-common/asan/stack-overflow-1.c: Likewise.
      	* c-c++-common/asan/strncpy-overflow-1.c: Likewise.
      	* c-c++-common/asan/use-after-free-1.c: Likewise.
      	* g++.dg/asan/deep-thread-stack-1.C: Likewise.
      	* g++.dg/asan/large-func-test-1.C: Likewise.
      
      From-SVN: r198683
      Christophe Lyon committed