Commit Graph

120674 Commits

Author SHA1 Message Date
Jakub Jelinek 64548f3b79 Makefile.am (AM_CXXFLAGS): Remove -Wno-variadic-macros.
* tsan/Makefile.am (AM_CXXFLAGS): Remove -Wno-variadic-macros.
	* Makefile.am (SUBDIRS): Guard tsan addition with TSAN_SUPPORTED
	automake conditional instead of !MULTISUBDIR32.
	* configure.tgt: Set TSAN_SUPPORTED=yes for x86_64/i686-linux
	for 64-bit multilib.
	* configure.ac: Check for void * size, source in configure.tgt,
	define TSAN_SUPPORTED conditional instead of MULTILIBDIR32.
	* configure: Regenerated.
	* Makefile.in: Regenerated.
	* tsan/Makefile.in: Regenerated.

From-SVN: r193741
2012-11-23 01:31:54 +01:00
GCC Administrator 8e5038ffa4 Daily bump.
From-SVN: r193740
2012-11-23 00:18:03 +00:00
Wei Mi cd0be65c26 tsan: New directory.
libsanitizer/
	* tsan: New directory. Import tsan runtime from llvm.
	* configure.ac: Add 64 bits tsan build.
	* Makefile.am: Likewise.
	* configure: Regenerated.
	* Makefile.in: Likewise.

From-SVN: r193737
2012-11-22 22:03:11 +00:00
Dmitry Vyukov 32b4b7f53e builtins.def (DEF_SANITIZER_BUILTIN): Define tsan builtins.
2012-11-22  Dmitry Vyukov  <dvyukov@google.com>
	    Wei Mi  <wmi@google.com>

	* builtins.def (DEF_SANITIZER_BUILTIN): Define tsan builtins. 
	* sanitizer.def: Ditto. 
	* Makefile.in (tsan.o): Add tsan.o target. 
	(BUILTINS_DEF): Add sanitizer.def.
	* passes.c (init_optimization_passes): Add tsan passes.
	* tree-pass.h (register_pass_info): Ditto.
	* toplev.c (compile_file): Ditto. 
	* doc/invoke.texi: Document tsan related options.
	* gcc.c (LINK_COMMAND_SPEC): Add LIBTSAN_SPEC in link command if
	-fsanitize=thread.
	* tsan.c: New file about tsan.
	* tsan.h: Ditto.
	* common.opt: Add -fsanitize=thread.


Co-Authored-By: Wei Mi <wmi@google.com>

From-SVN: r193736
2012-11-22 21:56:58 +00:00
Uros Bizjak bdb6985c87 md.texi (RTL Templates Transformation): Use @pxref for cross-reference in parentheses.
* doc/md.texi (RTL Templates Transformation): Use @pxref for
	cross-reference in parentheses.

From-SVN: r193735
2012-11-22 22:44:24 +01:00
Uros Bizjak 31daf7a352 i386.md (*jcc<mode>_0_i387): Macroize insn from *fp_jcc_3_387 using X87MODEF mode iterator.
* config/i386/i386.md (*jcc<mode>_0_i387): Macroize insn
	from *fp_jcc_3_387 using X87MODEF mode iterator.
	(*jcc<mode>_0_r_i387): New.
	(*jccxf_i387): Ditto.
	(*jccxf_r_i387): Ditto.
	(*jcc<mode>_i387): Macroize insn from *fp_jcc_1_387 using
	MODEF mode iterator.
	(*jcc<mode>_r_i387): Macroize insn from *fp_jcc_1r_387 using
	MODEF mode iterator.
	(*jccu<mode>_i387): Macroize insn from *fp_jcc_2_387 using
	X87MODEF mode iterator.
	(*jccu<mode>_r_i387): Macroize insn from *fp_jcc_2r_387 using
	X87MODEF mode iterator.
	(*jcc{,u}<mode>_i387 splitters): Macroize splitters using
	X87MODEF mode iterator.
	(*jcc<X87MODEF:mode>_<SWI24:mode>_i387): Macroize insn
	from *fp_jcc_4_<mode>_387 using X87MODEF mode iterator.
	(*jcc<X87MODEF:mode>_<SWI24:mode>_r_i387): New.
	(*jcc<X87MODEF:mode>_<SWI24:mode>_i387 splitters): Macroize
	splitters using X87MODEF and SWI24 mode iterators.

