Commit Graph

125846 Commits

Author SHA1 Message Date
Diego Novillo 37ea0d87a3 Add missing function in 20_util/exchange/1.cc.
When this test is compiled at -O0, the compiler does not remove the
address comparison. This causes a link failure, since the body of f()
is missing.

	* testsuite/20_util/exchange/1.cc: Add missing function
	bodies.

From-SVN: r203629
2013-10-15 14:51:37 -04:00
Richard Sandiford 1602204161 tree-tailcall.c (find_tail_calls): Don't use tail-call recursion for built-in functions.
gcc/
2013-10-15  Richard Biener  <rguenther@suse.de>

	* tree-tailcall.c (find_tail_calls): Don't use tail-call recursion
	for built-in functions.

gcc/testsuite/
	* gcc.dg/torture/builtin-self.c: New file.

libgcc/
	* sync.c: Remove static aliases and define each function directly
	under its real name.

From-SVN: r203628
2013-10-15 18:24:30 +00:00
Zhenqiang Chen b114bfb455 tree-ssa-reassoc.c: Include rtl.h and tm_p.h.
* tree-ssa-reassoc.c: Include rtl.h and tm_p.h.
	(optimize_range_tests_1): New function,
	extracted from optimize_range_tests.
	(optimize_range_tests_xor): Similarly.
	(optimize_range_tests_diff): New function.
	(optimize_range_tests): Use optimize_range_tests_1.

	* gcc.dg/tree-ssa/reassoc-32.c: New test case.
	* gcc.dg/tree-ssa/reassoc-33.c: New test case.
	* gcc.dg/tree-ssa/reassoc-34.c: New test case.
	* gcc.dg/tree-ssa/reassoc-35.c: New test case.
	* gcc.dg/tree-ssa/reassoc-36.c: New test case.

From-SVN: r203627
2013-10-15 11:48:44 -06:00
Cong Hou 69b8f2f943 tree-vect-loop.c (vect_is_simple_reduction_1): Relax the requirement of the reduction pattern so that one operand of the ...
2013-10-15  Cong Hou  <congh@google.com>

        * tree-vect-loop.c (vect_is_simple_reduction_1): Relax the 
        requirement of the reduction pattern so that one operand of the 
        reduction operation can come from outside of the loop.

2013-10-15  Cong Hou  <congh@google.com>

        * gcc.dg/vect/vect-reduc-pattern-3.c: New test.

From-SVN: r203625
2013-10-15 13:17:43 -04:00
Paolo Carlini 09560e7f4d re PR c++/58707 ([C++11] A greater-than operator in square brackets should not end a template argument list)
/cp
2013-10-15  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58707
	* parser.c (cp_parser_postfix_open_square_expression): Set
	parser->greater_than_is_operator_p for the argument.

/testsuite
2013-10-15  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58707
	* g++.dg/cpp0x/pr58707.C: New.

From-SVN: r203624
2013-10-15 16:36:11 +00:00
Jeff Law a1b499a310 Move Martin's most recent entry into the right ChangeLog file
From-SVN: r203622
2013-10-15 09:52:37 -06:00
James Greenhalgh 8ff5a4e40b [ARM] [Neon types 10/10] Remove neon-schedgen.ml
gcc/
	* config/arm/neon-schedgen.ml: Remove.
	* config/arm/cortex-a9-neon.md: Remove comment regarding
	neon-schedgen.ml.

From-SVN: r203621
2013-10-15 15:41:37 +00:00
James Greenhalgh 52b69ad240 [ARM] [Neon types 9/10] Remove old neon types
gcc/
	* config/arm/types: Remove old neon types.

From-SVN: r203620
2013-10-15 15:37:23 +00:00
James Greenhalgh e7c6a556a1 [ARM] [Neon types 8/10] Cortex-A7 neon pipeline model
gcc/
	* config/arm/cortex-a7.md
	(cortex_a7_neon_type): New.
	(cortex_a7_neon_mul): Update for new types.
	(cortex_a7_neon_mla): Likewise.
	(cortex_a7_neon): Likewise.

