Tobias Burnus [Tue, 28 Aug 2012 14:49:55 +0000 (16:49 +0200)]
 
re PR fortran/54382 (gfortran show_locus: Invalid read of size 4)
2012-08-28  Tobias Burnus  <burnus@net-b.de>
        PR fortran/54382
        * error.c (show_locus): Avoid out of bound access.
From-SVN: r190752
Tobias Burnus [Tue, 28 Aug 2012 14:49:15 +0000 (16:49 +0200)]
 
re PR fortran/54384 (gfortran memory leaks)
2012-08-28  Tobias Burnus  <burnus@net-b.de>
        PR fortran/54384
        * decl.c (match_data_constant): Add missing gfc_free_expr.
        (top_val_list): Remove always-true condition.
        * data.c (get_array_index, create_character_initializer):
        Free temporary expressions.
        (gfc_assign_data_value): Free expression when aborting.
From-SVN: r190751
Joey Ye [Tue, 28 Aug 2012 09:51:11 +0000 (09:51 +0000)]
 
ssa-dom-thread-3.c: Add -fno-short-enums.
	* gcc.dg/tree-ssa/ssa-dom-thread-3.c: Add -fno-short-enums.
From-SVN: r190745
Walter Lee [Tue, 28 Aug 2012 07:00:10 +0000 (07:00 +0000)]
 
Fix ChangeLog formatting.
From-SVN: r190741
Walter Lee [Tue, 28 Aug 2012 06:09:45 +0000 (06:09 +0000)]
 
Fix some typos and coding style violations.
	* confg/tilegx/tilegx.md: Fix code style.
	(*zero_extendsidi_truncdisi): Fix typo.
	* config/tilegx/tilegx.c: Fix code style.
	(tilegx_function_profiler): Fix typo.
From-SVN: r190739
Tobias Burnus [Tue, 28 Aug 2012 05:35:15 +0000 (07:35 +0200)]
 
re PR fortran/54384 (gfortran memory leaks)
2012-08-28  Tobias Burnus  <burnus@net-b.de>
        PR fortran/54384
        * symbol.c (gfc_copy_formal_args): Set also sym->formal_ns.
From-SVN: r190738
Walter Lee [Tue, 28 Aug 2012 05:25:35 +0000 (05:25 +0000)]
 
Add support for the -mcmodel=MODEL flag on TILE-Gx.
Add support for the -mcmodel=MODEL flag on TILE-Gx.  The models
supported are small and large.  In the small model (default), distance
for direct calls is limited to 500M in either direction.  PC-relative
addresses are 32 bits.  Absolute addresses support the full address
range.  In the large model, there is no limiation on call distance,
pc-relative addresses, or absolute addresses.
	* doc/invoke.texi: Document -mcmodel=small, -mcmodel=large.
	* config/tilegx/tilegx.h: Include config/tilegx/tilegx-opts.h.
	(CRT_CALL_STATIC_FUNCTION): Define.
	* config/tilegx/predicates.md (const_last_symbolic_operand):
	Handle UNSPEC_HW2_LAST_PCREL, UNSPEC_HW1_LAST_PLT_PCREL, and
	UNSPEC_HW2_LAST_PLT_PCREL.
	(const_symbolic_operand): Handle UNSPEC_HW1_PCREL,
	UNSPEC_HW0_PLT_PCREL, and UNSPEC_HW1_PLT_PCREL.
	* config/tilegx/tilegx.md (UNSPEC_MOV_LARGE_PCREL_STEP4): Define,
	and renumber the constants that follow.
	(UNSPEC_HW1_PCREL): Define, and renumber the constants that
	follow.
	(UNSPEC_HW0_PLT_PCREL): Define.
	(UNSPEC_HW1_PLT_PCREL): Define.
	(UNSPEC_HW1_LAST_PLT_PCREL): Define.
	(UNSPEC_HW2_LAST_PLT_PCREL): Define.
	(mov_large_pcrel_step1): Define.
	(mov_large_pcrel_step2): Define.
	(mov_large_pcrel_step3): Define.
	(mov_large_pcrel_step4): Define.
	(mov_plt_pcrel_step1): Define.
	(mov_plt_pcrel_step2): Define.
	(mov_plt_pcrel_step3): Define.
	(mov_plt_pcrel_step1_32bit): Define.
	(mov_plt_pcrel_step2_32bit): Define.
	(call): Handle tilegx_cmodel == CM_LARGE, CM_LARGE_PIC.
	(call_value): Ditto.
	* config/tilegx/tilegx.opt: Include config/tilegx/tilegx-opts.h.
	(mcmodel): New option.
	(enum cmodel): Define.
	(CM_SMALL): Define.
	(CM_LARGE): Define.
	* config/tilegx/tilegx-protos.h (tilegx_compute_pcrel_address):
	Declare.
	(tilegx_compute_pcrel_plt_address): Declare.
	* config/tilegx/tilegx.c (tilegx_option_override): Handle
	tilegx_cmodel.
	(tilegx_function_ok_for_sibcall): Ditto.
	(compute_pcrel_address): Rename to tilegx_compute_pcrel_address,
	and don't declare static.  Handle tilegx_cmodel.
	(tilegx_compute_pcrel_plt_address): Define.
	(tilegx_legitimize_pic_address): Rename calls to
	compute_pcrel_address.
	(tilegx_delegitimize_address): Handle UNSPEC_HW1_PCREL,
	UNSPEC_HW2_LAST_PCREL, UNSPEC_HW0_PLT_PCREL, UNSPEC_HW1_PLT_PCREL,
	UNSPEC_HW1_LAST_PLT_PCREL, UNSPEC_HW2_LAST_PLT_PCREL.
	(load_pic_register): Rename call to compute_pcrel_address.
	(tilegx_print_operand): Handle UNSPEC_HW1_PCREL,
	UNSPEC_HW2_LAST_PCREL, UNSPEC_HW0_PLT_PCREL, UNSPEC_HW1_PLT_PCREL,
	UNSPEC_HW1_LAST_PLT_PCREL, UNSPEC_HW2_LAST_PLT_PCREL.
From-SVN: r190737
GCC Administrator [Tue, 28 Aug 2012 00:17:15 +0000 (00:17 +0000)]
 
Daily bump.
From-SVN: r190736
Maxim Kuvyrkov [Mon, 27 Aug 2012 22:11:48 +0000 (22:11 +0000)]
 
sched-deps.c (add_dependence_list_and_free): Simplify.
	* sched-deps.c (add_dependence_list_and_free): Simplify.
	(flush_pending_list_and_free): Fix a hack that was fixing a hack.  Free
	lists when add_dependence_list_and_free doesn't free them.
From-SVN: r190733
Uros Bizjak [Mon, 27 Aug 2012 21:13:07 +0000 (23:13 +0200)]
 
re PR target/46254 (ICE: in find_reloads, at reload.c:3806 (unable to generate reloads) with -fPIC -mcmodel={medium|large} and __sync_val_compare_and_swap)
	PR target/46254
	* config/i386/predicates.md (cmpxchg8b_pic_memory_operand): Return
	true for TARGET_64BIT or !flag_pic.
	* config/i386/sync.md (*atomic_compare_and_swap_doubledi_pic): Remove.
	(atomic_compare_and_swap_double<mode>): Change operand 2 predicate
	to cmpxchg8b_pic_memory_operand.  Use DWIH mode iterator.
	Add insn constraint.  Conditionally emit xchg asm insns.
	(atomic_compare_and_swap<mode>): Update calls.  Check only
	cmpxchg8b_pic_memory_operand in memory address fixup.
	(DCASMODE): Remove.
	(CASHMODE): Rename from DCASHMODE.
	(doublemodesuffix): Update modes.
	(regprefix): New mode attribute.
	(unspecv) <UNSPECV_CMPXCHG_{1,2,3,4}>: Remove.
	<UNSPECV_CMPXCHG>: New constant.
	(atomic_compare_and_swap<mode>_1): Rename from
	atomic_compare_and_swap_single<mode>.  Update calls and
	unspec_volatile constants.
	(atomic_compare_and_swap<mode>_doubleword): Rename from
	atomic_compare_and_swap_double<mode>.  Update calls and
	unspec_volatile constants.
testsuite/ChangeLog:
	PR target/46254
	* gcc.target/i386/pr46254.c: New test.
From-SVN: r190732
Tobias Burnus [Mon, 27 Aug 2012 20:51:52 +0000 (22:51 +0200)]
 
re PR fortran/54384 (gfortran memory leaks)
2012-08-27  Tobias Burnus  <burnus@net-b.de>
        PR fortran/54384
        * resolve.c (gfc_resolve_character_operator): Free temporary
        variables.
        * trans-expr.c (gfc_conv_statement_function): Ditto.
From-SVN: r190731
Walter Lee [Mon, 27 Aug 2012 18:51:07 +0000 (18:51 +0000)]
 
Fix doc typo.
	* doc/md.texi (TILE-Gx): Fix typo.
From-SVN: r190729
Tobias Burnus [Mon, 27 Aug 2012 18:47:57 +0000 (20:47 +0200)]
 
re PR fortran/54384 (gfortran memory leaks)
2012-08-27  Tobias Burnus  <burnus@net-b.de>
        PR fortran/54384
        * dependency.c (check_section_vs_section): Use gfc_free_expr
        instead of free.
        * trans-intrinsic.c (conv_generic_with_optional_char_arg): Use
        gfc_free_symbol instead of free.
From-SVN: r190728
Walter Lee [Mon, 27 Aug 2012 18:35:39 +0000 (18:35 +0000)]
 
Fix a typo in the mcount function_profiler.
	* config/tilegx/tilegx.c (tilegx_function_profiler): Fix typo.
	config/tilepro/tilepro.c (tilepro_function_profiler): Ditto.
From-SVN: r190726
Walter Lee [Mon, 27 Aug 2012 18:16:34 +0000 (18:16 +0000)]
 
Stop trying to represent the bfins instruction with the insv pattern,
because it causes an extra copy when bfins reuses one of its inputs.
	* config/tilegx/tilegx.md (*bfins): Rename to insn_bfins.
	(insn_bfins): Delete.
From-SVN: r190724
Walter Lee [Mon, 27 Aug 2012 17:27:04 +0000 (17:27 +0000)]
 
Properly set the latency of atomic ops to the approximate latency of a remote memory operation.
Properly set the latency of atomic ops to the approximate latency of a
remote memory operation.
	* config/tilegx/sync.md (atomic_compare_and_swap_bare<mode>,
	atomic_exchange_bare<mode>,
	atomic_fetch_<fetchop_name>_bare<mode>): Set type to X1_remote.
	* config/tilegx/tilegx-generic.md (X1_remote): New
	insn_reservation.
	* config/tilegx/tilegx.md (type): Add X1_remove.
	(insn_cmpexch<four_if_si>, insn_exch<four_if_si>,
	insn_fetchadd<four_if_si>, insn_fetchaddgez<four_if_si>,
	insn_fetchand<four_if_si>, insn_fetchor<four_if_si>): Set type to
	X1_remote.