From-SVN: r193734
2012-11-22 22:13:56 +01:00
Marcus Shawcroft f6d53c025b Remove documentation for AArch64 constraint 'Utf'.
2012-11-22  Marcus Shawcroft  <marcus.shawcroft@arm.com>

	* doc/md.texi (AArch64 family): Remove Utf.

From-SVN: r193732
2012-11-22 18:08:41 +00:00
Uros Bizjak 9220456e93 i386.md (FPCMP): New mode iterator.
* config/i386/i386.md (FPCMP): New mode iterator.
	(unord): New mode attribute.
	(*cmp<mode>_0_i387): Macroize insn from *cmpfp_0
	using X87MODEF mode iterator.
	(*cmp<mode>_0_cc_i387): Macroize insn from *cmpfp_0_cc using
	X87MODEF mode iterator.
	(*cmpxf_i387): Rename from *cmpfp_xf.
	(*cmpxf_cc_i387): Rename from *cmpfp_xf_cc.
	(*cmp<mode>_i387): Rename from *cmpfp_<mode>.
	(*cmp<mode>_cc_i387): Rename from *cmpfp_<mode>_cc.
	(*cmpu<mode>_i387): Macroize insn from *cmpfp_u using X87MODEF
	mode iterator.
	(*cmpu<mode>_cc_i387): Macroize insn from *cmpfp_u_cc using X87MODEF
	mode iterator.
	(*cmp<X87MODEF:mode>_<SWI24:mode>_i387): Macroize_insn from
	*cmpfp_<mode> using X87MODEF mode iterator.
	(*cmp<X87MODEF:mode>_<SWI24:mode>_cc_i387): Macroize_insn from
	*cmpfp_<mode>_cc using X87MODEF mode iterator.
	(*cmpi<FPCMP:unord><MODEF:mode>_mixed): Macroize insn from
	*cmpfp_i{,u}_mixed using FPCMP and MODEF mode iterators.
	(*cmpi<FPCMP:unord><MODEF:mode>_mixed): Macroize insn from
	*cmpfp_i{,u}_sse using FPCMP and MODEF mode iterators.
	(*cmpi<CCFPCMP:unord><X87MODEF:mode>_i387): Macroize insn from
	*cmpfp_i{,u}_387 using FPCMP and X87MODEF mode iterators.

From-SVN: r193731
2012-11-22 17:59:18 +01:00
Ian Bolton c16c63bb99 Implement bswaphi2 with rev16 (AArch64)
From-SVN: r193729
2012-11-22 15:50:30 +00:00
H.J. Lu 10dbfb3eb0 Issue an error for -static with fsanitize=address
PR sanitizer/55379
	* gcc.c (LINK_COMMAND_SPEC): Issue an error for -static with
	-fsanitize=address.

From-SVN: r193728
2012-11-22 07:17:21 -08:00
Jason Merrill 81ede53ad7 re PR c++/55137 (Unexpected static structure initialization)
PR c++/55137
	* semantics.c (verify_constant): Track overflow separately.
	(reduced_constant_expression_p): Don't check it here.
	(cxx_eval_constant_expression): Check it on CSTs.
	(cxx_eval_outermost_constant_expr): Treat overflows as non-constant
	at this point, but still return the folded version.
	(potential_constant_expression_1): Don't check overflow.

From-SVN: r193727
2012-11-22 09:42:00 -05:00
Jason Merrill 0c0cba54e8 call.c (extend_ref_init_temps_1): Recompute TREE_CONSTANT for the ADDR_EXPR.
* call.c (extend_ref_init_temps_1): Recompute TREE_CONSTANT for
	the ADDR_EXPR.

From-SVN: r193726
2012-11-22 09:41:52 -05:00
H.J. Lu 03d670c8cc Add STATIC_LIBASAN_LIBS for -static-libasan
* gcc.c (ADD_STATIC_LIBASAN_LIBS): New macro.  Defined
	with STATIC_LIBASAN_LIBS.
	(LIBASAN_SPEC): Add STATIC_LIBASAN_LIBS.
	* config/gnu-user.h (STATIC_LIBASAN_LIBS): New macro.