From-SVN: r203619
2013-10-15 15:36:15 +00:00
James Greenhalgh 795dd8d566 [ARM] [Neon types 7/10] Cortex-A15 neon pipeline changes
* config/arm/cortex-a15-neon.md: Update pipeline model.

From-SVN: r203618
2013-10-15 15:35:05 +00:00
James Greenhalgh bc5e57e3a3 [ARM] [Neon types 6/10] Cortex-A9 neon pipeline changes
gcc/
	* config/arm/cortex-a8-neon.md (cortex_a9_neon_type): New.
	* config/arm/cortex-a8-neon.md: Update all pipeline units for
	new types.

From-SVN: r203617
2013-10-15 15:33:31 +00:00
James Greenhalgh 9deda8cb4f [ARM] [Neon types 5/10] Update Cortex-A8 pipeline model
gcc/
	* config/arm/cortex-a8-neon.md (cortex_a8_neon_type): New.
	* config/arm/cortex-a8-neon.md: Update all pipeline units.

From-SVN: r203616
2013-10-15 15:31:38 +00:00
James Greenhalgh 0f686aa981 [AArch64] [Neon types 4/10] Add type attributes to all simd insns
gcc/

	* config/aarch64/iterators.md (Vetype): Add SF and DF modes.
	(fp): New.
	* config/aarch64/aarch64-simd.md (neon_type): Remove.
	* config/aarch64/aarch64-simd.md: Add "type" attribute to all
	patterns.

From-SVN: r203614
2013-10-15 15:30:00 +00:00
James Greenhalgh f7379e5eb9 [ARM] [Neon types 3/10] Update Current type attributes to new Neon Types.
gcc/
	* config/arm/iterators.md (V_elem_ch): New.
	(q): Likewise.
	(VQH_type): Likewise.
	* config/arm/arm.md (is_neon_type): New.
	(conds): Use is_neon_type.
	(anddi3_insn): Update type attribute.
	(xordi3_insn): Likewise.
	(one_cmpldi2): Likewise.
	* gcc/config/arm/vfp.md (movhf_vfp_neon): Update type attribute.
	* gcc/config/arm/neon.md (neon_mov): Update type attributes for
	all patterns.

From-SVN: r203613
2013-10-15 15:28:04 +00:00
James Greenhalgh a9e66678ca [AArch64] [Neon types 2/10] Update Current type attributes to new Neon Types.
gcc/
	* config/aarch64/aarch64.md (movtf_aarch64): Update type attribute.
	(load_pair): Update type attribute.
	(store_pair): Update type attribute.
	* config/aarch64/iterators.md (q): New.

From-SVN: r203612
2013-10-15 15:26:15 +00:00
James Greenhalgh 20445ed6ad [ARM] [Neon Types 1/10] Add new types to describe Neon insns.
gcc/
	* config/arm/types.md: Add new types for Neon insns.

From-SVN: r203611
2013-10-15 15:24:29 +00:00
Tim Shen 96937d47ac re PR libstdc++/58737 (leak in std::regex_match)
2013-10-15  Tim Shen  <timshen91@gmail.com>

	PR libstdc++/58737
	* include/bits/regex_automaton.h (_Automaton<>::~_Automaton): Fix memory
	leak by adding it.
	* include/bits/regex_executor.h (_Executor<>::~_Executor): Likewise.

From-SVN: r203610
2013-10-15 15:01:44 +00:00
Alexander Ivchenko afb4ac68f0 sse.md (unspec): Add UNSPEC_RCP14...
* config/i386/sse.md (unspec): Add UNSPEC_RCP14, UNSPEC_RSQRT14,
	UNSPEC_FIXUPIMM, UNSPEC_SCALEF, UNSPEC_GETEXP, UNSPEC_GETMANT,
	UNSPEC_EXP2, UNSPEC_RCP28, UNSPEC_RSQRT28.
	(rcp14<mode>): New.
	(srcp14<mode>): Ditto.
	(rsqrt14<mode>): Ditto.
	(rsqrt14<mode>): Ditto.
	(avx512f_vmscalef<mode>): Ditto.
	(avx512f_scalef<mode>): Ditto.
	(avx512f_getexp<mode>): Ditto.
	(avx512f_sgetexp<mode>): Ditto.
	(avx512f_fixupimm<mode>): Ditto.
	(avx512f_sfixupimm<mode>): Ditto.
	(avx512f_rndscale<mode>): Ditto.
	(*avx512er_exp2<mode>): Ditto.
	(*avx512er_rcp28<mode>): Ditto.
	(avx512er_rsqrt28<mode>): Ditto.
	(avx512f_getmant<mode>): Ditto.
	(avx512f_getmant<mode>): Ditto.
	(avx512f_rndscale<mode>): Fix formatting.


Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
Co-Authored-By: Sergey Lega <sergey.s.lega@intel.com>

