* sanitizer_common/sanitizer_platform_limits_linux.cc: Temporarily
	ifdef out almost the whole source.
	* sanitizer_common/sanitizer_common_syscalls.inc: Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204726 138bc75d-0d04-0410-961f-82ee72b054a4
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204729 138bc75d-0d04-0410-961f-82ee72b054a4
2013-11-12  Rong Xu  <xur@google.com>

The patch re-factors libgcov.c to make it better modulelized.
It contains two pieces of work:
1. break gcov_exit() into the following structure:
   gcov_exit()
      --> gcov_exit_compute_summary()
      --> allocate_filename_struct()
          for gi_ptr in gcov_list
            --> gcov_exit_dump_gcov()
                   --> gcov_exit_open_gcda_file()
                   --> gcov_exit_merge_gcda ()
                   --> gcov_exit_merge_summary ()
                   --> gcov_exit_write_gcda ()
2. split libgcov.c into the following files:
     libgcov-profiler.c
     libgcov-merge.c
     libgcov-interface.c
     libgcov-driver.c
       libgcov-driver-system.c (source included into libgcov-driver.c)

	* libgcc/libgcov.c: Delete as part of re-factoring.
	* gcc/gcov-io.h (__gcov_indirect_call_profiler): Add the decl to
        avoid warning.
	* libgcc/libgcov-interface.c (init_mx): Moved from libgcov.c.
	(init_mx_once): Ditto.
	(__gcov_flush): Ditto.
	(__gcov_reset): Ditto.
	(__gcov_dump): Ditto.
	(__gcov_fork): Ditto.
	(__gcov_execl): Ditto.
	(__gcov_execlp): Ditto.
	(__gcov_execle): Ditto.
	(__gcov_execv): Ditto.
	(__gcov_execvp): Ditto.
	(__gcov_execve): Ditto.
        * libgcc/libgcov-merge.c (__gcov_merge_time_profile): Moved from
        libgcov.c.
	(__gcov_merge_add): Ditto.
	(__gcov_merge_ior): Ditto.
	(__gcov_merge_single): Ditto.
	(__gcov_merge_delta): Ditto.
	* libgcc/libgcov-profiler.c 
	(__gcov_interval_profiler): Ditto.
	(__gcov_pow2_profiler): Ditto.
	(__gcov_one_value_profiler_body): Ditto.
	(__gcov_one_value_profiler): Ditto.
	(__gcov_indirect_call_profiler): Ditto.
	(__gcov_indirect_call_profiler_v2): Ditto.
	(__gcov_time_profiler): Ditto.
	(__gcov_average_profiler): Ditto.
	(__gcov_ior_profiler): Ditto.
	* libgcc/libgcov-driver.c (set_gcov_list): New.
	(get_gcov_dump_complete): Ditto.
	(set_gcov_dump_complete):Ditto.
	(reset_gcov_dump_complete):Ditto.
	(gcov_exit_compute_summary): New function split from gcov_exit().
	(gcov_exit_merge_gcda): Ditto.
	(gcov_exit_write_gcda): Ditto.
	(gcov_exit_merge_summary): Ditto.
	(gcov_exit_dump_gcov): Ditto.
	(struct gcov_fn_buffer): Moved from libgcov.c
	(struct gcov_summary_buffer): Ditto.
	(free_fn_data): Ditto.
	(buffer_fn_data): Ditto.
	(crc32_unsigned): Ditto.
	(gcov_version): Ditto.
	(gcov_histogram_insert): Ditto.
	(gcov_compute_histogram): Ditto.
	(gcov_exit): Ditto.
	(gcov_clear): Ditto.
	(__gcov_init): Ditto.
        (this_prg): Make it file scope static variable.
        (all_prg): Ditto.
        (crc32): Ditto.
        (gi_filename): Ditto.
        (fn_buffer): Ditto.
        (sum_buffer): Ditto.
        (struct gcov_filename_aux): New types to store auxiliary information
        for gi_filename.
	* libgcc/libgcov-driver-system.c (gcov_error): New utility function.
	(allocate_filename_struct): New function split from gcov_exit().
	(gcov_exit_open_gcda_file): Ditto.
	(create_file_directory): Moved from libgcov.c
	* libgcc/Makefile.in: Change to build newly added files.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204730 138bc75d-0d04-0410-961f-82ee72b054a4
	* doc/extend.texi (Statement Exprs, Typeof): Discuss __auto_type.
	* ginclude/stdatomic.h (kill_dependency, atomic_store_explicit)
	(atomic_load_explicit, atomic_exchange_explicit)
	(atomic_compare_exchange_strong_explicit)
	(atomic_compare_exchange_weak_explicit): Use __auto_type to
	declare variable initialized with PTR argument.