From-SVN: r190722
Andreas Schwab [Mon, 27 Aug 2012 16:35:05 +0000 (16:35 +0000)]
 
* gdbinit.in: Fix syntax of skip command.
From-SVN: r190721
Richard Sandiford [Mon, 27 Aug 2012 16:31:46 +0000 (16:31 +0000)]
 
ext_ins.c, [...]: Add NOMIPS16.
gcc/testsuite/
	* gcc.target/mips/ext_ins.c, gcc.target/mips/octeon-pop-2.c,
	gcc.target/mips/pr54240.c, gcc.target/mips/stack-1.c,
	gcc.target/mips/unaligned-1.c: Add NOMIPS16.
From-SVN: r190720
Richard Sandiford [Mon, 27 Aug 2012 16:31:29 +0000 (16:31 +0000)]
 
20020620-1.c, [...]: Tighten regexps.
gcc/testsuite/
	* gcc.target/mips/
20020620-1.c, gcc.target/mips/atomic-memory-2.c,
	gcc.target/mips/branch-2.c, gcc.target/mips/branch-3.c,
	gcc.target/mips/clear-cache-1.c, gcc.target/mips/const-anchor-1.c,
	gcc.target/mips/const-anchor-2.c, gcc.target/mips/dspr2-MULT.c,
	gcc.target/mips/dspr2-MULTU.c, gcc.target/mips/ext-1.c,
	gcc.target/mips/ext-2.c, gcc.target/mips/ext-3.c,
	gcc.target/mips/ext-4.c, gcc.target/mips/ext_ins.c,
	gcc.target/mips/fpcmp-1.c, gcc.target/mips/fpcmp-2.c,
	gcc.target/mips/mips16e-extends.c, gcc.target/mips/mips32-dsp.c,
	gcc.target/mips/mips32-dsp-type.c, gcc.target/mips/mips32r2-mxhc1.c,
	gcc.target/mips/mips-ps-5.c, gcc.target/mips/mips-ps-7.c,
	gcc.target/mips/mips-ps-type-2.c, gcc.target/mips/mips-ps-type.c,
	gcc.target/mips/movcc-1.c, gcc.target/mips/movcc-2.c,
	gcc.target/mips/movcc-3.c, gcc.target/mips/neg-abs-1.c,
	gcc.target/mips/neg-abs-2.c, gcc.target/mips/nmadd-1.c,
	gcc.target/mips/nmadd-2.c, gcc.target/mips/nmadd-3.c,
	gcc.target/mips/octeon-exts-7.c, gcc.target/mips/octeon-seq-4.c,
	gcc.target/mips/rsqrt-1.c, gcc.target/mips/rsqrt-2.c,
	gcc.target/mips/rsqrt-3.c, gcc.target/mips/sb1-1.c,
	gcc.target/mips/scc-4.c, gcc.target/mips/stack-1.c,
	gcc.target/mips/unaligned-1.c: Tighten regexps.
From-SVN: r190719
 
Richard Sandiford [Mon, 27 Aug 2012 16:27:50 +0000 (16:27 +0000)]
 
mips.exp: Use gcc-dg-runtest rather than dg-runtest.
gcc/testsuite/
	* gcc.target/mips/mips.exp: Use gcc-dg-runtest rather than dg-runtest.
	(mips_option_groups): Remove optimization.  Add various -f options.
	(mips-dg-options): Make -funroll-loops imply -funroll-all-loops
	and -pg imply -fno-omit-frame-pointer.
	* gcc.target/mips/abi-eabi32-long32.c: Remove optimization flag.
	* gcc.target/mips/abi-eabi32-long64.c: Likewise.
	* gcc.target/mips/abi-eabi64-long32.c: Likewise.
	* gcc.target/mips/abi-eabi64-long64.c: Likewise.
	* gcc.target/mips/abi-n32-long32-no-shared.c: Likewise.
	* gcc.target/mips/abi-n32-long32-pic.c: Likewise.
	* gcc.target/mips/abi-n32-long32.c: Likewise.
	* gcc.target/mips/abi-n32-long64-no-shared.c: Likewise.
	* gcc.target/mips/abi-n32-long64-pic.c: Likewise.
	* gcc.target/mips/abi-n32-long64.c: Likewise.
	* gcc.target/mips/abi-n64-long32-no-shared.c: Likewise.
	* gcc.target/mips/abi-n64-long32-pic.c: Likewise.
	* gcc.target/mips/abi-n64-long32.c: Likewise.
	* gcc.target/mips/abi-n64-long64-no-shared.c: Likewise.
	* gcc.target/mips/abi-n64-long64-pic.c: Likewise.
	* gcc.target/mips/abi-n64-long64.c: Likewise.
	* gcc.target/mips/abi-o32-long32-no-shared.c: Likewise.
	* gcc.target/mips/abi-o32-long32-pic.c: Likewise.
	* gcc.target/mips/abi-o32-long32.c: Likewise.
	* gcc.target/mips/abi-o32-long64-no-shared.c: Likewise.
	* gcc.target/mips/abi-o32-long64-pic.c: Likewise.
	* gcc.target/mips/abi-o32-long64.c: Likewise.
	* gcc.target/mips/abi-o64-long32-no-shared.c: Likewise.
	* gcc.target/mips/abi-o64-long32-pic.c: Likewise.
	* gcc.target/mips/abi-o64-long32.c: Likewise.
	* gcc.target/mips/abi-o64-long64-no-shared.c: Likewise.
	* gcc.target/mips/abi-o64-long64-pic.c: Likewise.
	* gcc.target/mips/abi-o64-long64.c: Likewise.
	* gcc.target/mips/asm-1.c: Likewise.
	* gcc.target/mips/branch-1.c: Likewise.
	* gcc.target/mips/call-3.c: Likewise.
	* gcc.target/mips/call-saved-3.c: Likewise.
	* gcc.target/mips/clear-cache-1.c: Likewise.
	* gcc.target/mips/div-1.c: Likewise.
	* gcc.target/mips/div-2.c: Likewise.
	* gcc.target/mips/div-3.c: Likewise.
	* gcc.target/mips/div-4.c: Likewise.
	* gcc.target/mips/div-5.c: Likewise.
	* gcc.target/mips/div-6.c: Likewise.
	* gcc.target/mips/div-7.c: Likewise.
	* gcc.target/mips/div-8.c: Likewise.
	* gcc.target/mips/div-9.c: Likewise.
	* gcc.target/mips/div-10.c: Likewise.
	* gcc.target/mips/div-11.c: Likewise.
	* gcc.target/mips/div-12.c: Likewise.
	* gcc.target/mips/dsp-ctrl.c: Likewise.
	* gcc.target/mips/dsp-no-lhx.c: Likewise.
	* gcc.target/mips/ext-8.c: Likewise.
	* gcc.target/mips/extend-2.c: Likewise.
	* gcc.target/mips/fix-r10000-1.c: Likewise.
	* gcc.target/mips/fix-r10000-2.c: Likewise.
	* gcc.target/mips/fix-r10000-3.c: Likewise.
	* gcc.target/mips/fix-r10000-4.c: Likewise.
	* gcc.target/mips/fix-r10000-5.c: Likewise.
	* gcc.target/mips/fix-r10000-6.c: Likewise.
	* gcc.target/mips/fix-r10000-7.c: Likewise.
	* gcc.target/mips/fix-r10000-8.c: Likewise.
	* gcc.target/mips/fix-r10000-9.c: Likewise.
	* gcc.target/mips/fix-r10000-10.c: Likewise.
	* gcc.target/mips/fix-r10000-11.c: Likewise.
	* gcc.target/mips/fix-r10000-12.c: Likewise.
	* gcc.target/mips/fix-r10000-13.c: Likewise.
	* gcc.target/mips/fix-r10000-14.c: Likewise.
	* gcc.target/mips/fix-r10000-15.c: Likewise.
	* gcc.target/mips/fpcmp-1.c: Likewise.
	* gcc.target/mips/fpcmp-2.c: Likewise.
	* gcc.target/mips/fpr-moves-7.c: Likewise.
	* gcc.target/mips/fpr-moves-8.c: Likewise.
	* gcc.target/mips/int-moves-1.c: Likewise.
	* gcc.target/mips/int-moves-2.c: Likewise.
	* gcc.target/mips/long-calls-pg.c: Likewise.
	* gcc.target/mips/loongson-muldiv-1.c: Likewise.
	* gcc.target/mips/loongson-muldiv-2.c: Likewise.
	* gcc.target/mips/loongson-shift-count-truncated-1.c: Likewise.
	* gcc.target/mips/loongson3a-muldiv-1.c: Likewise.
	* gcc.target/mips/loongson3a-muldiv-2.c: Likewise.
	* gcc.target/mips/mips-3d-1.c: Likewise.
	* gcc.target/mips/mips-3d-2.c: Likewise.
	* gcc.target/mips/mips-3d-3.c: Likewise.
	* gcc.target/mips/mips-3d-4.c: Likewise.
	* gcc.target/mips/mips-3d-5.c: Likewise.
	* gcc.target/mips/mips-3d-6.c: Likewise.
	* gcc.target/mips/mips-3d-7.c: Likewise.
	* gcc.target/mips/mips-3d-8.c: Likewise.
	* gcc.target/mips/mips-3d-9.c: Likewise.
	* gcc.target/mips/mips-ps-1.c: Likewise.
	* gcc.target/mips/mips-ps-2.c: Likewise.
	* gcc.target/mips/mips-ps-3.c: Likewise.
	* gcc.target/mips/mips-ps-4.c: Likewise.
	* gcc.target/mips/mips-ps-6.c: Likewise.
	* gcc.target/mips/mips32-dspr2.c: Likewise.
	* gcc.target/mips/mmcount-ra-address-1.c: Likewise.
	* gcc.target/mips/neg-abs-1.c: Likewise.
	* gcc.target/mips/neg-abs-2.c: Likewise.
	* gcc.target/mips/nmadd-3.c: Likewise.
	* gcc.target/mips/no-smartmips-lwxs.c: Likewise.
	* gcc.target/mips/no-smartmips-ror-1.c: Likewise.
	* gcc.target/mips/octeon-pop-1.c: Likewise.
	* gcc.target/mips/pr26765.c: Likewise.
	* gcc.target/mips/pr33256.c: Likewise.
	* gcc.target/mips/pr33635-1.c: Likewise.
	* gcc.target/mips/pr33755.c: Likewise.
	* gcc.target/mips/pr35802.c: Likewise.
	* gcc.target/mips/pr45074.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-1.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-2.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-3.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-4.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-5.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-6.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-7.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-8.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-9.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-11.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-12.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-13.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-14.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-15.c: Likewise.
	* gcc.target/mips/save-restore-1.c: Likewise.
	* gcc.target/mips/save-restore-3.c: Likewise.
	* gcc.target/mips/save-restore-5.c: Likewise.
	* gcc.target/mips/smartmips-ror-1.c: Likewise.
	* gcc.target/mips/smartmips-ror-2.c: Likewise.
	* gcc.target/mips/smartmips-ror-3.c: Likewise.
	* gcc.target/mips/smartmips-ror-4.c: Likewise.
	* gcc.target/mips/stack-1.c: Likewise.
	* gcc.target/mips/clear-cache-2.c: Remove optimization flag.
	Tighten regexps.
	* gcc.target/mips/branch-8.c: Arrange for the delay slot of the
	branch under test to be filled with preceding rather than
	following instructions.
	* gcc.target/mips/branch-10.c: Likewise.
	* gcc.target/mips/branch-11.c: Likewise.
	* gcc.target/mips/branch-12.c: Likewise.
	* gcc.target/mips/branch-13.c: Likewise.
	* gcc.target/mips/branch-9.c: Likewise.  Allow the frame pointer
	to be eliminated.  Tighten $28 scan-assembler-not test.
	* gcc.target/mips/call-2.c: Remove optimization flag.  Move second
	function to...
	* gcc.target/mips/call-4.c: ...this new test.
	* gcc.target/mips/code-readable-2.c: Rework to make a jump table
	more likely.
	* gcc.target/mips/code-readable-3.c: Likewise.
	* gcc.target/mips/code-readable-1.c: Likewise.  Remove optimization
	flag but skip for -O0.
	* gcc.target/mips/code-readable-4.c: Likewise.
	* gcc.target/mips/mips32-dsp-run.c: Prevent compile-time reduction
	of operations under test.
	* gcc.target/mips/mips32-dsp.c: Likewise.  Remove optimization flag.
	* gcc.target/mips/near-far-3.c: Remove optimization flag.
	Don't require sibling-call optimization.
	* gcc.target/mips/near-far-4.c: Likewise.
	* gcc.target/mips/no-dsp-1.c: Require -ffat-lto-objects.
	Make sure that the register variable is used.
	* gcc.target/mips/soft-float-1.c: Likewise.
	* gcc.target/mips/sdata-1.c: Make static data volatile.
	* gcc.target/mips/sdata-2.c: Likewise.
	* gcc.target/mips/sdata-3.c: Likewise.
	* gcc.target/mips/sdata-4.c: Likewise.
	* gcc.target/mips/