From-SVN: r203609
2013-10-15 14:33:34 +00:00
Martin Jambor 4cb1359729 ipa-utils.h (ipa_edge_within_scc): Declare.
2013-10-15  Martin Jambor  <mjambor@suse.cz>

	* ipa-utils.h (ipa_edge_within_scc): Declare.
	* ipa-cp.c (edge_within_scc): Moved...
	* ipa-utils.c (ipa_edge_within_scc): ...here.  Updated all callers.

From-SVN: r203607
2013-10-15 16:15:07 +02:00
Alexander Ivchenko 2e2206faab predicates.md (const_8_to_15_operand): New.
* config/i386/predicates.md (const_8_to_15_operand): New.
        (const_16_to_31_operand): Ditto.
        * config/i386/sse.md (V8FI): New.
        (V16FI): Ditto.
        (reduc_splus_v8df): Ditto.
        (reduc_splus_v16sf): Ditto.
        (avx512f_vextract<shuffletype>32x4_1): Ditto.
        (vec_extract_hi_<mode>): Ditto.
        (avx512f_vinsert<shuffletype>32x4_1): Ditto.
        (vec_set_lo_<mode>): Ditto.
        (vec_set_hi_<mode>): Ditto.
        (avx512f_shuf_<shuffletype>64x2_1): Ditto.
        (avx512f_shuf_<shuffletype>32x4_1): Ditto.
        (avx512f_pshufd_1): Ditto.
        (avx512f_broadcast<mode>): Ditto.
        (avx512f_broadcast<mode>): Ditto.
        (define_split): Split vec_extract_lo into move.
        (ssequartermode): Ditto.
        (ssedoublemode): Extened with wider modes.
        (vec_extract_lo_<mode>): Ditto.


Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
Co-Authored-By: Sergey Lega <sergey.s.lega@intel.com>

From-SVN: r203606
2013-10-15 13:54:52 +00:00
Alexander Ivchenko 0fe65b75fe predicates.md (register_or_constm1_operand): New.
* config/i386/predicates.md (register_or_constm1_operand): New.
        * config/i386/sse.md (unspec): Add UNSPEC_UNSIGNED_PCMP, UNSPEC_TESTM,
        UNSPEC_TESTNM, UNSPEC_VTERNLOG, UNSPEC_ALIGN, UNSPEC_CONFLICT,
        UNSPEC_MASKED_EQ, UNSPEC_MASKED_GT, UNSPEC_GATHER_PREFETCH,
        UNSPEC_SCATTER_PREFETCH
        (VI48_512): New.
        (avx512f_ucmp<mode>3): Ditto.
        (avx512f_vternlog<mode>): Ditto.
        (avx512f_align<mode>): Ditto.
        (<shift_insn><mode>3): Ditto.
        (avx512f_<rotate>v<mode>): Ditto.
        (avx512f_<rotate><mode>): Ditto.
        (avx512f_eq<mode>3): Ditto.
        (avx512f_eq<mode>3_1): Ditto.
        (avx512f_gt<mode>3): Ditto.
        (avx512f_testm<mode>3): Ditto.
        (avx512f_testnm<mode>3): Ditto.
        (avx512pf_gatherpf<mode>): Ditto.
        (*avx512pf_gatherpf<mode>_mask): Ditto.
        (*avx512pf_gatherpf<mode>): Ditto.
        (avx512pf_scatterpf<mode>): Ditto.
        (*avx512pf_scatterpf<mode>_mask): Ditto.
        (*avx512pf_scatterpf<mode>): Ditto.
        (avx512f_vec_dup_gpr<mode>): Ditto.
        (clz<mode>2): Ditto.
        (conflict<mode>): Ditto.
        (REDUC_SMINMAX_MODE): Extened with wider modes.
        (reduc_<code>_<mode>): Ditto.
        (vlshr<mode>3): Ditto.
        (vashl<mode>3): Ditto.


Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
Co-Authored-By: Sergey Lega <sergey.s.lega@intel.com>