c-family:
	* c-common.h (enum rid): Add RID_AUTO_TYPE.
	* c-common.c (c_common_reswords): Add __auto_type.
	(keyword_begins_type_specifier): Handle RID_AUTO_TYPE.

c:
	* c-tree.h (c_typespec_keyword): Add cts_auto_type.
	* c-decl.c (declspecs_add_type, finish_declspecs): Handle
	__auto_type.
	* c-parser.c (c_token_starts_typename, c_token_starts_declspecs)
	(c_parser_attribute_any_word, c_parser_objc_selector): Handle
	RID_AUTO_TYPE.
	(c_parser_declspecs): Take argument AUTO_TYPE_OK.
	(c_parser_declaration_or_fndef, c_parser_struct_declaration)
	(c_parser_declarator, c_parser_direct_declarator_inner)
	(c_parser_parameter_declaration, c_parser_type_name): All callers
	changed.
	(c_parser_declaration_or_fndef): Handle declarations with type
	determined from the initializer.

testsuite:
	* gcc.dg/atomic/stdatomic-vm.c, gcc.dg/auto-type-1.c,
	gcc.dg/auto-type-2.c: New tests.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204731 138bc75d-0d04-0410-961f-82ee72b054a4
	* gcc.dg/c11-complex-1.c: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204732 138bc75d-0d04-0410-961f-82ee72b054a4
	* config/i386/i386.c (ix86_print_operand): Support z-masking.
	* config/i386/predicate.md (const_0_to_4_operand): New.
	(const_0_to_5_operand): Ditto.
	* config/i386/sse.md (UNSPEC_COMPRESS): New.
	(UNSPEC_COMPRESS_STORE): Ditto.
	(UNSPEC_EXPAND): Ditto.
	(UNSPEC_EMBEDDED_ROUNDING): Ditto.
	(define_mode_attr ssescalarsize): Ditto.
	(avx512f_load<mode>_mask): Ditto.
	(avx512f_store<mode>_mask): Ditto.
	(avx512f_storedqu<mode>_mask): Ditto.
	(avx512f_vmcmp<mode>3_mask): Ditto.
	(avx512f_fmadd_<mode>_mask): Ditto.
	(avx512f_fmadd_<mode>_mask3): Ditto.
	(avx512f_fmsub_<mode>_mask): Ditto.
	(avx512f_fmsub_<mode>_mask3): Ditto.
	(avx512f_fnmadd_<mode>_mask): Ditto.
	(avx512f_fnmadd_<mode>_mask3): Ditto.
	(avx512f_fnmsub_<mode>_mask): Ditto.
	(avx512f_fnmsub_<mode>_mask3): Ditto.
	(avx512f_fmaddsub_<mode>_mask): Ditto.
	(avx512f_fmaddsub_<mode>_mask3): Ditto.
	(avx512f_fmsubadd_<mode>_mask): Ditto.
	(avx512f_fmsubadd_<mode>_mask3): Ditto.
	(vec_unpacku_float_lo_v16si): Ditto.
	(avx512f_vextract<shuffletype>32x4_mask): Ditto.
	(avx512f_vextract<shuffletype>32x4_1_maskm): Ditto.
	(avx512f_vextract<shuffletype>64x4_mask): Ditto.
	(vec_extract_lo_<mode>_maskm): Ditto.
	(vec_extract_hi_<mode>_maskm): Ditto.
	(avx512f_vternlog<mode>_mask): Ditto.
	(avx512f_shufps512_mask): Ditto.
	(avx512f_fixupimm<mode>_mask): Ditto.
	(avx512f_shufpd512_mask): Ditto.
	(avx512f_<code><pmov_src_lower><mode>2_mask): Ditto.
	(avx512f_<code>v8div16qi2_mask/trunc): Ditto.
	(*avx512f_<code>v8div16qi2_store_mask): Ditto.
	(ashr<mode>3<mask_name>): Ditto.
	(avx512f_vinsert<shuffletype>32x4_mask): Ditto.
	(avx512f_vinsert<shuffletype>64x4_mask): Ditto.
	(avx512f_shuf_<shuffletype>64x2_mask): Ditto.
	(avx512f_shuf_<shuffletype>32x4_mask): Ditto.
	(avx512f_pshufdv3_mask): Ditto.
	(avx512f_perm<mode>_mask): Ditto.
	(avx512f_vpermi2var<mode>3_mask): Ditto.
	(avx512f_vpermt2var<mode>3_mask): Ditto.
	(avx512f_compress<mode>_mask): Ditto.
	(avx512f_compressstore<mode>_mask): Ditto.
	(avx512f_expand<mode>_mask): Ditto.
	(<sse>_loadu<ssemodesuffix><avxsizesuffix><mask_name>): Extend
	to support masking.
	(avx512f_storeu<ssemodesuffix>512_mask): Ditto.
	(<plusminus_insn><mode>3<mask_name>): Ditto.
	(*<plusminus_insn><mode>3<mask_name>): Ditto.
	(mul<mode>3<mask_name>): Ditto.
	(*mul<mode>3<mask_name>): Ditto.
	(<sse>_div<mode>3<mask_name>): Ditto.
	(<mask_codefor>rcp14<mode><mask_name>): Ditto.
	(<sse>_sqrt<mode>2<mask_name>): Ditto.
	(<mask_codefor>rsqrt14<mode><mask_name>): Ditto.
	(<code><mode>3<mask_name>/smaxmin): Ditto.
	(*<code><mode>3_finite<mask_name>/smaxmin): Ditto.
	(*<code><mode>3<mask_name>/smaxmin): Ditto.
	(float<sseintvecmodelower><mode>2<mask_name>): Ditto.
	(ufloatv16siv16sf2<mask_name>): Ditto.
	(<mask_codefor>avx512f_fix_notruncv16sfv16si<mask_name>): Ditto.
	(<mask_codefor>avx512f_ufix_notruncv16sfv16si<mask_name>): Ditto.
	(<fixsuffix>fix_truncv16sfv16si2<mask_name>): Ditto.
	(float<si2dfmodelower><mode>2<mask_name>): Ditto.
	(ufloatv8siv8df<mask_name>): Ditto.
	(<mask_codefor>avx512f_cvtpd2dq512<mask_name>): Ditto.
	(avx512f_ufix_notruncv8dfv8si<mask_name>): Ditto.
	(<fixsuffix>fix_truncv8dfv8si2<mask_name>): Ditto.
	(<mask_codefor>avx512f_cvtpd2ps512<mask_name>): Ditto.
	(<sse2_avx_avx512f>_cvtps2pd<avxsizesuffix><mask_name>): Ditto.
	(<mask_codefor>avx512f_unpckhps512<mask_name>): Ditto.
	(<mask_codefor>avx512f_unpcklps512<mask_name>): Ditto.
	(<mask_codefor>avx512f_movshdup512<mask_name>): Ditto.
	(<mask_codefor>avx512f_movsldup512<mask_name>): Ditto.
	(<mask_codefor>avx512f_vextract<shuffletype>32x4_1<mask_name>): Ditto.
	(vec_extract_lo_<mode><mask_name>): Ditto.
	(vec_extract_hi_<mode><mask_name>): Ditto.
	(<mask_codefor>avx512f_unpckhpd512<mask_name>): Ditto.
	(avx512f_movddup512<mask_name>): Ditto.
	(avx512f_unpcklpd512<mask_name>): Ditto.
	(*avx512f_unpcklpd512<mask_name>): Ditto.
	(*avx512f_vmscalef<mode>): Ditto.
	(avx512f_scalef<mode><mask_name>): Ditto.
	(avx512f_getexp<mode><mask_name>): Ditto.
	(<mask_codefor>avx512f_align<mode><mask_name>): Ditto.
	(avx512f_rndscale<mode><mask_name>): Ditto.
	(avx512f_shufps512_1<mask_name>): Ditto.
	(avx512f_shufpd512_1<mask_name>): Ditto.
	(<plusminus_insn><mode>3<mask_name>): Ditto.
	(*<plusminus_insn><mode>3<mask_name>): Ditto.
	(vec_widen_umult_even_v16si<mask_name>): Ditto.
	(*vec_widen_umult_even_v16si<mask_name>): Ditto.
	(vec_widen_smult_even_v16si<mask_name>): Ditto.
	(*vec_widen_smult_even_v16si<mask_name>): Ditto.
	(mul<mode>3<mask_name>): Ditto.
	(*<sse4_1_avx2>_mul<mode>3<mask_name>): Ditto.
	(<shift_insn><mode>3<mask_name>): Ditto.
	(avx512f_<rotate>v<mode><mask_name>/rotate): Ditto.
	(avx512f_<rotate><mode><mask_name>): Ditto.
	(<code><mode>3<mask_name>/maxmin): Ditto.
	(*avx2_<code><mode>3<mask_name>/maxmin): Ditto.
	(<sse2_avx2>_andnot<mode>3<mask_name>): Ditto.
	(*andnot<mode>3<mask_name>): Ditto.
	(<mask_codefor><code><mode>3<mask_name>/any_logic): Ditto.
	(<mask_codefor>avx512f_interleave_highv16si<mask_name>): Ditto.
	(<mask_codefor>avx512f_interleave_lowv16si<mask_name>): Ditto.
	(<mask_codefor>avx512f_vinsert<shuffletype>32x4_1<mask_name>): Ditto.
	(vec_set_lo_<mode><mask_name>): Ditto.
	(vec_set_hi_<mode><mask_name>): Ditto.
	(avx512f_shuf_<shuffletype>64x2_1<mask_name>): Ditto.
	(avx512f_shuf_<shuffletype>32x4_1<mask_name>): Ditto.
	(avx512f_pshufd_1<mask_name>): Ditto.
	(<mask_codefor>abs<mode>2<mask_name>): Ditto.
	(<mask_codefor>avx512f_<code>v16qiv16si2<mask_name>): Ditto.
	(avx512f_<code>v16hiv16si2<mask_name>/any_extend): Ditto.
	(avx512f_<code>v8qiv8di2<mask_name>/any_extend): Ditto.
	(avx512f_<code>v8hiv8di2<mask_name>/any_extend): Ditto.
	(avx512f_<code>v8siv8di2<mask_name>/any_extend): Ditto.
	(avx512er_exp2<mode><mask_name>): Ditto.
	(<mask_codefor>avx512er_rcp28<mode><mask_name>): Ditto.
	(<mask_codefor>avx512er_rsqrt28<mode><mask_name>): Ditto.
	(<avx2_avx512f>_permvar<mode><mask_name>): Ditto.
	(<avx2_avx512f>_perm<mode>_1<mask_name>): Ditto.
	(<mask_codefor>avx512f_vec_dup<mode><mask_name>): Ditto.
	(<mask_codefor>avx512f_broadcast<mode><mask_name>/V16FI): Ditto.
	(<mask_codefor>avx512f_broadcast<mode><mask_name>/V8FI): Ditto.
	(<mask_codefor>avx512f_vec_dup_gpr<mode><mask_name>): Ditto.
	(<mask_codefor>avx512f_vec_dup_mem<mode><mask_name>): Ditto.
	(<sse2_avx_avx512f>_vpermil<mode><mask_name>/VF2): Ditto.
	(<sse2_avx_avx512f>_vpermil<mode><mask_name>/VF1): Ditto.
	(*<sse2_avx_avx512f>_vpermilp<mode><mask_name>): Ditto.
	(<sse2_avx_avx512f>_vpermilvar<mode>3<mask_name>): Ditto.
	(<avx2_avx512f>_ashrv<mode><mask_name>): Ditto.
	(<avx2_avx512f>_<shift_insn>v<mode><mask_name>): Ditto.
	(<mask_codefor>avx512f_vcvtph2ps512<mask_name>): Ditto.
	(<mask_codefor>avx512f_vcvtps2ph512<mask_name>): Ditto.
	(avx512f_getmant<mode><mask_name>): Ditto.
	(clz<mode>2<mask_name>): Ditto.
	(<mask_codefor>conflict<mode><mask_name>): Ditto.
	(*srcp14<mode>): Remove visibility.
	(*rsqrt14<mode>): Ditto.
	(*fma_fmsub_<mode>): Ditto.
	(*fma_fnmadd_<mode>): Ditto.
	(*avx512f_rndscale<mode>): Ditto.
	* config/i386/subst.md: New file.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204734 138bc75d-0d04-0410-961f-82ee72b054a4

	* config/arm/arm.c: Include aarch-cost-tables.h.
	(generic_extra_costs): Move from here...
	* config/arm/aarch-cost-tables.h: ... To here.  New file.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204735 138bc75d-0d04-0410-961f-82ee72b054a4
	PR ada/35998
	* dwarf2out.c (add_byte_size_attribute): Also use int_size_in_bytes
	for fields.  Do not add the attribute if the size is negative.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204736 138bc75d-0d04-0410-961f-82ee72b054a4