20020620-1.c: Remove optimization flag but
	skip for -O0.
	* gcc.target/mips/atomic-memory-2.c: Likewise.
	* gcc.target/mips/branch-cost-1.c: Likewise.
	* gcc.target/mips/branch-cost-2.c: Likewise.
	* gcc.target/mips/cache-1.c: Likewise.
	* gcc.target/mips/call-1.c: Likewise.
	* gcc.target/mips/call-saved-2.c: Likewise.
	* gcc.target/mips/const-anchor-1.c: Likewise.
	* gcc.target/mips/const-anchor-2.c: Likewise.
	* gcc.target/mips/dse-1.c: Likewise.
	* gcc.target/mips/dsp-lhx.c: Likewise.
	* gcc.target/mips/dspr2-MULTU.c: Likewise.
	* gcc.target/mips/ext-1.c: Likewise.
	* gcc.target/mips/ext-2.c: Likewise.
	* gcc.target/mips/ext-3.c: Likewise.
	* gcc.target/mips/ext-4.c: Likewise.
	* gcc.target/mips/ext-5.c: Likewise.
	* gcc.target/mips/ext-6.c: Likewise.
	* gcc.target/mips/ext-7.c: Likewise.
	* gcc.target/mips/extend-1.c: Likewise.
	* gcc.target/mips/fix-r4000-1.c: Likewise.
	* gcc.target/mips/fix-r4000-3.c: Likewise.
	* gcc.target/mips/fix-r4000-5.c: Likewise.
	* gcc.target/mips/fix-r4000-6.c: Likewise.
	* gcc.target/mips/fix-r4000-8.c: Likewise.
	* gcc.target/mips/fix-r4000-10.c: Likewise.
	* gcc.target/mips/fixed-scalar-type.c: Likewise.
	* gcc.target/mips/fixed-vector-type.c: Likewise.
	* gcc.target/mips/fpr-moves-1.c: Likewise.
	* gcc.target/mips/fpr-moves-2.c: Likewise.
	* gcc.target/mips/fpr-moves-3.c: Likewise.
	* gcc.target/mips/fpr-moves-4.c: Likewise.
	* gcc.target/mips/fpr-moves-5.c: Likewise.
	* gcc.target/mips/fpr-moves-6.c: Likewise.
	* gcc.target/mips/ins-1.c: Likewise.
	* gcc.target/mips/ins-2.c: Likewise.
	* gcc.target/mips/interrupt_handler-2.c: Likewise.
	* gcc.target/mips/interrupt_handler-3.c: Likewise.
	* gcc.target/mips/lazy-binding-1.c: Likewise.
	* gcc.target/mips/madd-3.c: Likewise.
	* gcc.target/mips/madd-5.c: Likewise.
	* gcc.target/mips/madd-6.c: Likewise.
	* gcc.target/mips/madd-8.c: Likewise.
	* gcc.target/mips/madd-9.c: Likewise.
	* gcc.target/mips/memcpy-1.c: Likewise.
	* gcc.target/mips/mips-ps-type.c: Likewise.
	* gcc.target/mips/mips-ps-type-2.c: Likewise.
	* gcc.target/mips/mips-sched-madd.c: Likewise.
	* gcc.target/mips/mips16e-extends.c: Likewise.
	* gcc.target/mips/mips32r2-mxhc1.c: Likewise.
	* gcc.target/mips/mips64-dsp-ldx.c: Likewise.
	* gcc.target/mips/movcc-1.c: Likewise.
	* gcc.target/mips/movcc-2.c: Likewise.
	* gcc.target/mips/movcc-3.c: Likewise.
	* gcc.target/mips/msub-5.c: Likewise.
	* gcc.target/mips/msub-6.c: Likewise.
	* gcc.target/mips/msub-8.c: Likewise.
	* gcc.target/mips/mult-2.c: Likewise.
	* gcc.target/mips/mult-3.c: Likewise.
	* gcc.target/mips/mult-5.c: Likewise.
	* gcc.target/mips/mult-6.c: Likewise.
	* gcc.target/mips/mult-7.c: Likewise.
	* gcc.target/mips/mult-12.c: Likewise.
	* gcc.target/mips/mult-13.c: Likewise.
	* gcc.target/mips/mult-14.c: Likewise.
	* gcc.target/mips/mult-15.c: Likewise.
	* gcc.target/mips/mult-17.c: Likewise.
	* gcc.target/mips/mult-18.c: Likewise.
	* gcc.target/mips/mult-19.c: Likewise.
	* gcc.target/mips/nmadd-1.c: Likewise.
	* gcc.target/mips/nmadd-2.c: Likewise.
	* gcc.target/mips/octeon-baddu-1.c: Likewise.
	* gcc.target/mips/octeon-cins-1.c: Likewise.
	* gcc.target/mips/octeon-cins-2.c: Likewise.
	* gcc.target/mips/octeon-dmul-3.c: Likewise.
	* gcc.target/mips/octeon-exts-2.c: Likewise.
	* gcc.target/mips/octeon-exts-3.c: Likewise.
	* gcc.target/mips/octeon-exts-4.c: Likewise.
	* gcc.target/mips/octeon-exts-5.c: Likewise.
	* gcc.target/mips/octeon-exts-6.c: Likewise.
	* gcc.target/mips/octeon-exts-7.c: Likewise.
	* gcc.target/mips/octeon-pop-2.c: Likewise.
	* gcc.target/mips/octeon-seq-3.c: Likewise.
	* gcc.target/mips/octeon-seq-4.c: Likewise.
	* gcc.target/mips/octeon2-lx-1.c: Likewise.
	* gcc.target/mips/octeon2-lx-2.c: Likewise.
	* gcc.target/mips/octeon2-lx-3.c: Likewise.
	* gcc.target/mips/pr54240.c: Likewise.
	* gcc.target/mips/rsqrt-1.c: Likewise.
	* gcc.target/mips/rsqrt-2.c: Likewise.
	* gcc.target/mips/rsqrt-3.c: Likewise.
	* gcc.target/mips/rsqrt-4.c: Likewise.
	* gcc.target/mips/save-restore-2.c: Likewise.
	* gcc.target/mips/save-restore-4.c: Likewise.
	* gcc.target/mips/sb1-1.c: Likewise.
	* gcc.target/mips/scc-1.c: Likewise.
	* gcc.target/mips/scc-2.c: Likewise.
	* gcc.target/mips/scc-3.c: Likewise.
	* gcc.target/mips/scc-4.c: Likewise.
	* gcc.target/mips/smartmips-lwxs.c: Likewise.
	* gcc.target/mips/truncate-1.c: Likewise.
	* gcc.target/mips/truncate-2.c: Likewise.
	* gcc.target/mips/truncate-3.c: Likewise.
	* gcc.target/mips/truncate-4.c: Likewise.
	* gcc.target/mips/truncate-5.c: Likewise.
	* gcc.target/mips/truncate-6.c: Likewise.
	* gcc.target/mips/unaligned-1.c: Likewise.
	* gcc.target/mips/dpaq_sa_l_w.c: Remove optimization flag but
	skip for -O0.  Require -fexpensive-optimizations.
	* gcc.target/mips/dpsq_sa_l_w.c: Likewise.
	* gcc.target/mips/dspr2-MULT.c: Likewise.
	* gcc.target/mips/fix-r4000-2.c: Likewise.
	* gcc.target/mips/fix-r4000-4.c: Likewise.
	* gcc.target/mips/fix-r4000-7.c: Likewise.
	* gcc.target/mips/fix-r4000-9.c: Likewise.
	* gcc.target/mips/madd-1.c: Likewise.
	* gcc.target/mips/madd-2.c: Likewise.
	* gcc.target/mips/madd-4.c: Likewise.
	* gcc.target/mips/maddu-1.c: Likewise.
	* gcc.target/mips/maddu-2.c: Likewise.
	* gcc.target/mips/maddu-3.c: Likewise.
	* gcc.target/mips/maddu-4.c: Likewise.
	* gcc.target/mips/msub-1.c: Likewise.
	* gcc.target/mips/msub-2.c: Likewise.
	* gcc.target/mips/msub-3.c: Likewise.
	* gcc.target/mips/msub-4.c: Likewise.
	* gcc.target/mips/msubu-1.c: Likewise.
	* gcc.target/mips/msubu-2.c: Likewise.
	* gcc.target/mips/msubu-3.c: Likewise.
	* gcc.target/mips/msubu-4.c: Likewise.
	* gcc.target/mips/mult-1.c: Likewise.
	* gcc.target/mips/mult-4.c: Likewise.
	* gcc.target/mips/mult-8.c: Likewise.
	* gcc.target/mips/mult-9.c: Likewise.
	* gcc.target/mips/mult-10.c: Likewise.
	* gcc.target/mips/mult-11.c: Likewise.
	* gcc.target/mips/mult-16.c: Likewise.
	* gcc.target/mips/fix-r4000-11.c: Remove optimization flag but
	skip for -O0 and -Os.
	* gcc.target/mips/fix-r4000-12.c: Likewise.
	* gcc.target/mips/madd-7.c: Likewise.
	* gcc.target/mips/mips-ps-5.c: Likewise.
	* gcc.target/mips/mips-ps-7.c: Likewise.
	* gcc.target/mips/msub-7.c: Likewise.
	* gcc.target/mips/mmcount-ra-address-2.c: Remove optimization flag but
	skip for -O0.  Require -mno-abicalls.
	* gcc.target/mips/mmcount-ra-address-3.c: Likewise.
	* gcc.target/mips/octeon-bbit-1.c: Remove optimization flag but
	skip for -O0.  Require a total number of BBIT instructions and
	at least one of each kind.
	* gcc.target/mips/octeon-bbit-2.c: Remove optimization flag but
	skip for -O0.  Require -fno-unroll-loops.
	* gcc.target/mips/octeon-bbit-3.c: Remove optimization flag but
	skip for -O0.  Allow BLTZ as well as BGEZ.
	* gcc.target/mips/octeon-dmul-2.c: Skip for -Os.
	* gcc.target/mips/octeon-pipe-1.c: Remove optimization flag but
	skip for -O0.  Require -fschedule-insns2.
	* gcc.target/mips/octeon2-pipe-1.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-10.c: Remove optimization flag
	but skip for -O0.  Make a branch-likely more likely.
	* gcc.target/mips/timode-2.c: Split each test into its own function.
	* gcc.target/mips/timode-1.c: Likewise.  Skip for -Os.
	* gcc.target/mips/vr-mult-1.c: Remove optimization flag but
	skip for -O0.  Require -fpeephole2.
	* gcc.target/mips/vr-mult-2.c: Likewise.