From-SVN: r203605
2013-10-15 13:51:56 +00:00
Alexander Ivchenko ab931c7111 sse.md (unspec): Added UNSPEC_VPERMI2, UNSPEC_VPERMT2, UNSPEC_SCATTER.
* config/i386/sse.md (unspec): Added UNSPEC_VPERMI2, UNSPEC_VPERMT2,
        UNSPEC_SCATTER.
        (VI48F_512): New.
        (avx512fmaskmode): Ditto.
        (bcstscalarsuff): Ditto.
        (avx512f_blendm<mode>): Ditto.
        (cmp_imm_predicate): Ditto.
        (avx512f_cmp<mode>3): Ditto.
        (avx512f_vec_dup<mode>): Ditto.
        (avx512f_vec_dup_mem<mode>): Ditto.
        (avx512f_vpermi2var<mode>3): Ditto.
        (avx512f_vpermt2var<mode>3): Ditto.
        (vec_init<mode>): Ditto.
        (avx512f_gathersi<mode>): Ditto.
        (*avx512f_gathersi<mode>): Ditto.
        (*avx512f_gathersi<mode>_2): Ditto.
        (avx512f_gatherdi<mode>): Ditto.
        (*avx512f_gatherdi<mode>): Ditto.
        (*avx512f_gatherdi<mode>_2): Ditto.
        (avx512f_scattersi<mode>): Ditto.
        (*avx512f_scattersi<mode>): Ditto.
        (avx512f_scatterdi<mode>): Ditto.
        (*avx512f_scatterdi<mode>): Ditto.
        (sseintprefix): Extened with wider modes.
        (VEC_GATHER_IDXSI): Ditto.
        (VEC_GATHER_IDXDI): Ditto.
        (VEC_GATHER_SRCDI): Ditto.


Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
Co-Authored-By: Sergey Lega <sergey.s.lega@intel.com>

From-SVN: r203604
2013-10-15 13:49:55 +00:00
Matthew Gretton-Dann c9acb877bb Add A profile only multilib make file fragment.
2013-10-15  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>
	    Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

	* config/arm/t-aprofile: New file.
	* config.gcc: Handle --with-multilib-list option.


Co-Authored-By: Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>

From-SVN: r203603
2013-10-15 13:23:44 +00:00
Richard Biener fffda8d7a3 lto.c (hash_canonical_type): Split out from ...
2013-10-15  Richard Biener  <rguenther@suse.de>

	lto/
	* lto.c (hash_canonical_type): Split out from ...
	(iterative_hash_canonical_type): ... here.  Register types
	we recurse to.
	(gimple_canonical_type_hash): Adjust.
	(gimple_register_canonical_type_1): Split out from ...
	(gimple_register_canonical_type): ... here.  Cache computed
	hash value.
	(lto_register_canonical_types): Split into two modes,
	clearing and computing TYPE_CANONICAL.
	(lto_read_decls): Adjust.
	(read_cgraph_and_symbols): Do two passes over global trees,
	first clearing then computing TYPE_CANONICAL.

From-SVN: r203600
2013-10-15 11:13:04 +00:00
Arnaud Charlet 7569f6972e [multiple changes]
2013-10-15  Thomas Quinot  <quinot@adacore.com>

	* exp_pakd.adb (Expand_Packed_Element_Set,
	Expand_Packed_Element_Reference): Adjust for the case of packed
	arrays of reverse-storage-order types.

2013-10-15  Robert Dewar  <dewar@adacore.com>

	* sem_prag.adb: Minor reformatting.