2013-11-13  Christophe Lyon  <christophe.lyon@linaro.org>

	* config/aarch64/aarch64.h (FRAME_GROWS_DOWNWARD): Define to 1.
	* config/aarch64/aarch64.c (aarch64_initial_elimination_offset):
	Update offset calculations.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204737 138bc75d-0d04-0410-961f-82ee72b054a4
2013-11-13  Marc Glisse  <marc.glisse@inria.fr>

	PR tree-optimization/59077
	* ipa-pure-const.c (better_state): Update *state.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204739 138bc75d-0d04-0410-961f-82ee72b054a4
2013-11-13  Richard Biener  <rguenther@suse.de>

	* gimple-streamer-out.c (output_gimple_stmt): Also wrap
	decls in ADDR_EXPR operands inside a MEM_REF and optimize that.
	* gimple-streamer-in.c (input_gimple_stmt): Remove now dead
	code dealing with type mismatches inside component reference
	chains.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204740 138bc75d-0d04-0410-961f-82ee72b054a4
2013-11-13  Jan-Benedict Glaw  <jbglaw@lug-owl.de>

	* config/c6x/c6x.c: Include "gimple-expr.h".

[BR]: http://gcc.gnu.org/ml/gcc-patches/2013-11/msg01411.html


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204741 138bc75d-0d04-0410-961f-82ee72b054a4
	* cfgexpand.c (expand_used_vars): Allocate space for partitions based
	on PARM_DECLs or RESULT_DECLs only if they are ignored for debug info
	or if optimization is enabled.
	* tree-ssa-coalesce.c (coalesce_ssa_name): If optimization is disabled,
	require that all the names based on a PARM_DECL or a RESULT_DECL that
	isn't ignored for debug info be coalesced.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204742 138bc75d-0d04-0410-961f-82ee72b054a4