From-SVN: r190718
Richard Sandiford [Mon, 27 Aug 2012 16:25:47 +0000 (16:25 +0000)]
 
mips.c (mips_pic_call_symbol_from_set): Check for SYMBOL_REF SET_SRCs.
gcc/
	* config/mips/mips.c (mips_pic_call_symbol_from_set): Check for
	SYMBOL_REF SET_SRCs.
From-SVN: r190717
Richard Sandiford [Mon, 27 Aug 2012 16:25:12 +0000 (16:25 +0000)]
 
mips.c (vr4130_align_insns): Don't simulate ghost instructions.
gcc/
	* config/mips/mips.c (vr4130_align_insns): Don't simulate
	ghost instructions.  Assert that the required instructions exist.
From-SVN: r190716
Dodji Seketeli [Mon, 27 Aug 2012 15:41:38 +0000 (15:41 +0000)]
 
PR preprocessor/53469 - argument tokens of _Pragma miss virtual location
Consider this short test snippet:
-------------------------8-------------------
    #define STRINGIFY(x) #x
    #define TEST(x) \
      _Pragma(STRINGIFY(GCC diagnostic ignored "-Wunused-local-typedefs")) \
      typedef int myint;
    void bar ()
    {
      TEST(myint)
    }
-------------------------8-------------------
The _Pragma is effectively ignored, and compiling with
-Wunused-local-typedefs warns on the local typedef, even though the
pragma should have prevented the warning to be emitted.
This is because when the preprocessor sees the _Pragma operator and
then goes to handle the first token ('GCC' here) that makes up its
operands, it retains the spelling location of that token, not its
virtual location.
Later when diagnostic_report_diagnostic is called to emit the warning
(or ignore it because of the pragma), it compares the location of the
first operand of the pragma with the location of the unused location,
(by calling linemap_location_before_p) and that comparison fails
because in this case, both locations should be virtual.
This patch fixes the issue by teaching the pragma handling to use
virtual locations.
Bootstrapped and tested on x86_64-unknown-linux-gnu against trunk.
libcpp/
	PR preprocessor/53469
	* directives.c (do_pragma): Use the virtual location for the
	pragma token, instead of its spelling location.
gcc/testsuite/
	PR preprocessor/53469
	* gcc.dg/cpp/_Pragma7.c: New test case.
From-SVN: r190714
Tobias Burnus [Mon, 27 Aug 2012 14:42:50 +0000 (16:42 +0200)]
 
re PR fortran/54384 (gfortran memory leaks)
2012-08-27  Tobias Burnus  <burnus@net-b.de>
        PR fortran/54384
        * trans-expr.c (gfc_trans_arrayfunc_assign): Free se.ss
        and loop.
From-SVN: r190713
Ulrich Drepper [Mon, 27 Aug 2012 14:13:15 +0000 (14:13 +0000)]
 
Add interfaces to retrieve random numbers in bulk.
	* include/bits/random.h (uniform_int_distribution<>): Add __generate
	and __generate_impl functions.
	(uniform_real_distribution<>): Likewise.
	(bernoulli_distribution): Likewise.
	(geometric_distribution<>): Likewise.
	(negative_binomial_distribution<>): Likewise.
	(poisson_distribution<>): Likewise.
	(exponential_distribution<>): Likewise.
	(normal_distribution<>): Likewise.
	(lognormal_distribution<>): Likewise.
	(chi_squared_distribution<>): Likewise.
	(cauchy_distribution<>): Likewise.
	(fisher_f_distribution<>): Likewise.
	(student_t_distribution<>): Likewise.
	(gamma_distribution<>): Likewise.
	(weibull_distribution<>): Likewise.
	(extreme_value_distribution<>): Likewise.
	(discrete_distribution<>): Likewise.
	(piecewise_constant_distribution<>): Likewise.
	(piecewise_linear_distribution<>): Likewise.
	* include/bits/random.tcc (__detail::_Power_of_2): New function.
	(uniform_int_distribution<>::__generate_impl): New function.
	(uniform_real_distribution<>::__generate_impl): New function.
	(bernoulli_distribution::__generate_impl): New function.
	(geometric_distribution<>::__generate_impl): New function.
	(negative_binomial_distribution<>::__generate_impl): New function.
	(poisson_distribution<>::__generate_impl): New function.
	(exponential_distribution<>::__generate_impl): New function.
	(normal_distribution<>::__generate_impl): New function.
	(lognormal_distribution<>::__generate_impl): New function.
	(chi_squared_distribution<>::__generate_impl): New function.
	(cauchy_distribution<>::__generate_impl): New function.
	(fisher_f_distribution<>::__generate_impl): New function.
	(student_t_distribution<>::__generate_impl): New function.
	(gamma_distribution<>::__generate_impl): New function.
	(weibull_distribution<>::__generate_impl): New function.
	(extreme_value_distribution<>::__generate_impl): New function.
	(discrete_distribution<>::__generate_impl): New function.
	(piecewise_constant_distribution<>::__generate_impl): New function.
	(piecewise_linear_distribution<>::__generate_impl): New function.
From-SVN: r190712
Ulrich Drepper [Mon, 27 Aug 2012 12:08:16 +0000 (12:08 +0000)]
 
random.h (mersenne_twister_engine): Don't inline discard here.
	* include/bits/random.h (mersenne_twister_engine): Don't inline
	discard here.  New member function _M_gen_rand.
	* include/bits/random.tcc (mersenne_twister_engine<>::_M_gen_rand):
	New function.  Extracted from operator().
	(mersenne_twister_engine<>::discard): New implementation which
	skips in large steps.
	(mersenne_twister_engine<>::operator()): Use _M_gen_rand.
From-SVN: r190711
Tobias Burnus [Mon, 27 Aug 2012 12:07:43 +0000 (14:07 +0200)]
 
re PR fortran/41093 (memory leaks with gfc_namespace)
2012-08-27  Tobias Burnus  <burnus@net-b.de>
        PR fortran/41093
        * gfortran.h (gfc_common_head): Add "int refs".
        * match.c (gfc_match_common): Increment refs.
        * resolve.c (resolve_symbol): Only increment formal_ns->refs
        if formal_ns is not sym->ns.
        * symbol.c (gfc_free_symbol): Only free formal_ns if
        if formal_ns is not sym->ns. Free common_block if refs is one.
        (gfc_release_symbol): Release formal_ns only if the
        symbol is not ENTRY of a module.
        * decl.c (get_proc_name): Don't increment gfc_current_ns->refs.
        * parse.c (parse_interface): Incement proc_unit->refs++ for
        proc-pointer result variables.
        * module.c (mio_symbol): Don't increase sym->refs for its
        use in sym->formal_ns->proc_name.
From-SVN: r190710
Tobias Burnus [Mon, 27 Aug 2012 12:03:41 +0000 (14:03 +0200)]
 
re PR fortran/54370 (error: non-trivial conversion in unary operation)
2012-08-27  Tobias Burnus  <burnus@net-b.de>
        PR fortran/54370
        * trans-stmt.c (gfc_trans_do_while): Don't change the logical
        kind for negation of the condition.
2012-08-27  Tobias Burnus  <burnus@net-b.de>
        PR fortran/54370
        * gfortran.dg/do_5.f90: New.
From-SVN: r190709
Ulrich Drepper [Mon, 27 Aug 2012 12:00:32 +0000 (12:00 +0000)]
 
MAINTAINERS: Fix my email address.
        * MAINTAINERS: Fix my email address.
From-SVN: r190708
Tobias Burnus [Mon, 27 Aug 2012 08:20:59 +0000 (10:20 +0200)]
 
options.c (set_Wall): Don't set for -Wcompare-reals.
2012-08-27  Tobias Burnus  <burnus@net-b.de>
        * options.c (set_Wall): Don't set for -Wcompare-reals.
        * invoke.texi (-Wall, -Wcompare-reals): -Wall no longer
        implies -Wcompare-reals.
2012-08-27  Tobias Burnus  <burnus@net-b.de>
        * gfortran.dg/bessel_5.f90: Remove -Wno-compare-reals
        from dg-options as -Wall no longer implies it.
From-SVN: r190707
GCC Administrator [Mon, 27 Aug 2012 00:17:35 +0000 (00:17 +0000)]
 
Daily bump.
From-SVN: r190706
Richard Sandiford [Sun, 26 Aug 2012 19:31:15 +0000 (19:31 +0000)]
 