From-SVN: r193725
2012-11-22 06:10:47 -08:00
Kyrylo Tkachov 099f269349 arm.md (*arm_abssi2): Define predicable attribute.
2012-11-20  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/arm/arm.md (*arm_abssi2): Define predicable attribute.
	(*arm_neg_abssi2): Likewise.
	* config/arm/thumb2.md (*thumb2_abssi2): Likewise.
	(*thumb2_neg_abssi2): Likewise.

From-SVN: r193724
2012-11-22 13:29:56 +00:00
Paolo Carlini b51aa2e56e re PR c++/55432 (Too much constexpr makes the compiler crash)
2012-11-22  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/55432
	* g++.dg/cpp0x/constexpr-55432.C: New.

From-SVN: r193723
2012-11-22 10:23:03 +00:00
Jakub Jelinek 925e30ffcd * ree.c (struct ext_modified): Add ATTRIBUTE_PACKED.
From-SVN: r193722
2012-11-22 11:09:15 +01:00
Georg-Johann Lay e13d9d5aeb Adjust decimal point of signed accum mode to GCC default.
libgcc/
	Adjust decimal point of signed accum mode to GCC default.

	PR target/54222
	* config/avr/t-avr (LIB1ASMFUNCS): Add _fractsfsq _fractsfusq,
	_divqq_helper.
	* config/avr/lib1funcs-fixed.S (__fractqqsf, __fracthqsf)
	(__fractsasf, __fractsfha, __fractusqsf, __fractsfsa)
	(__mulha3, __mulsa3)
	(__divqq3, __divha3, __divsa3): Adjust to new position of
	decimal point of signed accum types. 
	
	(__mulusa3_round): New function.
	(__mulusa3): Use it.
	(__divqq_helper): New function.
	(__udivuqq3): Use it.

gcc/
	Adjust decimal point of signed accum mode to GCC default.

	PR target/54222
	* config/avr/avr-modes.def (HA, SA, DA): Remove mode adjustments.
	(TA): Move decimal point one bit to the right.
	* config/avr/avr.c (avr_out_fract): Rewrite.

From-SVN: r193721
2012-11-22 10:00:13 +00:00
Matthias Klose 5eb4cb4768 configure.tgt (i[3456]86): Handle -mx32 like -m64.
2012-11-21  Matthias Klose  <doko@ubuntu.com>

        * configure.tgt (i[3456]86): Handle -mx32 like -m64.

From-SVN: r193720
2012-11-22 00:47:58 +00:00
GCC Administrator bb62b356ac Daily bump.
From-SVN: r193719
2012-11-22 00:18:15 +00:00
David S. Miller 7cf8c994b6 atanq.c (atanq): Update from GLIBC.
2012-11-22  David S. Miller  <davem@davemloft.net>
            Tobias Burnus  <burnus@net-b.de>
            Joseph Myers  <joseph@codesourcery.com>

        * math/atanq.c (atanq): Update from GLIBC. Handle tiny and
        very large arguments properly.
        * math/j0q.c (y0q): Update from GLIBC. Avoid arithmetic
        underflow when 'x' is very small.
        * math/j1q.c (y1q): Ditto.
        * math/log1pq.c (log1pq): Update from GLIBC. Saturate
        nonzero exponents with absolute value below 0x1p-128 to
        +/- 0x1p-128.
        * math/powq.c (powq): Update from GLIBC. If xm1 is
        smaller than LDBL_EPSILON/2.0L, just return xm1.


Co-Authored-By: Joseph Myers <joseph@codesourcery.com>
Co-Authored-By: Tobias Burnus <burnus@net-b.de>

From-SVN: r193716
2012-11-22 00:55:29 +01:00
Matthias Klose e4689920bd t-linux: New file; define MULTIARCH_DIRNAME.
2012-11-21  Matthias Klose  <doko@ubuntu.com>

        * config/alpha/t-linux: New file; define MULTIARCH_DIRNAME.
        * config.gcc <alpha*-*-linux*> (tmake_file): Include alpha/t-linux.

From-SVN: r193715
2012-11-21 23:33:40 +00:00
Matthias Klose 75f4645f1d t-linux: Define MULTIARCH_DIRNAME.
2012-11-21  Matthias Klose  <doko@ubuntu.com>

        * config/m68k/t-linux: Define MULTIARCH_DIRNAME.