Remove ada/ prefix

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204743 138bc75d-0d04-0410-961f-82ee72b054a4
2013-11-13  Cesar Philippidis  <cesar@codesourcery.com>

	    * lib/target-supports.exp
	    (check_effective_target_vect_cmdline_neeed): Add AArch64 to the list
	    of targets that do not need command line argument to enable SIMD.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204745 138bc75d-0d04-0410-961f-82ee72b054a4
2013-11-13  Tejas Belagod  <tejas.belagod@arm.com>

gcc/
	* config/aarch64/aarch64-simd.md (vec_set<mode>): Add w -> w option to
	the constraint.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204746 138bc75d-0d04-0410-961f-82ee72b054a4
2013-11-13  Tejas Belagod  <tejas.belagod@arm.com>

gcc/
	* config/aarch64/aarch64-simd.md (vec_extract): New.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204747 138bc75d-0d04-0410-961f-82ee72b054a4
2013-11-13  Martin Jambor  <mjambor@suse.cz>

	* cgraph.c (cgraph_get_create_node): Do what
	cgraph_get_create_real_symbol_node used to do.
	(cgraph_get_create_real_symbol_node): Removed.  Changed all users to
	call cgraph_get_create_node.
	* cgraph.h (cgraph_get_create_real_symbol_node): Removed.
	* lto-streamer-in.c (input_function): Call cgraph_get_node instead of
	cgraph_get_create_node.  Assert we get a node.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204748 138bc75d-0d04-0410-961f-82ee72b054a4
2013-11-13  Martin Jambor  <mjambor@suse.cz>

	* gcc.dg/ira-shrinkwrap-prep-1.c: Add lp64 to target requirements.
	* gcc.dg/ira-shrinkwrap-prep-2.c: Likewise.
	* gcc.dg/pr10474.c: Likewise.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204749 138bc75d-0d04-0410-961f-82ee72b054a4
2013-11-13  Marc Glisse  <marc.glisse@inria.fr>

	PR libstdc++/59087
	* include/ext/pod_char_traits.h: Uglify V, I and S.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204750 138bc75d-0d04-0410-961f-82ee72b054a4