1. 15 Nov, 2013 6 commits
  2. 14 Nov, 2013 34 commits
    • cfgexpand.c (defer_stack_allocation): When optimization is enabled... · ee2e8462
      	* cfgexpand.c (defer_stack_allocation): When optimization is enabled,
      	defer allocation of DECL_IGNORED_P variables at toplevel unless really
      	small.  Factorize size threshold computation from the existing one.
      	(expand_used_vars): Refine comment.
      
      From-SVN: r204830
      Eric Botcazou committed
    • Revert the last change · ed1fc0bc
      	* gnat.dg/specs/addr1.ads: Revert the last change.
      	* gnat.dg/specs/atomic1.ads: Likewise.
      
      From-SVN: r204829
      H.J. Lu committed
    • compiler: Use backend interface for comparisons. · 58c55a32
      From-SVN: r204827
      Ian Lance Taylor committed
    • Include gimple.h and pointer-set.h in gcc-interface/trans.c · 1726bd6e
      	* gcc-interface/trans.c: Include gimple.h and pointer-set.h.
      
      From-SVN: r204826
      H.J. Lu committed
    • tree-vectorizer.h (struct dr_with_seg_len): Remove the base address field as it… · 93bdc3ed
      tree-vectorizer.h (struct dr_with_seg_len): Remove the base address field as it can be obtained from dr.
      
      2013-11-14  Cong Hou  <congh@google.com>
      
          * tree-vectorizer.h (struct dr_with_seg_len): Remove the base
          address field as it can be obtained from dr.  Rename the struct.
          * tree-vect-data-refs.c (comp_dr_with_seg_len_pair): Consider
          steps of data references during sort.
          (vect_prune_runtime_alias_test_list): Adjust with the change to
          struct dr_with_seg_len.
          * tree-vect-loop-manip.c (vect_create_cond_for_alias_checks):
          Adjust with the change to struct dr_with_seg_len.
      
      2013-11-14  Cong Hou  <congh@google.com>
      
          * gcc.dg/vect/vect-alias-check.c: Update.
      
      From-SVN: r204822
      Cong Hou committed
    • basic-block.h (has_abnormal_outgoing_edge_p): Moved here from... · 5e94175f
      	* basic-block.h (has_abnormal_outgoing_edge_p): Moved here from...
      	* tree-inline.c (has_abnormal_outgoing_edge_p): Remove.
      	* gimple-ssa-isolate-paths.c: Include tree-cfg.h.
      	(find_implicit_erroneous_behaviour): If a block has abnormal outgoing
      	edges, then ignore it.  If the statement exhibiting erroneous
      	behaviour ends basic blocks, with the exception of GIMPLE_RETURNs,
      	then we can not optimize.
      	(find_explicit_erroneous_behaviour): Likewise.
      
      From-SVN: r204821
      Jeff Law committed
    • net: On Solaris use Darwin keepalive code. · 01ef823c
      From-SVN: r204819
      Ian Lance Taylor committed
    • re PR c++/57887 (nested non-type template parameters not declared in this scope) · 4699e99a
      /cp
      2013-11-14  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/57887
      	* parser.c (cp_parser_late_parsing_nsdmi): Call
      	maybe_begin_member_template_processing.
      	* pt.c (maybe_begin_member_template_processing): Handle NSDMIs.
      	(inline_needs_template_parms): Adjust.
      
      /testsuite
      2013-11-14  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/57887
      	* g++.dg/cpp0x/nsdmi-template3.C: New.
      	* g++.dg/cpp0x/nsdmi-template4.C: Likewise.
      
      From-SVN: r204818
      Paolo Carlini committed
    • runtime: Add netpoll code that uses select. · 03a231f7
      Required for Solaris support.
      
      From-SVN: r204817
      Ian Lance Taylor committed
    • runtime: Fix GC flag in when allocating memory from cgo. · 7d608db2
      From-SVN: r204815
      Ian Lance Taylor committed
    • gimplify-be.h: New file. · 18f429e2
      
      
      	* gimplify-be.h:  New file.  Add prototypes.
      	* gimplify.h: Don't include gimple.h.
      	(struct gimplify_hasher, struct gimplify_ctx, is_gimple_sizepos,
      	gimplify_hasher::hash, gimplify_hasher::equal): Relocate from gimple.h.
      	* gimple.h (struct gimplify_hasher, gimplify_hasher::hash,
      	gimplify_hasher::equal, struct gimplify_ctx, is_gimple_sizepos): Move
      	to gimplify.h.
      	(enum gsi_iterator_update): Move to gimple-iterator.h.
      	* gimple-iterator.h (enum gsi_iterator_update): Relocate from gimple.h.
      	* gimplify-be.c: New File.
      	(force_gimple_operand_1, force_gimple_operand,
      	force_gimple_operand_gsi_1, force_gimple_operand_gsi): Relocate from
      	gimplify.c.
      	* gimplify.c (force_gimple_operand_1, force_gimple_operand,
      	force_gimple_operand_gsi_1, force_gimple_operand_gsi): Move to
      	gimplify-be.c.
      	* Makefile.in (OBJS): Add gimplify-be.o
      	* asan.c: Include only gimplify.h, gimplify-be.h, and/or gimple.h as
      	required.
      	* cfgloopmanip.c: Likewise.
      	* cgraphunit.c: Likewise.
      	* cilk-common.c: Likewise.
      	* fold-const.c: Likewise.
      	* function.c: Likewise.
      	* gimple-expr.c: Likewise.
      	* gimple-fold.c: Likewise.
      	* gimple-ssa-strength-reduction.c: Likewise.
      	* gimple.c: Likewise.
      	* graphite-clast-to-gimple.c: Likewise.
      	* graphite-sese-to-poly.c: Likewise.
      	* ipa-prop.c: Likewise.
      	* ipa-split.c: Likewise.
      	* ipa.c: Likewise.
      	* langhooks.c: Likewise.
      	* omp-low.c: Likewise.
      	* sese.c: Likewise.
      	* stor-layout.c: Likewise.
      	* targhooks.c: Likewise.
      	* trans-mem.c: Likewise.
      	* tree-affine.c: Likewise.
      	* tree-cfg.c: Likewise.
      	* tree-cfgcleanup.c: Likewise.
      	* tree-complex.c: Likewise.
      	* tree-if-conv.c: Likewise.
      	* tree-inline.c: Likewise.
      	* tree-loop-distribution.c: Likewise.
      	* tree-nested.c: Likewise.
      	* tree-parloops.c: Likewise.
      	* tree-predcom.c: Likewise.
      	* tree-profile.c: Likewise.
      	* tree-scalar-evolution.c: Likewise.
      	* tree-sra.c: Likewise.
      	* tree-ssa-address.c: Likewise.
      	* tree-ssa-ccp.c: Likewise.
      	* tree-ssa-dce.c: Likewise.
      	* tree-ssa-forwprop.c: Likewise.
      	* tree-ssa-ifcombine.c: Likewise.
      	* tree-ssa-loop-im.c: Likewise.
      	* tree-ssa-loop-ivopts.c: Likewise.
      	* tree-ssa-loop-manip.c: Likewise.
      	* tree-ssa-loop-niter.c: Likewise.
      	* tree-ssa-loop-prefetch.c: Likewise.
      	* tree-ssa-loop-unswitch.c: Likewise.
      	* tree-ssa-math-opts.c: Likewise.
      	* tree-ssa-phiopt.c: Likewise.
      	* tree-ssa-phiprop.c: Likewise.
      	* tree-ssa-pre.c: Likewise.
      	* tree-ssa-propagate.c: Likewise.
      	* tree-ssa-reassoc.c: Likewise.
      	* tree-ssa-sccvn.c: Likewise.
      	* tree-ssa-strlen.c: Likewise.
      	* tree-ssa.c: Likewise.
      	* tree-switch-conversion.c: Likewise.
      	* tree-tailcall.c: Likewise.
      	* tree-vect-data-refs.c: Likewise.
      	* tree-vect-generic.c: Likewise.
      	* tree-vect-loop-manip.c: Likewise.
      	* tree-vect-loop.c: Likewise.
      	* tree-vect-patterns.c: Likewise.
      	* tree-vect-stmts.c: Likewise.
      	* tree.c: Likewise.
      	* tsan.c: Likewise.
      	* value-prof.c: Likewise.
      	* config/aarch64/aarch64.c: Likewise.
      	* config/alpha/alpha.c: Likewise.
      	* config/darwin.c: Likewise.
      	* config/i386/i386.c: Likewise.
      	* config/ia64/ia64.c: Likewise.
      	* config/mep/mep.c: Likewise.
      	* config/mips/mips.c: Likewise.
      	* config/rs6000/rs6000.c: Likewise.
      	* config/s390/s390.c: Likewise.
      	* config/sh/sh.c: Likewise.
      	* config/sparc/sparc.c: Likewise.
      	* config/spu/spu.c: Likewise.
      	* config/stormy16/stormy16.c: Likewise.
      	* config/tilegx/tilegx.c: Likewise.
      	* config/tilepro/tilepro.c: Likewise.
      	* config/xtensa/xtensa.c: Likewise.
      
      	* c/c-typeck.c: Include only gimplify.h and gimple.h as needed.
      	* c-family/c-common.c: Likewise.
      	* c-family/c-gimplify.c: Likewise.
      	* c-family/cilk.c: Likewise.
      
      	* cp/class.c: Include only gimplify.h and gimple.h as needed.
      	* cp/cp-gimplify.c: Likewise.
      	* cp/error.c: Likewise.
      	* cp/init.c: Likewise.
      	* cp/optimize.c: Likewise.
      	* cp/pt.c: Likewise.
      	* cp/semantics.c: Likewise.
      	* cp/tree.c: Likewise.
      	* cp/vtable-class-hierarchy.c: Likewise.
      
      	* fortran/trans-expr.c: Include only gimplify.h and gimple.h as needed.
      	* fortran/trans-openmp.c: Likewise.
      
      	* go/go-lang.c: Include only gimplify.h and gimple.h as needed.
      
      	* java/java-gimplify.c: Include only gimplify.h and gimple.h as needed.
      
      	* objc/objc-act.c: Include only gimplify.h and gimple.h as needed.
      
      From-SVN: r204812
      Andrew MacLeod committed
    • arc.md (doloop_begin_i): Remove extra alignment; use (.&-4) idiom. · 6495f8e6
      	* config/arc/arc.md (doloop_begin_i): Remove extra alignment;
      	use (.&-4) idiom.
      
      From-SVN: r204810
      Joern Rennecke committed
    • sysv4le.h (LINUX64_DEFAULT_ABI_ELFv2): Define. · 5b101aae
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      
      	* config/rs6000/sysv4le.h (LINUX64_DEFAULT_ABI_ELFv2): Define.
      
      From-SVN: r204809
      Ulrich Weigand committed
    • rs6000.h (RS6000_SAVE_AREA): Handle ABI_ELFv2. · b54214fe
      gcc/ChangeLog:
      
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      	    Alan Modra  <amodra@gmail.com>
      
      	* config/rs6000/rs6000.h (RS6000_SAVE_AREA): Handle ABI_ELFv2.
      	(RS6000_SAVE_TOC): Remove.
      	(RS6000_TOC_SAVE_SLOT): New macro.
      	* config/rs6000/rs6000.c (rs6000_parm_offset): New function.
      	(rs6000_parm_start): Use it.
      	(rs6000_function_arg_advance_1): Likewise.
      	(rs6000_emit_prologue): Use RS6000_TOC_SAVE_SLOT.
      	(rs6000_emit_epilogue): Likewise.
      	(rs6000_call_aix): Likewise.
      	(rs6000_output_function_prologue): Do not save/restore r11
      	around calling _mcount for ABI_ELFv2.
      
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      	    Alan Modra  <amodra@gmail.com>
      
      	* config/rs6000/rs6000-protos.h (rs6000_reg_parm_stack_space):
      	Add prototype.
      	* config/rs6000/rs6000.h (RS6000_REG_SAVE): Remove.
      	(REG_PARM_STACK_SPACE): Call rs6000_reg_parm_stack_space.
      	* config/rs6000/rs6000.c (rs6000_parm_needs_stack): New function.
      	(rs6000_function_parms_need_stack): Likewise.
      	(rs6000_reg_parm_stack_space): Likewise.
      	(rs6000_function_arg): Do not replace BLKmode by Pmode when
      	returning a register argument.
      
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      	    Michael Gschwind  <mkg@us.ibm.com>
      
      	* config/rs6000/rs6000.h (FP_ARG_MAX_RETURN): New macro.
      	(ALTIVEC_ARG_MAX_RETURN): Likewise.
      	(FUNCTION_VALUE_REGNO_P): Use them.
      	* config/rs6000/rs6000.c (TARGET_RETURN_IN_MSB): Define.
      	(rs6000_return_in_msb): New function.
      	(rs6000_return_in_memory): Handle ELFv2 homogeneous aggregates.
      	Handle aggregates of up to 16 bytes for ELFv2.
      	(rs6000_function_value): Handle ELFv2 homogeneous aggregates.
      
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      	    Michael Gschwind  <mkg@us.ibm.com>
      
      	* config/rs6000/rs6000.h (AGGR_ARG_NUM_REG): Define.
      	* config/rs6000/rs6000.c (rs6000_aggregate_candidate): New function.
      	(rs6000_discover_homogeneous_aggregate): Likewise.
      	(rs6000_function_arg_boundary): Handle homogeneous aggregates.
      	(rs6000_function_arg_advance_1): Likewise.
      	(rs6000_function_arg): Likewise.
      	(rs6000_arg_partial_bytes): Likewise.
      	(rs6000_psave_function_arg): Handle BLKmode arguments.
      
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      	    Michael Gschwind  <mkg@us.ibm.com>
      
      	* config/rs6000/rs6000.h (AGGR_ARG_NUM_REG): Define.
      	* config/rs6000/rs6000.c (rs6000_aggregate_candidate): New function.
      	(rs6000_discover_homogeneous_aggregate): Likewise.
      	(rs6000_function_arg_boundary): Handle homogeneous aggregates.
      	(rs6000_function_arg_advance_1): Likewise.
      	(rs6000_function_arg): Likewise.
      	(rs6000_arg_partial_bytes): Likewise.
      	(rs6000_psave_function_arg): Handle BLKmode arguments.
      
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      
      	* config/rs6000/rs6000.c (machine_function): New member
      	r2_setup_needed.
      	(rs6000_emit_prologue): Set r2_setup_needed if necessary.
      	(rs6000_output_mi_thunk): Set r2_setup_needed.
      	(rs6000_output_function_prologue): Output global entry point
      	prologue and local entry point marker if needed for ABI_ELFv2.
      	Output -mprofile-kernel code here.
      	(output_function_profiler): Do not output -mprofile-kernel
      	code here; moved to rs6000_output_function_prologue.
      	(rs6000_file_start): Output ".abiversion 2" for ABI_ELFv2.
      
      	(rs6000_emit_move): Do not handle dot symbols for ABI_ELFv2.
      	(rs6000_output_function_entry): Likewise.
      	(rs6000_assemble_integer): Likewise.
      	(rs6000_elf_encode_section_info): Likewise.
      	(rs6000_elf_declare_function_name): Do not create dot symbols
      	or .opd section for ABI_ELFv2.
      
      	(rs6000_trampoline_size): Update for ABI_ELFv2 trampolines.
      	(rs6000_trampoline_init): Likewise.
      	(rs6000_elf_file_end): Call file_end_indicate_exec_stack
      	for ABI_ELFv2.
      
      	(rs6000_call_aix): Handle ELFv2 indirect calls.  Do not check
      	for function descriptors in ABI_ELFv2.
      
      	* config/rs6000/rs6000.md ("*call_indirect_aix<mode>"): Support
      	on ABI_AIX only, not ABI_ELFv2.
      	("*call_value_indirect_aix<mode>"): Likewise.
      	("*call_indirect_elfv2<mode>"): New pattern.
      	("*call_value_indirect_elfv2<mode>"): Likewise.
      
      	* config/rs6000/predicates.md ("symbol_ref_operand"): Do not
      	check for function descriptors in ABI_ELFv2.
      	("current_file_function_operand"): Likewise.
      
      	* config/rs6000/ppc-asm.h [__powerpc64__ && _CALL_ELF == 2]:
      	(toc): Undefine.
      	(FUNC_NAME): Define ELFv2 variant.
      	(JUMP_TARGET): Likewise.
      	(FUNC_START): Likewise.
      	(HIDDEN_FUNC): Likewise.
      	(FUNC_END): Likeiwse.
      
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      
      	* config.gcc [powerpc*-*-* | rs6000-*-*]: Support --with-abi=elfv1
      	and --with-abi=elfv2.
      	* config/rs6000/option-defaults.h (OPTION_DEFAULT_SPECS): Add "abi".
      	* config/rs6000/rs6000.opt (mabi=elfv1): New option.
      	(mabi=elfv2): Likewise.
      	* config/rs6000/rs6000-opts.h (enum rs6000_abi): Add ABI_ELFv2.
      	* config/rs6000/linux64.h (DEFAULT_ABI): Do not hard-code to AIX_ABI
      	if !RS6000_BI_ARCH.
      	(ELFv2_ABI_CHECK): New macro.
      	(SUBSUBTARGET_OVERRIDE_OPTIONS): Use it to decide whether to set
      	rs6000_current_abi to ABI_AIX or ABI_ELFv2.
      	(GLIBC_DYNAMIC_LINKER64): Support ELFv2 ld.so version.
      	* config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Predefine
      	_CALL_ELF and __STRUCT_PARM_ALIGN__ if appropriate.
      
      	* config/rs6000/rs6000.c (rs6000_debug_reg_global): Handle ABI_ELFv2.
      	(debug_stack_info): Likewise.
      	(rs6000_file_start): Treat ABI_ELFv2 the same as ABI_AIX.
      	(rs6000_legitimize_tls_address): Likewise.
      	(rs6000_conditional_register_usage): Likewise.
      	(rs6000_emit_move): Likewise.
      	(init_cumulative_args): Likewise.
      	(rs6000_function_arg_advance_1): Likewise.
      	(rs6000_function_arg): Likewise.
      	(rs6000_arg_partial_bytes): Likewise.
      	(rs6000_output_function_entry): Likewise.
      	(rs6000_assemble_integer): Likewise.
      	(rs6000_savres_strategy): Likewise.
      	(rs6000_stack_info): Likewise.
      	(rs6000_function_ok_for_sibcall): Likewise.
      	(rs6000_emit_load_toc_table): Likewise.
      	(rs6000_savres_routine_name): Likewise.
      	(ptr_regno_for_savres): Likewise.
      	(rs6000_emit_prologue): Likewise.
      	(rs6000_emit_epilogue): Likewise.
      	(rs6000_output_function_epilogue): Likewise.
      	(output_profile_hook): Likewise.
      	(output_function_profiler): Likewise.
      	(rs6000_trampoline_size): Likewise.
      	(rs6000_trampoline_init): Likewise.
      	(rs6000_elf_output_toc_section_asm_op): Likewise.
      	(rs6000_elf_encode_section_info): Likewise.
      	(rs6000_elf_reloc_rw_mask): Likewise.
      	(rs6000_elf_declare_function_name): Likewise.
      	(rs6000_function_arg_boundary): Treat ABI_ELFv2 the same as ABI_AIX,
      	except that rs6000_compat_align_parm is always assumed false.
      	(rs6000_gimplify_va_arg): Likewise.
      	(rs6000_call_aix): Update comment.
      	(rs6000_sibcall_aix): Likewise.
      	* config/rs6000/rs6000.md ("tls_gd_aix<TLSmode:tls_abi_suffix>"):
      	Treat ABI_ELFv2 the same as ABI_AIX.
      	("*tls_gd_call_aix<TLSmode:tls_abi_suffix>"): Likewise.
      	("tls_ld_aix<TLSmode:tls_abi_suffix>"): Likewise.
      	("*tls_ld_call_aix<TLSmode:tls_abi_suffix>"): Likewise.
      	("load_toc_aix_si"): Likewise.
      	("load_toc_aix_di"): Likewise.
      	("call"): Likewise.
      	("call_value"): Likewise.
      	("*call_local_aix<mode>"): Likewise.
      	("*call_value_local_aix<mode>"): Likewise.
      	("*call_nonlocal_aix<mode>"): Likewise.
      	("*call_value_nonlocal_aix<mode>"): Likewise.
      	("*call_indirect_aix<mode>"): Likewise.
      	("*call_value_indirect_aix<mode>"): Likewise.
      	("sibcall"): Likewise.
      	("sibcall_value"): Likewise.
      	("*sibcall_aix<mode>"): Likewise.
      	("*sibcall_value_aix<mode>"): Likewise.
      	* config/rs6000/predicates.md ("symbol_ref_operand"): Likewise.
      	("current_file_function_operand"): Likewise.
      
      gcc/testsuite/ChangeLog:
      
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      
      	* gcc.target/powerpc/ppc64-abi-1.c (stack_frame_t): Remove
      	compiler and linker field if _CALL_ELF == 2.
      	* gcc.target/powerpc/ppc64-abi-2.c (stack_frame_t): Likewise.
      	* gcc.target/powerpc/ppc64-abi-dfp-1.c (stack_frame_t): Likewise.
      	* gcc.dg/stack-usage-1.c (SIZE): Update value for _CALL_ELF == 2.
      
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      
      	* gcc.target/powerpc/ppc64-abi-dfp-1.c (FUNC_START): New macro.
      	(WRAPPER): Use it.
      	* gcc.target/powerpc/no-r11-1.c: Skip on powerpc_elfv2.
      	* gcc.target/powerpc/no-r11-2.c: Skip on powerpc_elfv2.
      	* gcc.target/powerpc/no-r11-3.c: Skip on powerpc_elfv2.
      
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      
      	* lib/target-supports.exp (check_effective_target_powerpc_elfv2):
      	New function.
      	* gcc.target/powerpc/pr57949-1.c: Disable for powerpc_elfv2.
      	* gcc.target/powerpc/pr57949-2.c: Likewise.
      
      libgcc/ChangeLog:
      
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      	    Alan Modra  <amodra@gmail.com>
      
      	* config/rs6000/linux-unwind.h (TOC_SAVE_SLOT): Define.
      	(frob_update_context): Use it.
      
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      	    Alan Modra  <amodra@gmail.com>
      
      	* config/rs6000/tramp.S [__powerpc64__ && _CALL_ELF == 2]:
      	(trampoline_initial): Provide ELFv2 variant.
      	(__trampoline_setup): Likewise.
      
      	* config/rs6000/linux-unwind.h (frob_update_context): Do not
      	check for AIX indirect function call sequence if _CALL_ELF == 2.
      
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      	    Alan Modra  <amodra@gmail.com>
      
      	* config/rs6000/linux-unwind.h (get_regs): Do not support
      	old kernel versions if _CALL_ELF == 2.
      	(frob_update_context): Do not support PLT stub variants only
      	generated by old linkers if _CALL_ELF == 2.
      
      libitm/ChangeLog:
      
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      
      	* config/powerpc/sjlj.S [__powerpc64__ && _CALL_ELF == 2]:
      	(FUNC): Define ELFv2 variant.
      	(END): Likewise.
      	(HIDDEN): Likewise.
      	(CALL): Likewise.
      	(BASE): Likewise.
      	(LR_SAVE): Likewise.
      
      libstdc++/ChangeLog:
      
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      
      	* scripts/extract_symvers.in: Ignore <localentry: > fields
      	in readelf --symbols output.
      
      
      Co-Authored-By: Alan Modra <amodra@gmail.com>
      Co-Authored-By: Michael Gschwind <mkg@us.ibm.com>
      
      From-SVN: r204808
      Ulrich Weigand committed
    • rs6000.c (rs6000_arg_partial_bytes): Simplify logic by making use of the fact… · 140f2c81
      rs6000.c (rs6000_arg_partial_bytes): Simplify logic by making use of the fact that for vector / floating point...
      
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      
      	* config/rs6000/rs6000.c (rs6000_arg_partial_bytes): Simplify logic
      	by making use of the fact that for vector / floating point arguments
      	passed both in VRs/FPRs and in the fixed parameter area, the partial
      	bytes mechanism is in fact not used.
      
      From-SVN: r204807
      Ulrich Weigand committed
    • rs6000.c (rs6000_psave_function_arg): New function. · 98eefff6
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      
      	* config/rs6000/rs6000.c (rs6000_psave_function_arg): New function.
      	(rs6000_finish_function_arg): Likewise.
      	(rs6000_function_arg): Use rs6000_psave_function_arg and
      	rs6000_finish_function_arg to handle both vector and floating
      	point arguments that are also passed in GPRs / the stack.
      
      From-SVN: r204806
      Ulrich Weigand committed
    • rs6000.c (USE_FP_FOR_ARG_P): Remove TYPE argument. · abc991e7
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      
      	* config/rs6000/rs6000.c (USE_FP_FOR_ARG_P): Remove TYPE argument.
      	(USE_ALTIVEC_FOR_ARG_P): Likewise.
      	(rs6000_darwin64_record_arg_advance_recurse): Update uses.
      	(rs6000_function_arg_advance_1):Likewise.
      	(rs6000_darwin64_record_arg_recurse): Likewise.
      	(rs6000_function_arg): Likewise.
      	(rs6000_arg_partial_bytes): Likewise.
      
      From-SVN: r204805
      Ulrich Weigand committed
    • rs6000.c (rs6000_option_override_internal): Replace "DEFAULT_ABI != ABI_AIX"… · 008e32c0
      rs6000.c (rs6000_option_override_internal): Replace "DEFAULT_ABI != ABI_AIX" test by testing for ABI_V4 or ABI_DARWIN.
      
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      
      	* config/rs6000/rs6000.c (rs6000_option_override_internal): Replace
      	"DEFAULT_ABI != ABI_AIX" test by testing for ABI_V4 or ABI_DARWIN.
      	(rs6000_savres_strategy): Likewise.
      	(rs6000_return_addr): Likewise.
      	(rs6000_emit_load_toc_table): Replace "DEFAULT_ABI != ABI_AIX" by
      	testing for ABI_V4 (since ABI_DARWIN is impossible here).
      	(rs6000_emit_prologue): Likewise.
      	(legitimate_lo_sum_address_p): Simplify DEFAULT_ABI test.
      	(rs6000_elf_declare_function_name): Remove duplicated test.
      	* config/rs6000/rs6000.md ("load_toc_v4_PIC_1"): Explicitly test
      	for ABI_V4 (instead of "DEFAULT_ABI != ABI_AIX" test).
      	("load_toc_v4_PIC_1_normal"): Likewise.
      	("load_toc_v4_PIC_1_476"): Likewise.
      	("load_toc_v4_PIC_1b"): Likewise.
      	("load_toc_v4_PIC_1b_normal"): Likewise.
      	("load_toc_v4_PIC_1b_476"): Likewise.
      	("load_toc_v4_PIC_2"): Likewise.
      	("load_toc_v4_PIC_3b"): Likewise.
      	("load_toc_v4_PIC_3c"): Likewise.
      	* config/rs6000/rs6000.h (RS6000_REG_SAVE): Simplify DEFAULT_ABI test.
      	(RS6000_SAVE_AREA): Likewise.
      	(FP_ARG_MAX_REG): Likewise.
      	(RETURN_ADDRESS_OFFSET): Likewise.
      	* config/rs6000/sysv.h (TARGET_TOC): Test for ABI_V4 instead
      	of ABI_AIX.
      	(SUBTARGET_OVERRIDE_OPTIONS): Likewise.
      	(MINIMAL_TOC_SECTION_ASM_OP): Likewise.
      
      From-SVN: r204804
      Ulrich Weigand committed
    • rs6000.c (rs6000_call_indirect_aix): Rename to ... · f90f960c
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      
      	* config/rs6000/rs6000.c (rs6000_call_indirect_aix): Rename to ...
      	(rs6000_call_aix): ... this.  Handle both direct and indirect calls.
      	Create call insn directly instead of via various gen_... routines.
      	Mention special registers used by the call in CALL_INSN_FUNCTION_USAGE.
      	(rs6000_sibcall_aix): New function.
      	* config/rs6000/rs6000.md (TOC_SAVE_OFFSET_32BIT): Remove.
      	(TOC_SAVE_OFFSET_64BIT): Likewise.
      	(AIX_FUNC_DESC_TOC_32BIT): Likewise.
      	(AIX_FUNC_DESC_TOC_64BIT): Likewise.
      	(AIX_FUNC_DESC_SC_32BIT): Likewise.
      	(AIX_FUNC_DESC_SC_64BIT): Likewise.
      	("call" expander): Call rs6000_call_aix.
      	("call_value" expander): Likewise.
      	("call_indirect_aix<ptrsize>"): Replace this pattern ...
      	("call_indirect_aix<ptrsize>_nor11"): ... and this pattern ...
      	("*call_indirect_aix<mode>"): ... by this insn pattern.
      	("call_value_indirect_aix<ptrsize>"): Replace this pattern ...
      	("call_value_indirect_aix<ptrsize>_nor11"): ... and this pattern ...
      	("*call_value_indirect_aix<mode>"): ... by this insn pattern.
      	("*call_nonlocal_aix32", "*call_nonlocal_aix64"): Replace by ...
      	("*call_nonlocal_aix<mode>"): ... this pattern.
      	("*call_value_nonlocal_aix32", "*call_value_nonlocal_aix64"): Replace
      	("*call_value_nonlocal_aix<mode>"): ... by this pattern.
      	("*call_local_aix<mode>"): New insn pattern.
      	("*call_value_local_aix<mode>"): Likewise.
      	("sibcall" expander): Call rs6000_sibcall_aix.
      	("sibcall_value" expander): Likewise.  Move earlier in file.
      	("*sibcall_nonlocal_aix<mode>"): Replace by ...
      	("*sibcall_aix<mode>"): ... this pattern.
      	("*sibcall_value_nonlocal_aix<mode>"): Replace by ...
      	("*sibcall_value_aix<mode>"): ... this pattern.
      	* config/rs6000/rs6000-protos.h (rs6000_call_indirect_aix): Remove.
      	(rs6000_call_aix): Add prototype.
      	(rs6000_sibcall_aix): Likewise.
      
      From-SVN: r204803
      Ulrich Weigand committed
    • Forgot to add file in last commit. · 4f883df1
      From-SVN: r204802
      Ulrich Weigand committed
    • re PR sanitizer/59122 (libsanitizer merge from upstream r191666 causes duplicate symbol errors) · 8c8b21e4
      	PR sanitizer/59122
      	* asan.c (asan_emit_stack_protection): Ensure -fsection-anchors
      	isn't confused by the artificial decl.
      
      From-SVN: r204801
      Jakub Jelinek committed
    • linux-unwind.h (ppc_fallback_frame_state): Correct location of CR save area for… · 13e0981a
      linux-unwind.h (ppc_fallback_frame_state): Correct location of CR save area for 64-bit little-endian systems.
      
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      	    Alan Modra  <amodra@gmail.com>
      
      	* config/rs6000/linux-unwind.h (ppc_fallback_frame_state): Correct
      	location of CR save area for 64-bit little-endian systems.
      
      
      Co-Authored-By: Alan Modra <amodra@gmail.com>
      
      From-SVN: r204800
      Ulrich Weigand committed
    • rs6000.c (rs6000_emit_prologue): Do not place a RTX_FRAME_RELATED_P marker on… · dc2faee1
      rs6000.c (rs6000_emit_prologue): Do not place a RTX_FRAME_RELATED_P marker on the UNSPEC_MOVESI_FROM_CR insn.
      
      ChangeLog:
      
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      
      	* config/rs6000/rs6000.c (rs6000_emit_prologue): Do not place a
      	RTX_FRAME_RELATED_P marker on the UNSPEC_MOVESI_FROM_CR insn.
      	Instead, add USEs of all modified call-saved CR fields to the
      	insn storing the result to the stack slot, and provide an
      	appropriate REG_FRAME_RELATED_EXPR for that insn.
      	* config/rs6000/rs6000.md ("*crsave"): New insn pattern.
      	* config/rs6000/predicates.md ("crsave_operation"): New predicate.
      
      testsuite/ChangeLog:
      
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      
      	* g++.dg/eh/ppc64-sighandle-cr.C: New test.
      
      From-SVN: r204799
      Ulrich Weigand committed
    • function.c (assign_parms): Use all.reg_parm_stack_space instead of re-evaluating… · 2e4ceca5
      function.c (assign_parms): Use all.reg_parm_stack_space instead of re-evaluating REG_PARM_STACK_SPACE...
      
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      	    Alan Modra  <amodra@gmail.com>
      
      	* function.c (assign_parms): Use all.reg_parm_stack_space instead
      	of re-evaluating REG_PARM_STACK_SPACE target macro.
      	(locate_and_pad_parm): New parameter REG_PARM_STACK_SPACE.  Use it
      	instead of evaluating target macro REG_PARM_STACK_SPACE every time.
      	(assign_parm_find_entry_rtl): Update call.
      	* calls.c (initialize_argument_information): Update call.
      	(emit_library_call_value_1): Likewise.
      	* expr.h (locate_and_pad_parm): Update prototype.
      
      Co-Authored-By: Alan Modra <amodra@gmail.com>
      
      From-SVN: r204798
      Ulrich Weigand committed
    • calls.c (store_unaligned_arguments_into_pseudos): Skip PARALLEL arguments. · a7973050
      2013-11-14  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
      
      	* calls.c (store_unaligned_arguments_into_pseudos): Skip PARALLEL
      	arguments.
      
      From-SVN: r204797
      Ulrich Weigand committed
    • go/build: Add all known gccgo architectures to list. · eb50be04
      From-SVN: r204796
      Ian Lance Taylor committed
    • rx.c (rx_mode_dependent_address_p): Allow offsets up to 16 bits. · eb1c879c
      * config/rx/rx.c (rx_mode_dependent_address_p): Allow offsets up
      to 16 bits.
      
      From-SVN: r204795
      DJ Delorie committed
    • libgo/go/go/build: use syslist.go from the gc stdlib. · 95729181
      If cmd/go is rebuilt using -compiler gccgo the version of go/build that is linked into that cmd/go will not function properly as the list of file suffixes know as operating systems or architectures is incorrect.
      
      From-SVN: r204794
      Ian Lance Taylor committed
    • tree-ssa-threadedge.c (thread_through_normal_block): Only push the… · 6eeef4cc
      tree-ssa-threadedge.c (thread_through_normal_block): Only push the EDGE_START_JUMP_THREAD marker if the jump threading path is empty.
      
      	* tree-ssa-threadedge.c (thread_through_normal_block): Only push
      	the EDGE_START_JUMP_THREAD marker if the jump threading path is
      	empty.
      
      From-SVN: r204793
      Jeff Law committed
    • Require fenv_exceptions in gcc.dg/torture/float128* tests · d39ebff1
      	* gcc.dg/torture/float128-cmp-invalid.c: Require fenv_exceptions.
      	* gcc.dg/torture/float128-div-underflow.c: Likewise.
      	* gcc.dg/torture/float128-extend-nan.c: Likewise.
      
      From-SVN: r204792
      Rainer Orth committed
    • ssa-vrp-thread-1.c: Fix target selector. · a4e84cb9
      2013-11-14  Richard Biener  <rguenther@suse.de>
      
      	* gcc.dg/tree-ssa/ssa-vrp-thread-1.c: Fix target selector.
      
      From-SVN: r204791
      Richard Biener committed
    • alloc_traits.h (__allow_copy_cons): Remove. · 8ed13e27
      	* include/bits/alloc_traits.h (__allow_copy_cons): Remove.
      	(__check_copy_constructible): Likewise.
      	* include/bits/unordered_map.h (unordered_map, unordered_multimap):
      	Do not derive from __check_copy_constructible.
      	* include/bits/unordered_set.h (unordered_set, unordered_multiset):
      	Likewise.
      	* testsuite/23_containers/unordered_map/55043.cc: It is no longer
      	necessary for is_copy_constructible to be correct to use nested
      	unordered containers.
      	* testsuite/23_containers/unordered_multimap/55043.cc: Likewise.
      	* testsuite/23_containers/unordered_set/55043.cc: Likewise.
      	* testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
      
      From-SVN: r204790
      Jonathan Wakely committed
    • XFAIL addr1.ads and atomic1.ads on x32 · e4603a75
      	* gnat.dg/specs/addr1.ads: XFAIL on x32.
      	* gnat.dg/specs/atomic1.ads: Likewise.
      
      From-SVN: r204789
      H.J. Lu committed