From-SVN: r193714
2012-11-21 23:01:30 +00:00
Matthias Klose a9011c94ab t-linux: New file; define MULTIARCH_DIRNAME.
2012-11-21  Matthias Klose  <doko@ubuntu.com>

        * config/ia64/t-linux: New file; define MULTIARCH_DIRNAME.
        * config.gcc <ia64*-*-linux*> (tmake_file): Include ia64/t-linux.

From-SVN: r193713
2012-11-21 22:57:54 +00:00
Vladimir Makarov 1966c91bf4 re PR rtl-optimization/55414 (spec2006 416.gamess compilation fails on LRA)
2012-11-21  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/55414
	* lra-constraints.c (Index): New function.
	(lra_constraints): Check dead equiv init insns.

From-SVN: r193712
2012-11-21 22:22:11 +00:00
Janus Weil ecdbf2cdfa re PR fortran/55352 (Erroneous gfortran warning of unused module variable when variable is only used in namelist)
2012-11-21  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/55352
	* trans-decl.c (generate_local_decl): Don't warn for explicitly imported
	but unused module variables which are in a namelist or common block.

2012-11-21  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/55352
	* gfortran.dg/namelist_76.f90: New.

From-SVN: r193711
2012-11-21 23:19:51 +01:00
Richard Henderson b6405ca836 alpha: Update to new extv/insv patterns
* config/alpha/alpha.md (extvmisaligndi): Rename from extv; update
        mode of operand 1; remove ancient extract_bit_field workaround.
        (insvmisaligndi): Rename from insv and update similarly.
        (extzvmisaligndi): Rename from extzv and update similarly; split out...
        (extzvdi): New expander.

From-SVN: r193710
2012-11-21 14:10:01 -08:00
Steve Ellcey 3196203294 re PR pch/55399 (pch tests fail on mips-mti-linux-gnu target)
2012-11-21  Steve Ellcey  <sellcey@mips.com>

	PR pch/55399
	* files.c (pch_open_file): Fix check for implicit_preinclude.

From-SVN: r193709
2012-11-21 21:28:30 +00:00
Jakub Jelinek 4c5ba8d0db re PR libgomp/55411 (OMP threads lose their OMP_WAIT_POLICY when another OMP thread gets destructed)
PR libgomp/55411
	* team.c (gomp_free_thread): Decrease gomp_managed_threads
	if pool had any threads_used.

From-SVN: r193706
2012-11-21 21:29:14 +01:00
H.J. Lu b4b401d23c Document __SANITIZE_ADDRESS__
* doc/cpp.texi: Document __SANITIZE_ADDRESS__.

From-SVN: r193705
2012-11-21 12:28:29 -08:00
H.J. Lu 70e0bf7b7c Define __SANITIZE_ADDRESS__ for -fsanitize=address
PR c/55397
	* cppbuiltin.c (define_builtin_macros_for_compilation_flags):
	Define __SANITIZE_ADDRESS__ for flag_asan.

From-SVN: r193704
2012-11-21 12:20:42 -08:00
Wei Mi dde19676a4 common.opt: Change faddress-sanitizer to fsanitize=address.
* common.opt: Change faddress-sanitizer to fsanitize=address.
	* toplev.c (process_options): Likewise.
	* gcc.c (LINK_COMMAND_SPEC): Likewise.
	* testsuite/lib/asan-dg.exp
	(check_effective_target_faddress_sanitizer): Likewise.
	(asan_init): Likewise.
	* doc/invoke.texi (-fsanitize=address): Document.

From-SVN: r193702
2012-11-21 17:46:00 +00:00
Martin Jambor eb20b7788f ipa-prop.h (struct ipa_node_params): Rename clone_for_all_contexts to do_clone_for_all_contexts.
2012-11-21  Martin Jambor  <mjambor@suse.cz>

	* ipa-prop.h (struct ipa_node_params): Rename clone_for_all_contexts to
	do_clone_for_all_contexts.  Update all uses.  New flag
	is_all_contexts_clone.
	* ipa-cp.c (cgraph_edge_brings_value_p): Also consider the case when cs
	leads to the clone for all contexts.
	(perhaps_add_new_callers): Likewise.
	(decide_whether_version_node): Remove bogus !plats->aggs test.  Set
	is_all_contexts_clone when cloning for all contexts.

	* testsuite/gcc.dg/ipa/ipcp-agg-7.c: New test.
	* testsuite/gcc.dg/ipa/ipcp-agg-8.c: Likewise.