mips.h (AVOID_CCMODE_COPIES): Update rationale for definition.
gcc/
	* config/mips/mips.h (AVOID_CCMODE_COPIES): Update rationale for
	definition.
	* config/mips/mips.c (machine_function): Add next_fcc.
	(mips_output_move): Remove handling of fcc moves.
	(mips_allocate_fcc): New function.
	(mips_emit_compare, mips_expand_vcondv2sf): Use it.
	(mips_hard_regno_mode_ok_p): Restrict CCmode to ST registers.
	Remove special case for CCmode reloads.
	(mips_expand_builtin_compare_1): Use mips_allocate_fcc and treat
	the result a fixed operand.
	* config/mips/mips.md (move_type): Remove lui_movf.
	(type, length): Remove references to it.
	(movcc, reload_incc, reload_outcc): Delete.
From-SVN: r190703
Hans-Peter Nilsson [Sun, 26 Aug 2012 19:30:44 +0000 (19:30 +0000)]
 
* btest-gcc.sh (TESTLOGS): Make gfortran.sum optional.
From-SVN: r190702
Richard Sandiford [Sun, 26 Aug 2012 19:22:59 +0000 (19:22 +0000)]
 
mips.c (mips_has_long_branch_p): New function, split out from...
gcc/
	* config/mips/mips.c (mips_has_long_branch_p): New function,
	split out from...
	(mips_expand_ghost_gp_insns): ...here.  Look inside sequences.
From-SVN: r190701
Richard Sandiford [Sun, 26 Aug 2012 19:20:31 +0000 (19:20 +0000)]
 
mips.c (r10k_safe_mem_expr_p): Use get_inner_reference.
gcc/
	* config/mips/mips.c (r10k_safe_mem_expr_p): Use get_inner_reference.
From-SVN: r190700
Richard Sandiford [Sun, 26 Aug 2012 19:19:31 +0000 (19:19 +0000)]
 
mips.c (mips_rtx_costs): Add costs for CINS.
gcc/
	* config/mips/mips.c (mips_rtx_costs): Add costs for CINS.
From-SVN: r190699
Richard Sandiford [Sun, 26 Aug 2012 19:17:33 +0000 (19:17 +0000)]
 
mips.c (mips_rtx_costs): Add missing COSTS_N_INSNS to the size cost of multiplication.
gcc/
	* config/mips/mips.c (mips_rtx_costs): Add missing COSTS_N_INSNS
	to the size cost of multiplication.
From-SVN: r190698
Richard Sandiford [Sun, 26 Aug 2012 19:16:33 +0000 (19:16 +0000)]
 
scanasm.exp (scan-assembler-times_required_options): New proc.
gcc/testsuite/
	* lib/scanasm.exp (scan-assembler-times_required_options): New proc.
From-SVN: r190697
Andrew Pinski [Sun, 26 Aug 2012 18:29:21 +0000 (18:29 +0000)]
 
re PR libffi/53014 (libffi failures on mips64-linux-gnu with soft-float)
2012-08-26  Andrew Pinski  <apinski@cavium.com>
	PR libffi/53014
	* src/mips/ffi.c (ffi_prep_closure_loc): Allow n32 with soft-float and n64 with
	soft-float.
From-SVN: r190696
Gerald Pfeifer [Sun, 26 Aug 2012 17:31:57 +0000 (17:31 +0000)]
 
install.texi (Specific): Clarify what needs to be added to this section.
	* doc/install.texi (Specific): Clarify what needs to be added to
	this section.
From-SVN: r190695
Marc Glisse [Sun, 26 Aug 2012 17:22:43 +0000 (19:22 +0200)]
 
re PR libstdc++/54376 (incorrect complaint about redefinition)
2012-08-26  Marc Glisse  <marc.glisse@inria.fr>
	    Paolo Carlini  <paolo.carlini@oracle.com>
	PR libstdc++/54376
	* include/bits/random.h (lognormal_distribution<>::operator==,
	gamma_distribution<>::operator==,
	chi_squared_distribution<>::operator==,
	fisher_f_distribution<>::operator==,
	student_t_distribution<>::operator==,
	binomial_distribution<>::operator==,
	negative_binomial_distribution<>::operator==,
	poisson_distribution<>::operator==): Change inline friend definition
	to non-template.
	* testsuite/26_numerics/random/binomial_distribution/requirements/
	explicit_instantiation/1.cc: New.
	* testsuite/26_numerics/random/cauchy_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/chi_squared_distribution/
	requirements/explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/discrete_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/exponential_distribution/
	requirements/explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/extreme_value_distribution/
	requirements/explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/fisher_f_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/gamma_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/geometric_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/lognormal_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/negative_binomial_distribution/
	requirements/explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/normal_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/piecewise_constant_distribution/
	requirements/explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/piecewise_linear_distribution/
	requirements/explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/poisson_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/student_t_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/uniform_int_distribution/
	requirements/explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/uniform_real_distribution/
	requirements/explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/weibull_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r190694
Gerald Pfeifer [Sun, 26 Aug 2012 16:43:20 +0000 (16:43 +0000)]
 
tm.texi.in (Misc): Move descriptions of NO_DOLLAR_IN_LABEL and NO_DOT_IN_LABEL from here...
	* doc/tm.texi.in (Misc): Move descriptions of NO_DOLLAR_IN_LABEL
	and NO_DOT_IN_LABEL from here...
	(Label Output): ...to here.
	* doc/tm.texi: Regenerate.
From-SVN: r190693
Gerald Pfeifer [Sun, 26 Aug 2012 15:36:33 +0000 (15:36 +0000)]
 
* doc/invoke.texi (C++ Dialect Options): Add missing space.
From-SVN: r190692
Jonathan Wakely [Sun, 26 Aug 2012 14:59:20 +0000 (14:59 +0000)]
 
* testsuite/30_threads/async/54297.cc: Add dg-require-nanosleep.
From-SVN: r190691
H.J. Lu [Sun, 26 Aug 2012 14:40:22 +0000 (14:40 +0000)]
 
Don't set HOST_LIB_PATH_bfd/HOST_LIB_PATH_opcodes
	PR binutils/4970
	* Makefile.def (host_modules): Rmove lib_path=.libs from bfd
	and opcodes.
	* Makefile.in: Regenerated.
From-SVN: r190689
H.J. Lu [Sun, 26 Aug 2012 14:26:57 +0000 (07:26 -0700)]
 
Move config entries to ChangeLog
From-SVN: r190688
H.J. Lu [Sun, 26 Aug 2012 14:06:56 +0000 (07:06 -0700)]
 
Fix a typo in ChangeLog
From-SVN: r190686
Jonathan Wakely [Sun, 26 Aug 2012 13:49:44 +0000 (13:49 +0000)]
 
re PR libstdc++/54297 ([C++11] Segmentation fault with std::async and released shared state)
	PR libstdc++/54297
	* src/c++11/future.cc (~_Async_state_common): Move to...
	* src/c++11/compatibility-thread-c++0x.cc (~_Async_state_common):
	Here.
	(_GLIBCXX_ABI_COMPAT_ASYNC): Rename to _GLIBCXX_ASYNC_ABI_COMPAT.
	* include/std/future (_GLIBCXX_ABI_COMPAT_ASYNC): Likewise.
From-SVN: r190685
Art Haas [Sun, 26 Aug 2012 12:20:01 +0000 (12:20 +0000)]
 
cloog.m4 (CLOOG_INIT_FLAGS): Use = instead of == in test.
	* cloog.m4 (CLOOG_INIT_FLAGS): Use = instead of == in test.
	* configure: Regenerate.
From-SVN: r190684
Jason Merrill [Sun, 26 Aug 2012 03:50:56 +0000 (23:50 -0400)]
 
* g++.dg/cpp0x/fntmpdefarg3.C: New.
From-SVN: r190683
Hans-Peter Nilsson [Sun, 26 Aug 2012 01:21:14 +0000 (01:21 +0000)]
 
* btest-gcc.sh (TESTLOGS): Add libmudflap.sum, if it exists.
From-SVN: r190682
GCC Administrator [Sun, 26 Aug 2012 00:17:49 +0000 (00:17 +0000)]
 
Daily bump.
From-SVN: r190680
Jonathan Wakely [Sun, 26 Aug 2012 00:14:59 +0000 (01:14 +0100)]
 
Add testcase author to ChangeLog.
From-SVN: r190677
Jonathan Wakely [Sun, 26 Aug 2012 00:12:40 +0000 (00:12 +0000)]
 
re PR libstdc++/54351 (~unique_ptr() should not set stored pointer to null)
	PR libstdc++/54351
	* include/bits/unique_ptr.h (unique_ptr<T>::~unique_ptr): Do not use
	reset().
	(unique_ptr<T[]>::~unique_ptr()): Likewise.
	* testsuite/20_util/unique_ptr/54351.cc: New.
	* testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-error
	line numbers.
From-SVN: r190676
Eric Botcazou [Sat, 25 Aug 2012 23:21:53 +0000 (23:21 +0000)]
 
re PR rtl-optimization/54088 (ICE at dwarf2out.c:20632 with -O1 -g)
	PR rtl-optimization/54088
	* jump.c (delete_related_insns): Robustify latest change.
From-SVN: r190674
Jonathan Wakely [Sat, 25 Aug 2012 23:01:40 +0000 (23:01 +0000)]
 
re PR libstdc++/54297 ([C++11] Segmentation fault with std::async and released shared state)
	PR libstdc++/54297
	* include/std/future (~_Async_state_impl): Join thread before
	derived class members are destroyed.
	(~_Async_state_common): Only define non-trivial destructor when
	included from future.cc for ABI compatibility reasons.
	* src/c++11/future.cc (_GLIBCXX_ABI_COMPAT_ASYNC): Define.
	* testsuite/30_threads/async/54297.cc: New.
From-SVN: r190672
Ricardo Catalinas Jiménez [Sat, 25 Aug 2012 22:55:27 +0000 (22:55 +0000)]
 
* doc/extend.texi (__atomic Builtins): Remove space before comma.
From-SVN: r190671
Richard Sandiford [Sat, 25 Aug 2012 21:33:15 +0000 (21:33 +0000)]
 
mips.h (CASE_VECTOR_MODE): For not TARGET_MIPS16_SHORT_JUMP_TABLES use ptr_mode.
2012-08-25  Richard Sandiford  <rdsandiford@googlemail.com>
            Andrew Pinski  <apinski@cavium.com>
	* config/mips/mips.h (CASE_VECTOR_MODE): For not
	TARGET_MIPS16_SHORT_JUMP_TABLES use ptr_mode.
	(CASE_VECTOR_SHORTEN_MODE): Likewise.