2013-10-15  Ed Schonberg  <schonberg@adacore.com>

	* sem_attr.adb (Analyze_Attribute_Specification, case
	To_Address): If the expression is an identifier, do not modify
	its type; it will be converted when necessary, and the type of
	the expression must remain consistent with that of the entity
	for back-end consistency.

2013-10-15  Robert Dewar  <dewar@adacore.com>

	* sem_ch7.adb (Unit_Requires_Body): Add flag
	Ignore_Abstract_State (Analyze_Package_Specification): Enforce
	rule requiring Elaborate_Body if a non-null abstract state is
	specified for a library-level package.
	* sem_ch7.ads (Unit_Requires_Body): Add flag Ignore_Abstract_State.

From-SVN: r203598
2013-10-15 13:01:03 +02:00
Bernd Schmidt ecbda48438 Fix a miscompilation where a reload reg is reused after it has been clobbered.
* reload1.c (reloads_unique_chain_p): Ensure that r1 is the input for
	r2.

From-SVN: r203596
2013-10-15 10:36:03 +00:00
Arnaud Charlet ef163a0a63 [multiple changes]
2013-10-15  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_prag.adb (Analyze_Constituent): When
	a state acts as a constituent of another state, ensure that
	the said state has a Part_Of dependency in its corresponding
	aspect/pragma Abstract_State.

2013-10-15  Robert Dewar  <dewar@adacore.com>

	* par-ch4.adb (P_If_expression): Handle redundant ELSE cleanly.

2013-10-15  Thomas Quinot  <quinot@adacore.com>

	* atree.ads (New_Copy, Relocate_Node): Improve documentation
	(note that these subprograms reset Is_Overloaded).

2013-10-15  Thomas Quinot  <quinot@adacore.com>

	* checks.adb (Check_Needed): Handle the case where the test in
	the left operand of the short circuit is wrapped in a qualified
	expression, type conversion, or expression with actions.

2013-10-15  Thomas Quinot  <quinot@adacore.com>

	* sem_type.adb, sem_type.ads (Save_Interps): Also propagate
	Is_Overloaded to New_N, for consistency.

2013-10-15  Ed Schonberg  <schonberg@adacore.com>

	* a-tienau.adb (Put): Use file parameter to query values of
	current column and line length.

From-SVN: r203595
2013-10-15 12:33:29 +02:00
Arnaud Charlet 99f9794783 [multiple changes]
2013-10-15  Robert Dewar  <dewar@adacore.com>

	* sem_prag.adb, exp_ch11.adb, a-except-2005.adb, a-except-2005.ads:
	Minor reformatting.

2013-10-15  Eric Botcazou  <ebotcazou@adacore.com>

	* targparm.ads: Fix minor typo in comment.

2013-10-15  Ed Schonberg  <schonberg@adacore.com>

	* lib-xref.adb: handle full views that are derived from private
	types.
	* sem_util.adb (Build_Elaboration_Entity): Do nothing in ASIS
	mode: the elaboration entity is not in the source, and plays no
	role in semantic analysis.  Minor reformatting.

From-SVN: r203594
2013-10-15 12:29:47 +02:00
Arnaud Charlet b9ec846384 [multiple changes]
2013-10-15  Tristan Gingold  <gingold@adacore.com>

	* adaint.c (__gnat_get_executable_load_address): Remove AIX
	specific code.

2013-10-15  Ed Schonberg  <schonberg@adacore.com>

	* exp_aggr.adb (Aggr_Size_OK): Refine criteria to better handle
	large static aggregates with static record components, to avoid
	generating a large number of asignments.  Conversely, improve
	handling of aggregates initialized by a single association,
	which are most efficiently implemented with a loop.

2013-10-15  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_prag.adb (Analyze_Input_Item): Emit an
	error when the input item comes from the related package.

2013-10-15  Arnaud Charlet  <charlet@adacore.com>

	* exp_ch11.adb (Expand_Exception_Handlers): Restrict previous
	change.