From-SVN: r193701
2012-11-21 18:13:48 +01:00
Martin Jambor 7e9f2b6e35 re PR tree-optimization/55260 (ICE: in ipa_get_parm_lattices, at ipa-cp.c:263 with -O2 -fno-inline -fipa-cp-clone)
2012-11-21  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/55260
	* ipa-cp.c (intersect_aggregates_with_edge): New function.
	(find_aggregate_values_for_callers_subset): Part moved to the function
	above.  Call it.
	(cgraph_edge_brings_all_agg_vals_for_node): Reimplemented using
	intersect_aggregates_with_edge.

	* testsuite/g++.dg/torture/pr55260-2.C: New test.

From-SVN: r193700
2012-11-21 18:04:45 +01:00
Matthias Klose 3358fd4054 t-linux64: Add multiarch names in MULTILIB_OSDIRNAMES.
2012-11-21  Matthias Klose  <doko@ubuntu.com>

        * config/s390/t-linux64: Add multiarch names in MULTILIB_OSDIRNAMES.

From-SVN: r193699
2012-11-21 16:13:28 +00:00
Kostya Serebryany 5cba83a8a7 extend libsanitizer/README.gcc
From-SVN: r193698
2012-11-21 15:07:31 +00:00
Teresa Johnson aaaefb9d5a re PR gcov-profile/55417 (AddressSanitizer reports stack-buffer-overflow in profiling code)
PR gcov-profile/55417
	* profile.c (compute_working_sets): Check index first
	to avoid out-of-bounds array access.

From-SVN: r193697
2012-11-21 16:04:45 +01:00
Tobias Burnus 5a09d908bc re PR libquadmath/55225 (Fail to build lgammaq.c from trunk with mingw-w64)
2012-11-21  Tobias Burnus  <burnus@net-b.de>

        PR libquadmath/55225
        * math/lgammaq.c (lgammaq): Use local variable if
        math.h does not provide signgam.
        * acinclude.m4 (LIBQUAD_CHECK_MATH_H_SIGNGAM): New check.
        * configure.ac: Use it.
        * configure: Regenerate.
        * config.h.in: Regenerate.

From-SVN: r193695
2012-11-21 14:46:34 +01:00
Matthias Klose d80556b2fb t-aarch64-linux: Define MULTIARCH_DIRNAME for linux target.
2012-11-21  Matthias Klose  <doko@ubuntu.com>

        * config/aarch64/t-aarch64-linux: Define MULTIARCH_DIRNAME for
        linux target.

From-SVN: r193694
2012-11-21 13:39:27 +00:00
Uros Bizjak 015a26225a * config/i386/i386.md
(*float<SWI48x:mode><MODEF:mode>2_mixed_with_temp): Use SWI48 mode
	iterator instead of SWI48x.  Update insn constraint.
	(*float<SWI48x:mode><MODEF:mode>2_mixed_interunit): Ditto.
	(*float<SWI48x:mode><MODEF:mode>2_mixed_nointerunit): Ditto.
	(*float<SWI48x:mode><MODEF:mode>2_sse_with_temp): Ditto.
	(*float<SWI48x:mode><MODEF:mode>2_sse_interunit): Ditto.
	(*float<SWI48x:mode><MODEF:mode>2_sse_nointerunit): Ditto.
	(*float<SWI48x:mode><MODEF:mode>2 splitters): Ditto.
	(lrint<MODEF:mode><SWI48x:mode>2): Ditto.

From-SVN: r193692
2012-11-21 14:20:37 +01:00
Marcus Shawcroft c3e3d23548 Fix parallel build race.
gengtype-lex.c is built twice, once for BUILD and once for HOST, but
the BUILD flavour is missing a dependency on $(BCONFIG_H).

2012-11-21  Marcus Shawcroft  <marcus.shawcroft@arm.com>

	* Makefile.in (gengtype-lex.o): Add dependency on $(BCONFIG_H).