Co-Authored-By: Andrew Pinski <apinski@cavium.com>
From-SVN: r190670
Křištof Želechovski [Sat, 25 Aug 2012 20:48:20 +0000 (22:48 +0200)]
 
README: Also refer to the online installation instructions.
	* INSTALL/README: Also refer to the online installation
	instructions.
From-SVN: r190669
Jonathan Wakely [Sat, 25 Aug 2012 18:51:53 +0000 (18:51 +0000)]
 
re PR libstdc++/54248 (Comment in standard library header talks about boost)
	PR libstdc++/54248
	* include/bits/concept_check.h: Replace references to boost
	namespace.
From-SVN: r190668
Uros Bizjak [Sat, 25 Aug 2012 17:16:05 +0000 (19:16 +0200)]
 
i386.h (FP_REG_P): Remove macro.
	* config/i386/i386.h (FP_REG_P): Remove macro.
	(FP_REGNO_P): Ditto.
	(HARD_REGNO_NREGS): Use STACK_REGNO_P instead of FP_REGNO_P.
	(HARD_REGNO_NREGS_HAS_PADDING): Ditto.
	(ANY_FP_REGNO_P): Ditto.
	(HARD_REGNO_RENAME_OK): Use STACK_REGNO_P.
	* config/i386/i386.c (output_387_ffreep): Use STACK_REGNO_P
	instead of FP_REGNO_P.
	(ix86_hard_regno_mode_ok): Ditto.
	* config/i386/predicates.md (fp_register_operand): Ditto.
	(register_and_not_fp_reg_operand): Ditto.
	* config/i386/sync.md (atomic_loaddi_fpu): Use STACK_REG_P instead
	of FP_REG_P.
	* reg-stack.c (get_true_reg): Use STACK_REG_P instead of FP_REG_P.
From-SVN: r190667
Uros Bizjak [Sat, 25 Aug 2012 15:52:23 +0000 (17:52 +0200)]
 
* ChangeLog: Fix whitespace.
From-SVN: r190666
Paolo Carlini [Sat, 25 Aug 2012 09:53:30 +0000 (09:53 +0000)]
 
re PR c++/51421 ([c++0x] ICE with invalid use of auto)
/cp
2012-08-25  Paolo Carlini  <paolo.carlini@oracle.com>
	PR c++/51421
	* decl2.c (mark_used): Consistently return false after errors
	about uses before deduction of auto.
	* semantics.c (finish_id_expression): Check mark_used return
	value and return error_mark_node in case of failure.
/testsuite
2012-08-25  Paolo Carlini  <paolo.carlini@oracle.com>
	PR c++/51421
	* g++.dg/cpp0x/auto34.C: New.
From-SVN: r190665
Jason Merrill [Sat, 25 Aug 2012 03:30:11 +0000 (23:30 -0400)]
 
PR c++/51213 (again)
	PR c++/51213 (again)
	* pt.c (deduction_tsubst_fntype): Remove.
	(fn_type_unification): Check deduction depth and call
	instantiate_template here.  Handle default argument access checks.
	(determine_specialization): Suppress access control.
	(tsubst_decl): Check for excessive deduction depth.
	(recheck_decl_substitution): Make sure access control is on.
	(type_unification_real): Don't mess with access deferring here.
	(get_bindings): Adjust for fn_type_unification return type.
	* call.c (enum rejection_reason_code): Drop rr_template_instantiation.
	(template_instantiation_rejection): Remove.
	(struct rejection_reason): Change targs to num_targs.
	(template_unification_rejection, print_z_candidate): Adjust.
	(add_template_candidate_real): Adjust for fn_type_unification change.
	* class.c (resolve_address_of_overloaded_function): Likewise.
	* cp-tree.h: Adjust declaration.
From-SVN: r190664
Jason Merrill [Sat, 25 Aug 2012 02:29:00 +0000 (22:29 -0400)]
 
print-tree.c (print_node): Don't check TREE_LANG_FLAG_* on TREE_VEC or SSA_NAME.
	* print-tree.c (print_node): Don't check TREE_LANG_FLAG_*
	on TREE_VEC or SSA_NAME.
From-SVN: r190663
Jason Merrill [Sat, 25 Aug 2012 02:27:27 +0000 (22:27 -0400)]
 
pt.c (tsubst_default_argument): Indicate where the default argument is being instantiated for.
	* pt.c (tsubst_default_argument): Indicate where the default
	argument is being instantiated for.
	(tsubst_expr): Restore previous location.
	(tsubst_copy_and_build): Set and restore location.
	* call.c (build_new_method_call_1): Remember location of call.
	* semantics.c (finish_call_expr): Here too.
	* parser.c (cp_parser_omp_for_loop): Remember the location of the
	increment expression.
From-SVN: r190662
GCC Administrator [Sat, 25 Aug 2012 00:17:26 +0000 (00:17 +0000)]
 
Daily bump.
From-SVN: r190661
Jakub Jelinek [Fri, 24 Aug 2012 21:46:17 +0000 (23:46 +0200)]
 
re PR c/54363 (ICE when compiling malformed struct initializers)
	PR c/54363
	* gimplify.c (optimize_compound_literals_in_ctor): Only recurse
	if init is a CONSTRUCTOR.
	* gcc.dg/pr54363.c: New test.
From-SVN: r190657
Jakub Jelinek [Fri, 24 Aug 2012 21:45:22 +0000 (23:45 +0200)]
 
re PR c/54355 (ICE on invalid code in switch statement)
	PR c/54355
	* c-decl.c (c_parser_label): Pass true as nested and fix up comments
	for nested and empty_ok arguments in the call to
	c_parser_declaration_or_fndef.
	* gcc.dg/pr54355.c: New test.
From-SVN: r190656
Steven Bosscher [Fri, 24 Aug 2012 20:25:42 +0000 (20:25 +0000)]
 
tree-ssa-live.c (dump_var_map): Do not dump the partition map of virtual operands.
	* tree-ssa-live.c (dump_var_map): Do not dump the partition
	map of virtual operands.
From-SVN: r190655
Sriraman Tallam [Fri, 24 Aug 2012 19:07:28 +0000 (19:07 +0000)]
 
Sync plugin-api.h with gold patch : sourceware.org/ml/binutils/2012-08/msg00447.html
	* plugin-api.h (ld_plugin_allow_unique_segment_for_sections):
	New interface.
	(ld_plugin_unique_segment_for_sections): New interface.
	(LDPT_ALLOW_UNIQUE_SEGMENT_FOR_SECTIONS): New enum val.
	(LDPT_UNIQUE_SEGMENT_FOR_SECTIONS): New enum val.
	(tv_allow_unique_segment_for_sections): New member.
	(tv_unique_segment_for_sections): New member.
From-SVN: r190654
Jason Merrill [Fri, 24 Aug 2012 18:58:00 +0000 (14:58 -0400)]
 
pt.c (resolve_overloaded_unification): Use coerce_template_parms instead of get_bindings.
	* pt.c (resolve_overloaded_unification): Use coerce_template_parms
	instead of get_bindings.
	(resolve_nondeduced_context): Likewise.
From-SVN: r190653
Jason Merrill [Fri, 24 Aug 2012 18:57:50 +0000 (14:57 -0400)]
 
pt.c (register_specialization): Correct argument to check_specialization_namespace.
	* pt.c (register_specialization): Correct argument to
	check_specialization_namespace.
	(determine_specialization): Don't consider members of
	unspecialized types.
From-SVN: r190652
Yuri Rumyantsev [Fri, 24 Aug 2012 15:36:02 +0000 (15:36 +0000)]
 
i386.c (ia32_multipass_dfa_lookahead): Add case for Atom processor.
        * config/i386/i386.c (ia32_multipass_dfa_lookahead) : Add
        case for Atom processor.
From-SVN: r190649
Simon Baldwin [Fri, 24 Aug 2012 14:58:06 +0000 (14:58 +0000)]
 
dwarf2out.c (gen_producer_string): Omit command line switch if CL_NO_DWARF_RECORD flag set.
gcc/ChangeLog
	* dwarf2out.c (gen_producer_string): Omit command line switch if
	CL_NO_DWARF_RECORD flag set.
	* opts.h (CL_NO_DWARF_RECORD): New.
	* opt-functions.awk (switch_flags): Add NoDWARFRecord.
	* doc/options.texi: Document NoDWARFRecord option flag.
gcc/fortran/ChangeLog
	* lang.opt (-cpp=): Mark flag NoDWARFRecord.
From-SVN: r190648
H.J. Lu [Fri, 24 Aug 2012 13:21:55 +0000 (13:21 +0000)]
 
Allow arg_pointer_rtx/frame_pointer_rtx for based_loc_descr
gcc/
	PR debug/52857
	* dwarf2out.c (mem_loc_descriptor): Allow arg_pointer_rtx and
	frame_pointer_rtx for based_loc_descr.
gcc/testsuite/
	PR debug/52857
	* gcc.target/i386/pr52857-1.c: New.
	* gcc.target/i386/pr52857-2.c: Likewise.
From-SVN: r190647
Georg-Johann Lay [Fri, 24 Aug 2012 13:01:54 +0000 (13:01 +0000)]
 
re PR target/54222 ([avr] Implement fixed-point support)
	PR target/54222
	* config/avr/t-avr (conv_X): Rename to func_X.
From-SVN: r190646
Martin Jambor [Fri, 24 Aug 2012 12:57:24 +0000 (14:57 +0200)]
 