From-SVN: r203593
2013-10-15 12:28:02 +02:00
Richard Biener 24f161fdda tree-loop-distribution.c (build_empty_rdg): Inline into single user.
2013-10-15  Richard Biener  <rguenther@suse.de>

	* tree-loop-distribution.c (build_empty_rdg): Inline into
	single user.
	(rdg_flag_vertex): Inline into single user.
	(rdg_flag_vertex_and_dependent): Likewise.
	(build_rdg_partition_for_vertex): Remove processed bitmap.
	(rdg_build_partitions): Simplify.

From-SVN: r203592
2013-10-15 10:21:32 +00:00
Richard Biener 5de989edfb tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Restructure forwarding through conversions and copies to avoid performing...
2013-10-15  Richard Biener  <rguenther@suse.de>

	* tree-ssa-forwprop.c (forward_propagate_addr_expr_1):
	Restructure forwarding through conversions and copies to
	avoid performing copy-propagation the wrong way.  Adjust
	recursion invocations.
	(forward_propagate_addr_expr): Add argument stating if we
	are recursing from a single-use.
	(ssa_forward_propagate_and_combine): Adjust.

From-SVN: r203591
2013-10-15 10:20:58 +00:00
Kyrylo Tkachov 7457605705 openmp-define-3.c: Move effective target check after other directives.
[gcc/testsuite/]
2013-10-15  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* c-c++-common/cpp/openmp-define-3.c: Move effective target check
	after other directives.

From-SVN: r203588
2013-10-15 08:32:17 +00:00
Tobias Burnus a728953555 Add missing file from previous commit r203586:
2013-10-15  Tobias Burnus  <burnus@net-b.de>
        PR fortran/58652
        * gfortran.dg/unlimited_polymorphic_11.f90: New.

From-SVN: r203587
2013-10-15 08:20:01 +02:00
Tobias Burnus 910ddd1808 re PR fortran/58652 (ICE with move_alloc and unlimited polymorphic)
2013-10-15  Tobias Burnus  <burnus@net-b.de>

        PR fortran/58652
        * trans-intrinsic.c (conv_intrinsic_move_alloc): Fix handling
        of CLASS(*) variables.

2013-10-15  Tobias Burnus  <burnus@net-b.de>

        PR fortran/58652
        * gfortran.dg/unlimited_polymorphic_11.f90: New.

From-SVN: r203586
2013-10-15 08:14:35 +02:00
GCC Administrator 961402d398 Daily bump.
From-SVN: r203582
2013-10-15 00:16:51 +00:00
Chris Manghane b93e0cfdd1 runtime: Don't clobber saved context when catching signal.
* go-gcc.cc (Gcc_backend::address_expression): New function.

From-SVN: r203579
2013-10-14 22:52:55 +00:00
Ian Lance Taylor be66a22638 Update Go testsuite to a copy of the Go 1.1.2 testsuite.
* go.test/go-test.exp (go-find-packages): New proc.
	(go-gc-tests): Skip stress and safe tests.  Skip *.dir
	subdirectories.  Do simple +build line matching.  Handle run with
	arguments.  Handle errorcheckdir and rundircmpout.  Use packages
	for rundir.  Remove special handling for bug191 and dwarf.

From-SVN: r203578
2013-10-14 21:24:30 +00:00
Ian Lance Taylor 8088e1beb2 runtime: Don't clobber saved context when catching signal.
From-SVN: r203577
2013-10-14 21:02:52 +00:00
Tobias Burnus f637ebc1e8 re PR fortran/58658 ([OOP] Pointer assignment to allocatable unlimited polymorphic accepted)
2013-10-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/58658
        * expr.c (gfc_check_vardef_context): Fix pointer diagnostic
        for CLASS(*).

2013-10-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/58658
        * gfortran.dg/unlimited_polymorphic_10.f90: New.