From-SVN: r193691
2012-11-21 13:15:12 +00:00
Martin Jambor deadf3adbd pr55238.c: Remove hidden attribute.
2012-11-21  Martin Jambor  <mjambor@suse.cz>

	* gcc.dg/torture/pr55238.c: Remove hidden attribute.

From-SVN: r193690
2012-11-21 13:27:33 +01:00
Ian Lance Taylor fabcaa8df3 libgo: Update to current version of master library.
From-SVN: r193688
2012-11-21 07:03:38 +00:00
Bin Cheng a51fb17f48 * config/arm/arm-cores.def (cortex-m1, cortex-m0)
(cortex-m0plus): Use v6m.
	* config/arm/arm-protos.h (tune_params): Add
	logical_op_non_short_circuit.
	* config/arm/arm.c (arm_slowmul_tune, arm_fastmul_tune)
	(arm_strongarm_tune, arm_xscale_tune, arm_9e_tune, arm_v6t2_tune)
	(arm_cortex_tune, arm_cortex_a15_tune, arm_cortex_a5_tune)
	(arm_cortex_a9_tune, arm_fa726te_tune): Set
	logical_op_non_short_circuit field.
	(arm_v6m_tune): New tune_params struct.
	* config/arm/arm.h (LOGICAL_OP_NON_SHORT_CIRCUIT): Define.

	* gcc.dg/tree-ssa/ssa-dom-thread-4.c: Skip on ARM Cortex-M0.
	* gcc.dg/tree-ssa/vrp47.c: Ditto.