predict.c (maybe_hot_frequency_p): New parameter fun.
2012-08-24  Martin Jambor  <mjambor@suse.cz>
	* predict.c (maybe_hot_frequency_p): New parameter fun.  Use its decl
	instead of current_function_decl, use profile_status_for_function and
	ENTRY_BLOCK_PTR_FOR_FUNCTION with fun instead of their cfun variants.
	(maybe_hot_count_p): New parameter fun, use
	profile_status_for_function instead of its cfun_variant.
	(maybe_hot_bb_p): New parameter fun, checking-assert it, pass it to
	all callees.
	(maybe_hot_edge_p): Pass cfun to maybe_hot_count_p and
	maybe_hot_frequency_p.
	(probably_never_executed_bb_p): New parameter fun, use its decl
	instead of current_function_decl.
	(optimize_bb_for_size_p): Pass cfun to maybe_hot_bb_p.
	(rtl_profile_for_bb): Likewise.
	(compute_function_frequency): Pass cfun to maybe_hot_bb_p and
	probably_never_executed_bb_p.
	* tree-ssa-operands.c (ssa_operands_active): New operator fun.  Use it
	instead of cfun.
	(update_stmt_operands): Pass cfun as an argument of
	ssa_operands_active.
	(swap_tree_operands): Likewise.
	* gimple-iterator.c (update_modified_stmt): Likewise.
	(update_modified_stmts): Likewise.
	* tree-flow-inline.h (delink_stmt_imm_use): Likewise.
	* tree-ssa.c (delete_tree_ssa): Likewise.
	* bb-reorder.c (bb_to_key): Pass cfun to probably_never_executed_bb_p.
	(push_to_next_round_p): Likewise.
	(find_rarely_executed_basic_blocks_and_crossing_edges ): Likewise.
	* cfg.c: Inlude tree.h.
	(check_bb_profile): Use profile_status_for_function,
	EXIT_BLOCK_PTR_FOR_FUNCTION and ENTRY_BLOCK_PTR_FOR_FUNCTION with
	DECL_STRUCT_FUNCTION (current_function_decl) instead of their cfun
	variants.
	(dump_bb_info): Pass DECL_STRUCT_FUNCTION (current_function_decl) to
	maybe_hot_bb_p and probably_never_executed_bb_p.
	* gimple-pretty-print.c (gimple_dump_bb_buff): Checking-assert that
	DECL_STRUCT_FUNCTION (current_function_decl) is not NULL.  Pass it to
	dump_histograms_for_stmt.
	(dump_gimple_mem_ops): Pass DECL_STRUCT_FUNCTION (current_function_decl)
	as an argument to dump_gimple_mem_ops.
	* tree-cfg.c (dump_function_to_file): Rename parameter fn to fndecl.
	Do not change cfun.  Change and restore current_function_decl.
	* Makefile.in (cfg.o): Include TREE_H in dependencies.
From-SVN: r190645
Georg-Johann Lay [Fri, 24 Aug 2012 12:42:48 +0000 (12:42 +0000)]
 
re PR target/54222 ([avr] Implement fixed-point support)
libgcc/
	PR target/54222
	* config/avr/lib1funcs-fixed.S: New file.
	* config/avr/lib1funcs.S: Include it.  Undefine some divmodsi
	after they are used.
	(neg2, neg4): New macros.
	(__mulqihi3,__umulqihi3,__mulhi3): Rewrite non-MUL variants.
	(__mulhisi3,__umulhisi3,__mulsi3): Rewrite non-MUL variants.
	(__umulhisi3): Speed up MUL variant if there is enough flash.
	* config/avr/avr-lib.h (TA, UTA): Adjust according to gcc's
	avr-modes.def.
	* config/avr/t-avr (LIB1ASMFUNCS): Add: _fractqqsf, _fractuqqsf,
	_fracthqsf, _fractuhqsf, _fracthasf, _fractuhasf, _fractsasf,
	_fractusasf, _fractsfqq, _fractsfuqq, _fractsfhq, _fractsfuhq,
	_fractsfha, _fractsfsa, _mulqq3, _muluqq3, _mulhq3, _muluhq3,
	_mulha3, _muluha3, _mulsa3, _mulusa3, _divqq3, _udivuqq3, _divhq3,
	_udivuhq3, _divha3, _udivuha3, _divsa3, _udivusa3.
	(LIB2FUNCS_EXCLUDE): Add supported functions.
gcc/
	PR target/54222
	* avr-modes.def (HA, SA, DA, TA, UTA): Adjust modes.
	* avr/avr-fixed.md: New file.
	* avr/avr.md: Include it.
	(cc): Add: minus.
	(adjust_len): Add: minus, minus64, ufract, sfract.
	(ALL1, ALL2, ALL4, ORDERED234): New mode iterators.
	(MOVMODE): Add: QQ, UQQ, HQ, UHQ, HA, UHA, SQ, USQ, SA, USA.
	(MPUSH): Add: HQ, UHQ, HA, UHA, SQ, USQ, SA, USA.
	(pushqi1, xload8_A, xload_8, movqi_insn, *reload_inqi, addqi3,
	subqi3, ashlqi3, *ashlqi3, ashrqi3, lshrqi3, *lshrqi3, *cmpqi,
	cbranchqi4, *cpse.eq): Generalize to handle all 8-bit modes in ALL1.
	(*movhi, reload_inhi, addhi3, *addhi3, addhi3_clobber, subhi3,
	ashlhi3, *ashlhi3_const, ashrhi3, *ashirhi3_const, lshrhi3,
	*lshrhi3_const, *cmphi, cbranchhi4): Generalize to handle all
	16-bit modes in ALL2.
	(subhi3, casesi, strlenhi): Add clobber when expanding minus:HI.
	(*movsi, *reload_insi, addsi3, subsi3, ashlsi3, *ashlsi3_const,
	ashrsi3, *ashrhi3_const, *ashrsi3_const, lshrsi3, *lshrsi3_const,
	*reversed_tstsi, *cmpsi, cbranchsi4): Generalize to handle all
	32-bit modes in ALL4.
	* avr-dimode.md (ALL8): New mode iterator.
	(adddi3, adddi3_insn, adddi3_const_insn, subdi3, subdi3_insn,
	subdi3_const_insn, cbranchdi4, compare_di2,
	compare_const_di2, ashrdi3, lshrdi3, rotldi3, ashldi3_insn,
	ashrdi3_insn, lshrdi3_insn, rotldi3_insn): Generalize to handle
	all 64-bit modes in ALL8.
	* config/avr/avr-protos.h (avr_to_int_mode): New prototype.
	(avr_out_fract, avr_out_minus, avr_out_minus64): New prototypes.
	* config/avr/avr.c (TARGET_FIXED_POINT_SUPPORTED_P): Define to...
	(avr_fixed_point_supported_p): ...this new static function.
	(TARGET_BUILD_BUILTIN_VA_LIST): Define to...
	(avr_build_builtin_va_list): ...this new static function.
	(avr_adjust_type_node): New static function.
	(avr_scalar_mode_supported_p): Allow if ALL_FIXED_POINT_MODE_P.
	(avr_builtin_setjmp_frame_value): Use gen_subhi3 and return new
	pseudo instead of gen_rtx_MINUS.
	(avr_print_operand, avr_operand_rtx_cost): Handle: CONST_FIXED.
	(notice_update_cc): Handle: CC_MINUS.
	(output_movqi): Generalize to handle respective fixed-point modes.
	(output_movhi, output_movsisf, avr_2word_insn_p): Ditto.
	(avr_out_compare, avr_out_plus_1): Also handle fixed-point modes.
	(avr_assemble_integer): Ditto.
	(output_reload_in_const, output_reload_insisf): Ditto.
	(avr_compare_pattern): Skip all modes > 4 bytes.
	(avr_2word_insn_p): Skip movuqq_insn, movqq_insn.
	(avr_out_fract, avr_out_minus, avr_out_minus64): New functions.
	(avr_to_int_mode): New function.
	(adjust_insn_length): Handle: ADJUST_LEN_SFRACT,
	ADJUST_LEN_UFRACT, ADJUST_LEN_MINUS, ADJUST_LEN_MINUS64.
	* config/avr/predicates.md (const0_operand): Allow const_fixed.
	(const_operand, const_or_immediate_operand): New.
	(nonmemory_or_const_operand): New.
	* config/avr/constraints.md (Ynn, Y00, Y01, Y02, Ym1, Ym2, YIJ):
	New constraints.
	* config/avr/avr.h (LONG_LONG_ACCUM_TYPE_SIZE): Define.
From-SVN: r190644
Tobias Burnus [Fri, 24 Aug 2012 07:43:23 +0000 (09:43 +0200)]
 
re PR fortran/54350 (FAIL: gfortran.dg/realloc_on_assign_*.f90  -O  (internal compiler error) at r190586)
2012-08-24  Tobias Burnus  <burnus@net-b.de>
        PR fortran/54350
        * trans-array.c (free_ss_info): Free data.array.subscript.
        (gfc_free_ss): No longer free data.array.subscript.
        (walk_coarray): New function, moved from trans-intrinsic.c
        (gfc_conv_expr_descriptor): Walk array descriptor instead
        of taking passed "ss".
        (get_array_ctor_all_strlen, gfc_add_loop_ss_code,
        gfc_conv_array_parameter): Update call and cleanup ss handling.
        * trans-array.h (gfc_conv_expr_descriptor,
        gfc_conv_array_parameter): Update prototype.
        * trans-expr.c (gfc_conv_derived_to_class,
        conv_isocbinding_procedure, gfc_conv_procedure_call,
        gfc_trans_alloc_subarray_assign, gfc_trans_subcomponent_assign,
        gfc_trans_pointer_assignment, gfc_trans_arrayfunc_assign): Update
        call to gfc_conv_expr_descriptor and gfc_conv_array_parameter,
        and clean up.
        * trans-intrinsic.c (walk_coarray): Moved to trans-array.c
        (trans_this_image, trans_image_index, gfc_conv_intrinsic_rank
        gfc_conv_intrinsic_bound, gfc_conv_intrinsic_cobound,
        gfc_conv_intrinsic_len, gfc_conv_intrinsic_size,
        gfc_conv_intrinsic_sizeof, gfc_conv_intrinsic_storage_size,
        gfc_conv_intrinsic_transfer, gfc_conv_allocated,
        gfc_conv_associated, gfc_conv_intrinsic_loc,
        conv_intrinsic_move_alloc): Update calls.
        * trans-io.c (gfc_convert_array_to_string, set_internal_unit,
        gfc_trans_transfer): Ditto.
        * trans-stmt.c (gfc_conv_elemental_dependencies,
        gfc_trans_sync, trans_associate_var,
        gfc_trans_pointer_assign_need_temp): Ditto.
From-SVN: r190641
GCC Administrator [Fri, 24 Aug 2012 00:17:54 +0000 (00:17 +0000)]
 
Daily bump.
From-SVN: r190636
Richard Sandiford [Thu, 23 Aug 2012 20:40:07 +0000 (20:40 +0000)]
 
code-readable-4.c: New test.
gcc/testsuite/
	* gcc.target/mips/code-readable-4.c: New test.
From-SVN: r190630
Kenneth Zadeck [Thu, 23 Aug 2012 18:46:18 +0000 (18:46 +0000)]
 