From-SVN: r203572
2013-10-14 19:26:17 +02:00
David Malcolm 47e0da377e Introduce gcc::dump_manager class
gcc/
	* dumpfile.h (gcc::dump_manager): New class, to hold state
	relating to dumpfile management.
	(get_dump_file_name): Remove in favor of method of dump_manager.
	(dump_initialized_p): Likewise.
	(dump_start): Likewise.
	(dump_finish): Likewise.
	(dump_switch_p): Likewise.
	(dump_register): Likewise.
	(get_dump_file_info): Likewise.
	* context.c (gcc::context::context): Construct the dump_manager
	instance.
	* context.h (gcc::context::get_dumps): New.
	(gcc::context::m_dumps): New.
	* coverage.c (coverage_init): Port to dump_manager API.
	* dumpfile.c (extra_dump_files): Convert to field of
	gcc::dump_manager.
	(extra_dump_files_in_use): Likewise.
	(extra_dump_files_alloced): Likewise.
	(gcc::dump_manager::dump_manager): New.
	(dump_register): Convert to...
	(gcc::dump_manager::dump_register): ...method, replacing
	function-static next_dump with m_next_dump field.
	(get_dump_file_info): Convert to...
	(gcc::dump_manager::get_dump_file_info): ...method.
	(get_dump_file_name): Convert to...
	(gcc::dump_manager::get_dump_file_name): ...method.
	(dump_start): Convert to...
	(gcc::dump_manager::dump_start): ...method.
	(dump_finish): Convert to...
	(gcc::dump_manager::dump_finish): ...method.
	(dump_begin): Replace body with...
	(gcc::dump_manager::dump_begin): ...new method.
	(dump_phase_enabled_p): Convert to...
	(gcc::dump_manager::dump_phase_enabled_p): ...method.
	(dump_phase_enabled_p): Convert to...
	(gcc::dump_manager::dump_phase_enabled_p): ...method.
	(dump_initialized_p):  Convert to...
	(gcc::dump_manager::dump_initialized_p): ...method.
	(dump_flag_name): Replace body with...
	(gcc::dump_manager::dump_flag_name): ...new method.
	(dump_enable_all): Convert to...
	(gcc::dump_manager::dump_enable_all): ...new method.
	(opt_info_enable_passes): Convert to...
	(gcc::dump_manager::opt_info_enable_passes): ...new method.
	(dump_switch_p_1): Convert to...
	(gcc::dump_manager::dump_switch_p_1): ...new method.
	(dump_switch_p):  Convert to...
	(gcc::dump_manager::dump_switch_p): ...new method.
	(opt_info_switch_p): Port to dump_manager API.
	(enable_rtl_dump_file): Likewise.
	* opts-global.c (handle_common_deferred_options): Port to new
	dump_manager API.
	* passes.c (pass_manager::finish_optimization_passes): Likewise.
	(pass_manager::register_one_dump_file): Likewise.
	(pass_manager::register_pass): Likewise.
	(pass_init_dump_file): Likewise.
	(pass_fini_dump_file): Likewise.
	* statistics.c (statistics_early_init): Likewise.

gcc/java/

	* lang.c (java_handle_option): Update for introduction of
	gcc::dump_manager.

From-SVN: r203569
2013-10-14 16:15:38 +00:00
Arnaud Charlet 811189d91a Complete previous change.
From-SVN: r203567
2013-10-14 16:38:00 +02:00
Richard Biener 1394237ec9 lto.c (gimple_canonical_types): Move out-of GC space.
2013-10-14  Richard Biener  <rguenther@suse.de>

	lto/
	* lto.c (gimple_canonical_types): Move out-of GC space.
	(canonical_type_hash_cache): Make a pointer-map.
	(num_canonical_type_hash_entries, num_canonical_type_hash_queries):
	New counters.
	(iterative_hash_canonical_type): Adjust.
	(read_cgraph_and_symbols): Likewise.
	(print_lto_report_1): Likewise.

From-SVN: r203566
2013-10-14 14:32:24 +00:00
Tristan Gingold 23e0b03aa6 trans.c: Synchronize declarations of other/all others between gigi and the runtime.
* gcc-interface/trans.c: Synchronize declarations of other/all others
	between gigi and the runtime.

From-SVN: r203565
2013-10-14 16:24:44 +02:00
Tristan Gingold 9f2a75d355 gigi.h (standard_datatypes): Add ADT_set_exception_parameter_decl
2013-10-14  Tristan Gingold  <gingold@adacore.com>
                                        
	* gcc-interface/gigi.h (standard_datatypes): Add
	ADT_set_exception_parameter_decl 
	(set_exception_parameter_decl): New macro.
	* gcc-interface/trans.c (gigi): Initialize set_exception_parameter_decl.
	(Exception_Handler_to_gnu_zcx): Initialize the choice parameter.