From-SVN: r193687
2012-11-21 03:44:21 +00:00
Matthias Klose d757eae968 configure.ac: Substitute `with_cpu'.
2012-11-20  Matthias Klose  <doko@ubuntu.com>

        * configure.ac: Substitute `with_cpu'.
        * configure: Regenerate.
        * Makefile.in: Define `with_cpu'.
        * config/rs6000/t-linux64: Add multiarch names in MULTILIB_OSDIRNAMES.
        * config/rs6000/t-linux: New file; define MULTIARCH_DIRNAME.
        * config/rs6000/t-fprules (SOFT_FLOAT_CPUS): New macro. Add e300c2
        to the list.
        (MULTILIB_MATCHES_FLOAT): Define in terms of SOFT_FLOAT_CPUS.
        * config/rs6000/t-spe: Define MULTIARCH_DIRNAME.
        * config.gcc <powerpc-*-linux* | powerpc64-*-linux*> (tmake_file):
        Include rs6000/t-linux for 32bit non-biarch configurations.

From-SVN: r193686
2012-11-21 03:20:12 +00:00
Matthias Klose f4d9c89a86 install.texi: Move multiarch paragraph out of multilib documentation.
2012-11-20  Matthias Klose  <doko@ubuntu.com>

        * doc/install.texi: Move multiarch paragraph out of multilib
        documentation.

From-SVN: r193685
2012-11-21 00:53:45 +00:00
GCC Administrator b61e0a0e2b Daily bump.
From-SVN: r193684
2012-11-21 00:18:52 +00:00
Matthias Klose abb00bb351 t-linux-eabi: Define MULTIARCH_DIRNAME for linux target.
2012-11-20  Matthias Klose  <doko@ubuntu.com>

        * config/arm/t-linux-eabi: Define MULTIARCH_DIRNAME for linux target.

From-SVN: r193681
2012-11-20 23:10:31 +00:00
Richard Sandiford ec593a8fc3 stor-layout.c (bit_field_mode_iterator::next_mode): Fix signedness.
gcc/
	* stor-layout.c (bit_field_mode_iterator::next_mode): Fix signedness.

From-SVN: r193680
2012-11-20 22:49:41 +00:00
Vladimir Makarov 341e19df23 re PR rtl-optimization/55396 (-O2 -m32 -fno-omit-frame-pointer: internal compiler error: in check_rtl, at lra.c:2007)
2012-11-20  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/55396
	* lra-constraints.c (get_reload_reg): Change class if it is
	different from reg class.

From-SVN: r193678
2012-11-20 21:32:59 +00:00
Diego Novillo 6e1aa84836 Introduce vNULL to use as a nil initializer for vec<>.
This patch implements Jakub's idea of adding an empty struct with
a typecast operator that returns nil vectors.  This is useful to
shorten all the initializers when declaring vec instances or passing
nil vectors as function arguments.

2012-11-20  Diego Novillo  <dnovillo@google.com>
	    Jakub Jelinek  <jakub@redhat.com>

ChangeLog
	* vec.h (struct vnull): Declare.
	(vNULL): Declare.
	* vec.c (vNULL): Define.
	* bb-reorder.c: Replace all vec<T, A>() initializers with vNULL.
	* cfgexpand.c: Likewise.
	* cfgloop.c: Likewise.
	* cfgloopanal.c: Likewise.
	* cfgloopmanip.c: Likewise.
	* cgraph.c: Likewise.
	* config/c6x/c6x.c: Likewise.
	* config/i386/i386.c: Likewise.
	* df-core.c: Likewise.
	* dominance.c: Likewise.
	* dwarf2out.c: Likewise.
	* except.c: Likewise.
	* function.c: Likewise.
	* gcse.c: Likewise.
	* genautomata.c: Likewise.
	* graphds.c: Likewise.
	* graphite-scop-detection.c: Likewise.
	* graphite.c: Likewise.
	* haifa-sched.c: Likewise.
	* ifcvt.c: Likewise.
	* ipa-cp.c: Likewise.
	* ipa-inline-analysis.c: Likewise.
	* ipa-inline-transform.c: Likewise.
	* ipa-inline.c: Likewise.
	* ipa-prop.c: Likewise.
	* ipa-split.c: Likewise.
	* ipa-utils.c: Likewise.
	* ira-build.c: Likewise.
	* lto-cgraph.c: Likewise.
	* lto-streamer-in.c: Likewise.
	* lto-symtab.c: Likewise.
	* opts-global.c: Likewise.
	* passes.c: Likewise.
	* ree.c: Likewise.
	* sched-deps.c: Likewise.
	* sel-sched-ir.c: Likewise.
	* sel-sched-ir.h: Likewise.
	* sel-sched.c: Likewise.
	* stor-layout.c: Likewise.
	* trans-mem.c: Likewise.
	* tree-call-cdce.c: Likewise.
	* tree-cfg.c: Likewise.
	* tree-data-ref.c: Likewise.
	* tree-diagnostic.c: Likewise.
	* tree-eh.c: Likewise.
	* tree-loop-distribution.c: Likewise.
	* tree-predcom.c: Likewise.
	* tree-ssa-loop-im.c: Likewise.
	* tree-ssa-loop-ivcanon.c: Likewise.
	* tree-ssa-loop-manip.c: Likewise.
	* tree-ssa-loop-niter.c: Likewise.
	* tree-ssa-loop-prefetch.c: Likewise.
	* tree-ssa-math-opts.c: Likewise.
	* tree-ssa-phiopt.c: Likewise.
	* tree-ssa-pre.c: Likewise.
	* tree-ssa-propagate.c: Likewise.
	* tree-ssa-reassoc.c: Likewise.
	* tree-ssa-sccvn.c: Likewise.
	* tree-ssa-structalias.c: Likewise.
	* tree-ssa-threadedge.c: Likewise.
	* tree-ssa-uninit.c: Likewise.
	* tree-stdarg.c: Likewise.
	* tree-switch-conversion.c: Likewise.
	* tree-vect-data-refs.c: Likewise.
	* tree-vect-loop.c: Likewise.
	* tree-vect-slp.c: Likewise.
	* tree-vect-stmts.c: Likewise.
	* value-prof.c: Likewise.
	* varasm.c: Likewise.

ada/ChangeLog
	* gcc-interface/decl.c: Replace all vec<T,A>()
	initializers with vNULL.

cp/ChangeLog
	* name-lookup.c: Replace all vec<T, A>() initializers
	with vNULL.
	* semantics.c: Likewise.

fortran/ChangeLog
	* trans-openmp.c: Replace all vec<T, A>() initializers
	with vNULL.

lto/ChangeLog
	* lto.c: Replace all vec<T, A>() initializers with vNULL.

objc/ChangeLog
	* objc-act.c: Replace all vec<T, A>() initializers with vNULL.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>

From-SVN: r193677
2012-11-20 16:21:30 -05:00