alias.c (rtx_equal_for_memref_p): Convert constant cases.
2012-08-23  Kenneth Zadeck <zadeck@naturalbridge.com>
	* alias.c (rtx_equal_for_memref_p): Convert constant cases.
	* combine.c (find_single_use_1, mark_used_regs_combine): Convert
	to CASE_CONST_ANY.
 	* cse.c (exp_equiv_p, canon_reg, fold_rtx, cse_process_notes_1,
	count_reg_usage): Convert constant cases.
	* cselib.c (cselib_expand_value_rtx_1): Convert to
	CASE_CONST_ANY.
	(cselib_subst_to_values): Convert constant cases.
	* df-scan.c (df_uses_record): Ditto.
	* dse.c (const_or_frame_p): Convert case statements to explicit
	if-then-else using mode classes.
	* emit-rtl.c (verify_rtx_sharing, copy_insn_1): Convert constant cases.
	* explow.c (convert_memory_address_addr_space): Ditto.
	* gcse.c (want_to_gcse_p, oprs_unchanged_p, compute_transp): Ditto.
	* genattrtab.c (attr_copy_rtx, clear_struct_flag): Ditto.
	* ira.c (equiv_init_varies_p, contains_replace_regs,
	memref_referenced_p, rtx_moveable_p): Ditto.
	* jump.c (mark_jump_label_1): Remove constant cases.
	(rtx_renumbered_equal_p): Convert to CASE_CONST_UNIQUE.
	* loop-invariant.c (check_maybe_invariant, hash_invariant_expr_1,
	invariant_expr_equal_p): Convert to CASE_CONST_ANY.
	* postreload-gcse.c (oprs_unchanged_p): Convert constant cases.
	* reginfo.c (reg_scan_mark_refs): Ditto.
	* regrename.c (scan_rtx): Ditto.
	* reload1.c (eliminate_regs_1, elimination_effects,
	scan_paradoxical_subregs): Ditto.
	* reload.c (operands_match_p, subst_reg_equivs):  Ditto.
	* resource.c (mark_referenced_resources, mark_set_resources): Ditto.
	* rtlanal.c (rtx_unstable_p, rtx_varies_p, count_occurrences)
	(reg_mentioned_p, modified_between_p, modified_in_p)
	(volatile_insn_p, volatile_refs_p, side_effects_p, may_trap_p_1,
	inequality_comparisons_p, computed_jump_p_1): Ditto.
	* rtl.c (copy_rtx, rtx_equal_p_cb, rtx_equal_p): Ditto.
	* sched-deps.c (sched_analyze_2): Ditto.
	* valtrack.c (cleanup_auto_inc_dec): Ditto.
	* rtl.h: (CASE_CONST_SCALAR_INT, CASE_CONST_UNIQUE,
	CASE_CONST_ANY): New macros.
From-SVN: r190627
Jason Merrill [Thu, 23 Aug 2012 18:33:47 +0000 (14:33 -0400)]
 
* decl.c (compute_array_index_type): Use type_dependent_expression_p.
From-SVN: r190626
Julian Brown [Thu, 23 Aug 2012 15:42:03 +0000 (15:42 +0000)]
 
2012-08-23  Julian Brown  <julian@codesourcery.com>
	    Sandra Loosemore  <sandra@codesourcery.com>
	gcc/
	* config/mips/mips.md
	(UNSPEC_CASESI_DISPATCH): New.
	(MIPS16_T_REGNUM): New constant.
	(tablejump): Don't use for MIPS16_SHORT_JUMP_TABLES.
	(casesi): New.
	(casesi_internal_mips16_<mode>): New.
	* config/mips/mips.c (mips16_split_long_branches): Adjust test
	to ignore casesi jump tables.
	* config/mips/mips.h (TARGET_MIPS16_SHORT_JUMP_TABLES): Update
	comment.
	(CASE_VECTOR_MODE): Use SImode unconditionally.
	(CASE_VECTOR_SHORTEN_MODE): Define.
	(ASM_OUTPUT_ADDR_DIFF_ELT): Output word-sized addr_diff_elts
	when necessary for MIPS16_SHORT_JUMP_TABLES.
	gcc/testsuite/
	* gcc.target/mips/code-readable-1.c: Add -O to options.
Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
From-SVN: r190625
Georg-Johann Lay [Thu, 23 Aug 2012 15:41:03 +0000 (15:41 +0000)]
 
Makefile.in (fixed-funcs,fixed-conv-funcs): filter-out LIB2FUNCS_EXCLUDE before adding them to libgcc-objects, libgcc-s-objects.
	* Makefile.in (fixed-funcs,fixed-conv-funcs): filter-out
	LIB2FUNCS_EXCLUDE before adding them to libgcc-objects,
	libgcc-s-objects.
	* fixed-obj.mk: Only expand dependency if $o is not in
	LIB2FUNCS_EXCLUDE.
From-SVN: r190624
Arnaud Charlet [Thu, 23 Aug 2012 14:49:41 +0000 (14:49 +0000)]
 
c-ada-spec.c (dump_generic_ada_node): Fix handling of name_only for pointers, and add missing Convention C pragma.
	* c-ada-spec.c (dump_generic_ada_node): Fix handling of name_only
	for pointers, and add missing Convention C pragma.
	(print_ada_struct_decl): Add missing aliased keyword.
	(dump_ads): Add pragma Ada_2005 and Style_Checks (Off).
From-SVN: r190623
Bill Schmidt [Thu, 23 Aug 2012 14:41:24 +0000 (14:41 +0000)]
 
rs6000.c (rs6000_density_test): Free loop body.
2012-08-23  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
	* config/rs6000/rs6000.c (rs6000_density_test): Free loop body.
From-SVN: r190622
H.J. Lu [Thu, 23 Aug 2012 13:37:11 +0000 (13:37 +0000)]
 
Add -da and remove -dm in GCC manual
	PR driver/54335
	* doc/invoke.texi: Add -da and remove -dm.
From-SVN: r190621
Richard Guenther [Thu, 23 Aug 2012 11:17:29 +0000 (11:17 +0000)]
 
tree-vect-stmts.c (vect_finish_stmt_generation): Update virtual SSA form.
2012-08-23  Richard Guenther  <rguenther@suse.de>
	* tree-vect-stmts.c (vect_finish_stmt_generation): Update
	virtual SSA form.
From-SVN: r190620
Jakub Jelinek [Thu, 23 Aug 2012 10:02:40 +0000 (12:02 +0200)]
 
tree.c (copy_node_stat): Clear DECL_STRUCT_FUNCTION.
	* tree.c (copy_node_stat): Clear DECL_STRUCT_FUNCTION.
fortran/
	* trans-decl.c (trans_function_start, generate_coarray_init,
	create_main_function, gfc_generate_constructors): Call
	allocate_struct_function instead of init_function_start.
From-SVN: r190619
Paolo Carlini [Thu, 23 Aug 2012 09:44:08 +0000 (09:44 +0000)]
 
re PR c++/20420 (Incorrectly Accepts double declarations)
/cp
2012-08-23  Paolo Carlini  <paolo.carlini@oracle.com>
	PR c++/20420
	* name-lookup.c (supplement_binding_1): Handle specially enums
	only in class templates.
	(validate_nonmember_using_decl): Enforce 7.3.3/10 about duplicate
	using declarations at function scope.
/testsuite
2012-08-23  Paolo Carlini  <paolo.carlini@oracle.com>
	PR c++/20420
	* g++.dg/lookup/using53.C: New.
From-SVN: r190618
Mingjie Xing [Thu, 23 Aug 2012 09:30:24 +0000 (09:30 +0000)]
 
Fix typo in gty.texi.
From-SVN: r190617
Jonathan Wakely [Thu, 23 Aug 2012 08:37:19 +0000 (08:37 +0000)]
 
re PR libstdc++/54354 (TODO extended iomanip manipulators std::get_time and std::put_time (C++11, section 27.7.5))
	PR libstdc++/54354
	* doc/xml/manual/status_cxx2011.xml: Note missing manipulators.
	* doc/html/*: Regenerate.
From-SVN: r190616
Georg-Johann Lay [Thu, 23 Aug 2012 08:11:56 +0000 (08:11 +0000)]
 
convert.c: Split into manageable parts:
	* gcc.dg/fixed-point/convert.c: Split into manageable parts:
	* gcc.dg/fixed-point/convert-1.c: New.
	* gcc.dg/fixed-point/convert-2.c: New.
	* gcc.dg/fixed-point/convert-3.c: New.
	* gcc.dg/fixed-point/convert-4.c: New.
	* gcc.dg/fixed-point/convert-float-1.c: New.
	* gcc.dg/fixed-point/convert-float-2.c: New.
	* gcc.dg/fixed-point/convert-float-3.c: New.
	* gcc.dg/fixed-point/convert-float-4.c: New.
	* gcc.dg/fixed-point/convert-accum-neg.c: New.
	* gcc.dg/fixed-point/convert-sat.c: New.
	* gcc.dg/fixed-point/convert.h: New.
From-SVN: r190615
Richard Guenther [Thu, 23 Aug 2012 07:38:54 +0000 (07:38 +0000)]
 
tree-ssa-loop-manip.c (add_exit_phis_var): Allow virtual operands.
2012-08-23  Richard Guenther  <rguenther@suse.de>
	* tree-ssa-loop-manip.c (add_exit_phis_var): Allow virtual operands.
	(find_uses_to_rename_use): Likewise.
	(find_uses_to_rename_bb): Likewise.
	(find_uses_to_rename_stmt): Walk over all operands.
From-SVN: r190614
Ian Lance Taylor [Thu, 23 Aug 2012 04:58:30 +0000 (04:58 +0000)]
 
compiler: Comparisons return untyped boolean value.
From-SVN: r190612
Ian Lance Taylor [Thu, 23 Aug 2012 00:20:48 +0000 (00:20 +0000)]
 
compiler: Remove old handling of unsafe.Pointer in type assertions.
Fixes issue 17.
From-SVN: r190608
GCC Administrator [Thu, 23 Aug 2012 00:18:41 +0000 (00:18 +0000)]
 
Daily bump.
From-SVN: r190607
Oleg Endo [Wed, 22 Aug 2012 22:52:17 +0000 (22:52 +0000)]
 
re PR target/54089 ([SH] Refactor shift patterns)
	PR target/54089
	* config/sh/predicates (p27_rshift_count_operand,
	not_p27_rshift_count_operand): New predicates.
	* config/sh/sh.c (sh_ashlsi_clobbers_t_reg_p,
	sh_lshrsi_clobbers_t_reg_p, sh_dynamicalize_shift_p): Handle special
	case when shift amount is 31.
	(gen_ashift): Emit gen_shlr instead of gen_lshrsi3_m.
	* config/sh/sh.md (ashlsi3_d): Set type to 'dyn_shift' instead
	of 'arith'.
	(ashlsi_c): Rename to shll.  Adapt calls to gen_ashlsi_c throughout
	the file.
	(lshrsi3): Remove clobber from expander.  Use shift_count_operand
	instead of nonmemory_operand predicate for second operand.  Add
	handling of case lshrsi3_n_clobbers_t.
	(lshrsi3_k): Use p27_rshift_count_operand for second operand.
	(lshrsi3_d): Make insn_and_split.  Split dynamic shift to constant
	shift sequences if beneficial.
	(lshrsi3_n): Make insn_and_split.  Split constant shift sequence to
	dynamic shift if beneficial.
	(lshrsi3_n_clobbers_t): New insn_and_split.
	(lshrsi3_m): Delete.
	PR target/54089
	* gcc.target/sh/pr54089-2.c: New.
From-SVN: r190603