From-SVN: r203561
2013-10-14 16:02:14 +02:00
Arnaud Charlet 161c5cc509 [multiple changes]
2013-10-14  Robert Dewar  <dewar@adacore.com>

	* exp_attr.adb (Find_Stream_Subprogram): Optimize
	Storage_Array stream handling.
	(Find_Stream_Subprogram): Optimize Stream_Element_Array stream handling
	* rtsfind.ads: Add entry for Stream_Element_Array Add
	entries for RE_Storage_Array subprograms Add entries for
	RE_Stream_Element_Array subprograms
	* s-ststop.ads, s-ststop.adb: Add processing for System.Storage_Array.
	Add processing for Ada.Stream_Element_Array.

2013-10-14  Tristan Gingold  <gingold@adacore.com>

	* a-except-2005.ads, a-except-2005.adb:
	(Get_Exception_Machine_Occurrence): New function.
	* raise-gcc.c (__gnat_unwind_exception_size): New constant.

From-SVN: r203560
2013-10-14 15:53:02 +02:00
Robert Dewar 2590ef129b sem_res.adb: Minor fix to error message text.
2013-10-14  Robert Dewar  <dewar@adacore.com>

	* sem_res.adb: Minor fix to error message text.
	* errout.ads, erroutc.ads: Minor reformatting.
	* s-ststop.ads, s-stratt.ads: Clean up documentation of block IO
	mode for streams.
	* s-stratt-xdr.adb: Minor comment update.

From-SVN: r203559
2013-10-14 15:51:45 +02:00
Arnaud Charlet 43dbd3e338 [multiple changes]
2013-10-14  Robert Dewar  <dewar@adacore.com>

	* sem_aux.adb, sem_aux.ads, sem_prag.adb: Minor reformatting.

2013-10-14  Ed Schonberg  <schonberg@adacore.com>

	* sem_res.adb (Resolve_Actuals): Add error message for a
	subprogram with an in-out parameter when used in a predicate,
	to clarify subsequent error at the point of call.

From-SVN: r203558
2013-10-14 15:50:16 +02:00
Hristian Kirtchev 4248145849 sem_prag.adb (Is_Matching_Input): Consume a matching null input.
2013-10-14  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_prag.adb (Is_Matching_Input): Consume a matching null input.

From-SVN: r203557
2013-10-14 15:49:15 +02:00
Arnaud Charlet d12b19faee [multiple changes]
2013-10-14  Robert Dewar  <dewar@adacore.com>

	* freeze.adb (Freeze_Record): Don't give warning about packed
	and foreign convention.

2013-10-14  Ed Schonberg  <schonberg@adacore.com>

	* sem_aux.adb, sem_aux.ads (Package_Specification): New function, to
	replace the less efficient idiom Specification.
	(Unit_Declaration_Node (Pack_Id)), which handles library units and
	child units.
	* sem_ch3.adb, sem_ch10.adb, sem_prag.adb, sem_ch12.adb, sem_ch6.adb,
	exp_disp.adb, sem_cat.adb, exp_dist.adb: Use Package_Specification.

2013-10-14  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_attr.adb (Expand_Update_Attribute): Update the call to
	Process_Range_Update.
	(Process_Range_Update): Add new formal parameter Typ and associated
	comment on usage. Add local constant Index_Typ. Add a type conversion
	as part of the indexed component to ensure that the loop variable
	corresponds to the index type.

From-SVN: r203556
2013-10-14 15:47:38 +02:00
Arnaud Charlet 515490e000 [multiple changes]
2013-10-14  Tristan Gingold  <gingold@adacore.com>

	* a-exexpr-gcc.adb: Adjust comment.
	(Others_Value, All_Others_Value,
	Unhandled_Others_Value): Declare as Character to slightly reduce
	memory footprint.

2013-10-14  Robert Dewar  <dewar@adacore.com>

	* freeze.adb (Size_Known): Size is not known for packed record
	with aliased components

From-SVN: r203555
2013-10-14 15:43:51 +02:00