Commit Graph

110087 Commits

Author SHA1 Message Date
Jakub Jelinek 932ebb945f re PR fortran/49698 (Unmanageable compiler error)
PR fortran/49698
	* trans-stmt.c (gfc_trans_pointer_assign_need_temp): Initialize
	inner_size to gfc_index_one_node instead of integer_one_node.

	* gfortran.dg/pr49698.f90: New test.

From-SVN: r176164
2011-07-11 18:42:29 +02:00
Rainer Orth 4a8bb046a3 configure.ac (i?86-*-solaris2*): Use libgcc copy of i386/t-crtstuff.
* configure.ac (i?86-*-solaris2*): Use libgcc copy of
	i386/t-crtstuff.
	* configure: Regenerate.

From-SVN: r176163
2011-07-11 16:39:57 +00:00
Rainer Orth feffaec40f sol2.h [!USE_GLD] (CTORS_SECTION_ASM_OP): Define.
* config/i386/sol2.h [!USE_GLD] (CTORS_SECTION_ASM_OP): Define.
	(DTORS_SECTION_ASM_OP): Define.

From-SVN: r176162
2011-07-11 16:35:53 +00:00
Jeff Law 699010bab1 uninit-pred-8_b.c: Disable dominator optimizations.
* gcc.dg/uninit-pred-8_b.c: Disable dominator optimizations.

From-SVN: r176160
2011-07-11 09:25:48 -06:00
Rainer Orth 516b2ca73b * EXCLUDES (libgcov.c): Remove.
From-SVN: r176158
2011-07-11 14:43:42 +00:00
Rainer Orth 2d8d59352b dfp-bit.c, dfp-bit.h: Move to ../libgcc.
gcc:
	* config/dfp-bit.c, config/dfp-bit.h: Move to ../libgcc.
	* config/t-dfprules: Move to ../libgcc/config.
	* config.gcc (i[34567]86-*-linux*, i[34567]86-*-kfreebsd*-gnu,
	i[34567]86-*-knetbsd*-gnu, i[34567]86-*-gnu*,
	i[34567]86-*-kopensolaris*-gnu): Remove t-dfprules from tmake_file.
	(x86_64-*-linux*, x86_64-*-kfreebsd*-gnu, x86_64-*-knetbsd*-gnu):
	Likewise.
	(i[34567]86-*-cygwin*): Likewise.
	(i[34567]86-*-mingw*,  x86_64-*-mingw*): Likewise.
	(powerpc-*-linux*, powerpc64-*-linux*): Likewise.
	* Makefile.in (D32PBIT_FUNCS, D64PBIT_FUNCS, D128PBIT_FUNCS): Remove.
	(libgcc.mvars): Remove DFP_ENABLE, DFP_CFLAGS, D32PBIT_FUNCS,
	D64PBIT_FUNCS, D128PBIT_FUNCS.

	libgcc:
	* dfp-bit.c, dfp-bit.h: New files.
	* Makefile.in (D32PBIT_FUNCS, D64PBIT_FUNCS, D128PBIT_FUNCS): New
	variables.
	($(d32pbit-o)): Use $(srcdir) to refer to dfp-bit.c
	($(d64pbit-o)): Likewise.
	($(d128pbit-o)): Likewise.
	* config/t-dfprules: New file.
	* config.host (i[34567]86-*-linux*): Add t-dfprules to tmake_file.
	(i[34567]86-*-kfreebsd*-gnu, i[34567]86-*-knetbsd*-gnu,
	i[34567]86-*-gnu*, i[34567]86-*-kopensolaris*-gnu): Likewise.
	(x86_64-*-linux*): Likewise.
	(x86_64-*-kfreebsd*-gnu, x86_64-*-knetbsd*-gnu): Likewise.
	(i[34567]86-*-cygwin*): Likewise.
	(i[34567]86-*-mingw*,  x86_64-*-mingw*): Likewise.
	(powerpc-*-linux*, powerpc64-*-linux*): Likewise.

From-SVN: r176156
2011-07-11 14:40:56 +00:00
Richard Guenther dcc95c2088 tree-vrp.c (simplify_conversion_using_ranges): Manually translate the source value-range through the conversion chain.
2011-07-11  Richard Guenther  <rguenther@suse.de>

	* tree-vrp.c (simplify_conversion_using_ranges): Manually
	translate the source value-range through the conversion chain.

From-SVN: r176154
2011-07-11 14:27:04 +00:00
H.J. Lu f07e929dd8 Check ia32 effective target.
2011-07-11  H.J. Lu  <hongjiu.lu@intel.com>

	* gcc.dg/vect/costmodel/x86_64/x86_64-costmodel-vect.exp: Check
	ia32.
	* go.test/go-test.exp (go-set-goarch): Likewise.

From-SVN: r176153
2011-07-11 06:29:29 -07:00
Daniel Carrera 969cc91571 Add my name (Daniel Carrera) to the "Write After Approval" list.
From-SVN: r176152
2011-07-11 12:17:55 +00:00
Richard Sandiford 28164eedaf expr.c (expand_expr_real_1): Use expand_insn for movmisalign.
gcc/
	* expr.c (expand_expr_real_1): Use expand_insn for movmisalign.

From-SVN: r176150
2011-07-11 12:11:33 +00:00
Arthur Loiret f305422365 config.gcc (s390-*-linux*): If 'enabled_targets' is 'all', build a bi-arch compiler defaulting to 31-bit.
2011-07-11  Arthur Loiret  <aloiret@debian.org>

        * config.gcc (s390-*-linux*): If 'enabled_targets' is 'all', build
        a bi-arch compiler defaulting to 31-bit. In this case:
        (tmake_file): Add s390/t-linux64.
        * doc/install.texi: Add s390-linux to the list of targets supporting
        --enable-targets=all.

From-SVN: r176146
2011-07-11 11:41:56 +00:00
Arthur Loiret bd5ab709de config.gcc (mips*-*-linux*): If 'enabled_targets' is 'all'...
2011-07-11  Arthur Loiret  <aloiret@debian.org>
            Matthias Klose <doko@debian.org>

        * config.gcc (mips*-*-linux*): If 'enabled_targets' is 'all', build
        a tri-arch compiler defaulting to 32-bit (ABI o32). In this case:
        (tm_file): Add mips/linux64.h.
        (tmake_file): Add mips/t-linux64.
        (tm_defines): Add MIPS_ABI_DEFAULT=ABI_32.
        * config/mips/linux64.h (DRIVER_SELF_SPECS): Use MULTILIB_ABI_DEFAULT
        instead of hardcoded mabi=n32.
        * config/mips/t-linux64 (MULTILIB_DIRNAMES): Set to 'n32 . 64' if
        tm_defines contains MIPS_ABI_DEFAULT ABI_32, to follow the glibc
        convention.

Co-Authored-By: Matthias Klose <doko@debian.org>

From-SVN: r176145
2011-07-11 11:22:15 +00:00
Andreas Krebbel d3b7e946d7 passes.c (init_optimization_passes): Add invariant motion pass after induction variable optimization.
2011-07-11  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* passes.c (init_optimization_passes): Add invariant motion pass
	after induction variable optimization.

From-SVN: r176142
2011-07-11 10:23:57 +00:00
Georg-Johann Lay 7e4ec472ee re PR target/39633 ([avr] loop bug: missing 8-bit comparison (*cmpqi))
gcc/
	PR target/39633
	* config/avr/avr.c (notice_update_cc): For ashiftrt:QI, only
	offsets 1..5 set cc0 in a usable way.

testsuite/
	PR target/39633
	* gcc.target/avr/torture/pr39633.c: New test case.

From-SVN: r176141
2011-07-11 10:13:30 +00:00
Romain Geissler 0e65e6311b tree.h (call_expr_arg): Remove.
2011-07-11  Romain Geissler  <romain.geissler@gmail.com>

        * tree.h (call_expr_arg): Remove. 
        (call_expr_argp): Likewise.

From-SVN: r176140
2011-07-11 10:00:54 +00:00
Nicola Pero a8f18c4037 In gcc/objc/: 2011-07-11 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/objc/:
2011-07-11  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-encoding.h (obstack.h): Do not include.
	(util_obstack, util_firstobj): Do not declare.
	(encode_field_decl): Updated prototype to return a tree and take a
	single tree argument.  Updated comments.
	* objc-encoding.c (util_obstack, util_firstobj): Made static.
	(objc_encoding_init): New.
	(encode_field_decl): Existing function renamed to encode_field and
	made static.  New encode_field_decl wrapper function added.
	(encode_aggregate_fields): Update call to encode_field_decl to
	call encode_field.
	* objc-next-runtime-abi-02.c (obstack.h): Do not include.
	(util_obstack, util_firstobj): Do not declare.
	(build_v2_ivar_list_initializer): Updated call to
	encode_field_decl.
	* objc-runtime-shared-support.c (obstack.h): Do not include.
	(util_obstack, util_firstobj): Do not declare.
	(build_ivar_list_initializer): Updated call to encode_field_decl.
	* objc-act.c (objc_init): Use objc_encoding_init.
	* Make-lang.in (objc/objc-runtime-shared-support.o): Do not depend
	on OBSTACK_H.
	(objc/objc-gnu-runtime-abi-01.o): Likewise.
	(objc/objc-next-runtime-abi-01.o): Likewise.
	(objc/objc-next-runtime-abi-02.o): Likewise.
	(objc/objc-act.o): Likewise.
	
In gcc/objcp/:
2011-07-11  Nicola Pero  <nicola.pero@meta-innovation.com>

	* Make-lang.in (objcp/objc-runtime-shared-support.o): Do not
	depend on OBSTACK_H.
	(objcp/objc-gnu-runtime-abi-01.o): Likewise.
	(objcp/objc-next-runtime-abi-01.o): Likewise.
	(objcp/objc-next-runtime-abi-02.o): Likewise.
	(objcp/objcp-act.o): Likewise.

From-SVN: r176139
2011-07-11 09:42:23 +00:00
Eric Botcazou 18970372c2 sparc.md (save_register_window_1): Rename to...
* config/sparc/sparc.md (save_register_window_1): Rename to...
	(window_save): ...this.
	* config/sparc/sparc.c (emit_save_register_window): Rename to...
	(emit_window_save): ...this.
	(sparc_expand_prologue): Adjust to above renaming.

From-SVN: r176138
2011-07-11 09:35:35 +00:00
Tobias Burnus 790f025f34 re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2011-07-11  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * gfortran.dg/coarray_lock_3.f90: Remove bogus dg-error.

From-SVN: r176137
2011-07-11 10:14:05 +02:00
Georg-Johann Lay 5097ad6c90 target-supports.exp (check_effective_target_scheduling): New Function.
* lib/target-supports.exp (check_effective_target_scheduling):
	New Function.
	* gcc.dg/pr46614.c: Add dg-require-effective-target scheduling.
	* gcc.dg/pr45055.c: Ditto.
	* gcc.dg/pr45353.c: Ditto.
	* g++.dg/pr45056.C: Ditto.

From-SVN: r176136
2011-07-11 07:54:17 +00:00
Georg-Johann Lay 7ae3b0b64e struct-by-value-16_main.c: Skip AVR.
* gcc.dg/compat/struct-by-value-16_main.c: Skip AVR.
	* gcc.dg/compat/struct-by-value-17_main.c: Skip AVR.
	* gcc.dg/compat/struct-by-value-18_main.c: Skip AVR.
	* g++.dg/torture/pr31863.C: Skip AVR.

From-SVN: r176135
2011-07-11 07:52:23 +00:00
GCC Administrator 6f14a85e09 Daily bump.
From-SVN: r176133
2011-07-11 00:18:57 +00:00
H.J. Lu 9e419e387c Use movl instead of movabs for x32.
2011-07-10  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/i386.c (ix86_trampoline_init): Use movl instead
	of movabs for x32.

From-SVN: r176129
2011-07-10 14:42:08 -07:00
Richard Henderson 3db72de312 i386.c (x86_output_mi_thunk): Generate rtl and run final, instead of emitting text directly.
* config/i386/i386.c (x86_output_mi_thunk): Generate rtl and
        run final, instead of emitting text directly.

From-SVN: r176128
2011-07-10 14:12:57 -07:00
H.J. Lu a1f91bca13 Turn on 64bit and check models for x32.
2011-07-10  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/i386.c (ix86_option_override_internal): Turn on
	OPTION_MASK_ISA_64BIT for TARGET_X32.  Only allow small and
	small PIC models for TARGET_X32.

From-SVN: r176127
2011-07-10 12:25:28 -07:00
Tobias Burnus 89560a3c2c re PR fortran/49690 (ICE in gfc_typenode_for_spec, at fortran/trans-types.c:1019)
2011-07-10  Tobias Burnus  <burnus@net-b.de>

        PR fortran/49690
        * intrinsic.c (add_functions): Use BT_VOID for 2nd argument of
        * SIGNAL.

2011-07-10  Tobias Burnus  <burnus@net-b.de>

        PR fortran/49690
        * gfortran.dg/intrinsic_signal.f90: New.

From-SVN: r176121
2011-07-10 16:28:48 +02:00
Jason Merrill 53130f7560 re PR c++/49691 (ICE in cp_parser_late_return_type_opt, at cp/parser.c:15562)
PR c++/49691
	* parser.c (cp_parser_late_return_type_opt): Check quals parameter
	rather than current_class_type to determine whether to set 'this'.
	(cp_parser_direct_declarator): Pass -1 to quals if member_p is false.
	(cp_parser_init_declarator): Pass down member_p.

From-SVN: r176120
2011-07-10 10:24:03 -04:00
GCC Administrator 7746ff43a6 Daily bump.
From-SVN: r176115
2011-07-10 00:17:54 +00:00
Hans-Peter Nilsson 9a0b29f0ce re PR target/49684 (build fails on crtstuff.c / crtbegin using default CRT_CALL_STATIC_FUNCTION)
PR target/49684
	* config/cris/t-elfmulti (CRTSTUFF_T_CFLAGS): Don't include
	$(LIBGCC2_CFLAGS).

From-SVN: r176111
2011-07-09 22:36:12 +00:00
Hans-Peter Nilsson a50023f9a8 re PR bootstrap/49680 (IRIX 6.5 bootstrap broken: SEGV in __register_frame_info_bases)
PR bootstrap/49680
	* config/cris/cris.c (cris_asm_output_case_end): Robustify against
	stray notes and debug insns by using prev_nonnote_nondebug_insn
	instead of PREV_INSN.

From-SVN: r176110
2011-07-09 22:35:43 +00:00
Tobias Burnus f6da75edeb error.c (sys_abort): Change argument list from "()" to "(void)".
2011-07-09  Tobias Burnus  <burnus@net-b.de>

        * runtime/error.c (sys_abort): Change argument list
        from "()" to "(void)".

From-SVN: r176109
2011-07-09 23:22:44 +02:00
Richard Henderson 948d330ea9 dwarf2: Move CFI output routines to dwarf2cfi.c.
* defaults.h (DWARF2_ADDR_SIZE, DWARF_OFFSET_SIZE,
        DWARF_TYPE_SIGNATURE_SIZE): Move from ...
        * dwarf2out.c: ... here.
        (output_all_cfis): Remove.
        (dwarf2out_switch_text_section): Use output_cfis directly.
        (size_of_locs): Export.
        (output_loc_sequence, output_loc_sequence_raw): Export.
        (div_data_align, need_data_align_sf_opcode, dwarf_cfi_name, output_cfi,
        output_cfi_directive, dwarf2out_emit_cfi, output_cfis, output_cfa_loc,
        output_cfa_loc_raw): Move to ...
        * dwarfcfi.c: ... here.
        * dwarf2out.h: Update decls.

From-SVN: r176107
2011-07-09 13:56:42 -07:00
Richard Henderson db42e39d81 dwarf2: Reduce some redundant definitions.
Move some definitions to defaults.h; some simply aren't needed
anymore in the respective dwarf2{cfi,out}.c files.

        * defaults.h (DWARF_CIE_DATA_ALIGNMENT, DWARF_FRAME_RETURN_COLUMN,
        DWARF_FRAME_REGNUM, DWARF2_FRAME_REG_OUT): Move from ...
        * dwarf2cfi.c: ... here.
        (PTR_SIZE, DWARF_OFFSET_SIZE, DWARF_INITIAL_LENGTH_SIZE): Remove.
        (DWARF_ROUND, DWARF_CIE_ID): Remove.
        * dwarf2out.c (INCOMING_RETURN_ADDR_RTX): Remove.
        (DWARF2_FRAME_REG_OUT, DWARF_CIE_DATA_ALIGNMENT): Remove.
        (DWARF_FRAME_RETURN_COLUMN, DWARF_FRAME_REGNUM): Remove.

From-SVN: r176102
2011-07-09 13:43:06 -07:00
Richard Henderson a8e5c0e77e dwarf2cfi: Handle return column save from CIE.
When we record a save of the return column in the CIE, remember
that while processing the FDE.  This requires propagating the
handling of PC_RTX as a representative of the return column to
more locations.

MIPS had been handling this case by hand, and is no longer required.

        * dwarf2cfi.c (cie_return_save): New.
        (queue_reg_save): Use compare_reg_or_pc.
        (dwarf2out_flush_queued_reg_saves): Handle pc_rtx as return column.
        (dwarf2out_frame_debug_expr): Likewise.
        (dwarf2out_frame_debug_cfa_register): Record saved reg for pc too.
        (initial_return_save): Likewise.
        (execute_dwarf2_frame): Save and restore initial return save from
        the cie to the fde.
        * config/mips/mips.c (mips_frame_set): Remove special case for
        DWARF_FRAME_RETURN_COLUMN.

From-SVN: r176099
2011-07-09 13:39:00 -07:00
Richard Henderson 4a8ee12241 dwarf2cfi: Simplify re-initialization for each function.
There's no point calling lookup_cfa to re-create the CFA
we initialized just a few lines above.

        * dwarf2cfi.c (lookup_cfa): Remove.
        (execute_dwarf2_frame): Assert queues are empty on entry.
        Setup initial cfa directly, not via lookup_cfa.
        Don't clear args_size state here.

From-SVN: r176098
2011-07-09 13:30:07 -07:00
Richard Henderson 3edb53aaae dwarf2cfi: Unify add_fde_cfi and add_cie_cfi.
* dwarf2cfi.c (add_cfi_vec): New.
        (add_cfi): Rename from add_fde_cfi.  Add the element to add_cfi_vec.
        (def_cfa_1, reg_save): Remove for_cie argument.  Update all callers.
        (execute_dwarf2_frame): Set add_cfi_vec.

From-SVN: r176095
2011-07-09 13:26:43 -07:00
Richard Henderson ded49a7f6c Move ASM_COMMENT_START to defaults.h.
Note the extreme silliness in dwarf2out.c with 3 (three) copies.

        * defaults.h (ASM_COMMENT_START): Move here...
        * dwarf2asm.c: ... from here.
        * dwarf2out.c, final.c, vmsdbgout.c: Remove duplicates.
        * toplev.c: Remove ifndef tests of ASM_COMMENT_START.
        * varasm.c: Likewise.

From-SVN: r176093
2011-07-09 13:18:32 -07:00
Richard Henderson 45fba6d114 re PR rtl-optimization/49686 (CFI notes are missed for delayed slot)
PR debug/49686
	* dwarf2cfi.c (dwarf2out_frame_debug): Don't set cfi_insn here...
	(create_cfi_notes): ... do it here instead.

From-SVN: r176091
2011-07-09 12:57:27 -07:00
H.J. Lu dbbb299a30 Add x32 support to GCC testsuite.
2011-07-09  H.J. Lu  <hongjiu.lu@intel.com>

	* c-c++-common/dfp/func-vararg-alternate-d128-2.c: Support x32.
	* c-c++-common/dfp/func-vararg-mixed-2.c: Likewise.
	* g++.dg/abi/bitfield3.C: Likewise.
	* g++.dg/eh/pr38662.C: Likewise.
	* g++.dg/ext/attrib36.C: Likewise.
	* g++.dg/ext/attrib37.C: Likewise.
	* g++.dg/ext/attrib8.C: Likewise.
	* g++.dg/ext/tmplattr1.C: Likewise.
	* g++.dg/inherit/override-attribs.C: Likewise.
	* g++.dg/opt/inline9.C: Likewise.
	* g++.dg/opt/life1.C: Likewise.
	* g++.dg/opt/longbranch2.C: Likewise.
	* g++.dg/opt/nrv12.C: Likewise.
	* g++.dg/opt/reg-stack4.C: Likewise.
	* g++.dg/other/pr35504.C: Likewise.
	* g++.dg/other/pr39496.C: Likewise.
	* g++.dg/torture/stackalign/eh-fastcall-1.C: Likewise.
	* g++.dg/torture/stackalign/eh-thiscall-1.C: Likewise.
	* g++.dg/torture/stackalign/stdcall-1.C: Likewise.
	* g++.dg/torture/stackalign/unwind-0.C: Likewise.
	* g++.dg/torture/stackalign/unwind-1.C: Likewise.
	* g++.dg/torture/stackalign/unwind-2.C: Likewise.
	* g++.dg/torture/stackalign/unwind-3.C: Likewise.
	* g++.dg/torture/stackalign/unwind-4.C: Likewise.
	* g++.dg/torture/stackalign/unwind-5.C: Likewise.
	* g++.dg/torture/stackalign/unwind-6.C: Likewise.
	* g++.dg/warn/pr15774-1.C: Likewise.
	* g++.dg/warn/pr15774-2.C: Likewise.
	* g++.old-deja/g++.ext/attrib1.C: Likewise.
	* g++.old-deja/g++.ext/attrib2.C: Likewise.
	* g++.old-deja/g++.ext/attrib3.C: Likewise.
	* g++.old-deja/g++.pt/asm2.C: Likewise.
	* gcc.c-torture/compile/20000804-1.c: Likewise.
	* gcc.c-torture/compile/pr16566-2.c: Likewise.
	* gcc.c-torture/execute/ieee/ieee.exp: Likewise.
	* gcc.dg/20020108-1.c: Likewise.
	* gcc.dg/20020122-2.c: Likewise.
	* gcc.dg/20020122-3.c: Likewise.
	* gcc.dg/20020206-1.c: Likewise.
	* gcc.dg/20020219-1.c: Likewise.
	* gcc.dg/20020310-1.c: Likewise.
	* gcc.dg/20020411-1.c: Likewise.
	* gcc.dg/20020418-2.c: Likewise.
	* gcc.dg/20020426-2.c: Likewise.
	* gcc.dg/20020517-1.c: Likewise.
	* gcc.dg/20030204-1.c: Likewise.
	* gcc.dg/20030826-2.c: Likewise.
	* gcc.dg/20031102-1.c: Likewise.
	* gcc.dg/20031202-1.c: Likewise.
	* gcc.dg/20050111-1.c: Likewise.
	* gcc.dg/20050503-1.c: Likewise.
	* gcc.dg/array-init-1.c: Likewise.
	* gcc.dg/builtin-apply4.c: Likewise.
	* gcc.dg/dfp/pr31344.c: Likewise.
	* gcc.dg/gomp/atomic-11.c: Likewise.
	* gcc.dg/graphite/pr40281.c: Likewise.
	* gcc.dg/ia64-sync-1.c: Likewise.
	* gcc.dg/ia64-sync-2.c: Likewise.
	* gcc.dg/ia64-sync-3.c: Likewise.
	* gcc.dg/ia64-sync-4.c: Likewise.
	* gcc.dg/ifcvt-fabs-1.c: Likewise.
	* gcc.dg/invalid-call-1.c: Likewise.
	* gcc.dg/loop-3.c: Likewise.
	* gcc.dg/lower-subreg-1.c: Likewise.
	* gcc.dg/lto/pr47259_0.c: Likewise.
	* gcc.dg/nested-calls-1.c: Likewise.
	* gcc.dg/pr20017.c: Likewise.
	* gcc.dg/pr25023.c: Likewise.
	* gcc.dg/pr27671-2.c: Likewise.
	* gcc.dg/pr32176.c: Likewise.
	* gcc.dg/pr33676.c: Likewise.
	* gcc.dg/pr35045.c: Likewise.
	* gcc.dg/pr36015.c: Likewise.
	* gcc.dg/pr36584.c: Likewise.
	* gcc.dg/pr36998.c: Likewise.
	* gcc.dg/pr37438.c: Likewise.
	* gcc.dg/pr37908.c: Likewise.
	* gcc.dg/pr41241.c: Likewise.
	* gcc.dg/pr41340.c: Likewise.
	* gcc.dg/pr44136.c: Likewise.
	* gcc.dg/pr44194-1.c: Likewise.
	* gcc.dg/pr46212.c: Likewise.
	* gcc.dg/prefetch-loop-arrays-1.c: Likewise.
	* gcc.dg/setjmp-2.c: Likewise.
	* gcc.dg/short-compare-1.c: Likewise.
	* gcc.dg/short-compare-2.c: Likewise.
	* gcc.dg/smod-1.c: Likewise.
	* gcc.dg/sync-2.c: Likewise.
	* gcc.dg/sync-3.c: Likewise.
	* gcc.dg/tls/opt-1.c: Likewise.
	* gcc.dg/tls/opt-2.c: Likewise.
	* gcc.dg/tls/opt-3.c: Likewise.
	* gcc.dg/torture/badshift.c: Likewise.
	* gcc.dg/torture/fp-int-convert-float80-timode.c: Likewise.
	* gcc.dg/torture/pr20314-2.c: Likewise.
	* gcc.dg/torture/pr36891.c: Likewise.
	* gcc.dg/torture/pr38774.c: Likewise.
	* gcc.dg/torture/stackalign/alloca-2.c: Likewise.
	* gcc.dg/torture/stackalign/alloca-4.c: Likewise.
	* gcc.dg/torture/stackalign/alloca-5.c: Likewise.
	* gcc.dg/torture/stackalign/alloca-6.c: Likewise.
	* gcc.dg/torture/stackalign/fastcall-1.c: Likewise.
	* gcc.dg/torture/stackalign/push-1.c: Likewise.
	* gcc.dg/torture/stackalign/regparm-1.c: Likewise.
	* gcc.dg/torture/stackalign/thiscall-1.c: Likewise.
	* gcc.dg/tree-ssa/loop-28.c: Likewise.
	* gcc.dg/tree-ssa/prefetch-3.c: Likewise.
	* gcc.dg/tree-ssa/prefetch-4.c: Likewise.
	* gcc.dg/tree-ssa/prefetch-5.c: Likewise.
	* gcc.dg/tree-ssa/prefetch-6.c: Likewise.
	* gcc.dg/tree-ssa/prefetch-7.c: Likewise.
	* gcc.dg/tree-ssa/prefetch-8.c: Likewise.
	* gcc.dg/tree-ssa/prefetch-9.c: Likewise.
	* gcc.dg/tree-ssa/stdarg-2.c: Likewise.
	* gcc.dg/tree-ssa/stdarg-3.c: Likewise.
	* gcc.dg/tree-ssa/stdarg-4.c: Likewise.
	* gcc.dg/tree-ssa/stdarg-5.c: Likewise.
	* gcc.dg/tree-ssa/update-unroll-1.c: Likewise.
	* gcc.dg/unroll-1.c: Likewise.
	* gcc.dg/vect/costmodel/x86_64/x86_64-costmodel-vect.exp: Likewise.
	* gcc.misc-tests/i386-pf-3dnow-1.c: Likewise.
	* gcc.misc-tests/i386-pf-athlon-1.c: Likewise.
	* gcc.misc-tests/i386-pf-none-1.c: Likewise.
	* gcc.misc-tests/i386-pf-sse-1.c: Likewise.
	* gcc.target/i386/20000609-1.c: Likewise.
	* gcc.target/i386/20000720-1.c: Likewise.
	* gcc.target/i386/20000724-1.c: Likewise.
	* gcc.target/i386/20011107-1.c: Likewise.
	* gcc.target/i386/20011119-1.c: Likewise.
	* gcc.target/i386/20020201-3.c: Likewise.
	* gcc.target/i386/20020218-1.c: Likewise.
	* gcc.target/i386/20020729-1.c: Likewise.
	* gcc.target/i386/20030926-1.c: Likewise.
	* gcc.target/i386/20060125-1.c: Likewise.
	* gcc.target/i386/20060125-2.c: Likewise.
	* gcc.target/i386/20060512-1.c: Likewise.
	* gcc.target/i386/20060512-2.c: Likewise.
	* gcc.target/i386/20060512-3.c: Likewise.
	* gcc.target/i386/20060512-4.c: Likewise.
	* gcc.target/i386/387-1.c: Likewise.
	* gcc.target/i386/387-2.c: Likewise.
	* gcc.target/i386/387-5.c: Likewise.
	* gcc.target/i386/387-6.c: Likewise.
	* gcc.target/i386/980312-1.c: Likewise.
	* gcc.target/i386/980313-1.c: Likewise.
	* gcc.target/i386/990117-1.c: Likewise.
	* gcc.target/i386/990424-1.c: Likewise.
	* gcc.target/i386/990524-1.c: Likewise.
	* gcc.target/i386/991129-1.c: Likewise.
	* gcc.target/i386/991214-1.c: Likewise.
	* gcc.target/i386/991230-1.c: Likewise.
	* gcc.target/i386/addr-sel-1.c: Likewise.
	* gcc.target/i386/aggregate-ret1.c: Likewise.
	* gcc.target/i386/aggregate-ret2.c: Likewise.
	* gcc.target/i386/align-main-3.c: Likewise.
	* gcc.target/i386/amd64-abi-1.c: Likewise.
	* gcc.target/i386/amd64-abi-2.c: Likewise.
	* gcc.target/i386/amd64-abi-4.c: Likewise.
	* gcc.target/i386/amd64-abi-5.c: Likewise.
	* gcc.target/i386/amd64-abi-6.c: Likewise.
	* gcc.target/i386/asm-1.c: Likewise.
	* gcc.target/i386/asm-3.c: Likewise.
	* gcc.target/i386/asm-5.c: Likewise.
	* gcc.target/i386/attributes-error.c: Likewise.
	* gcc.target/i386/avx-vcvtsd2si-2.c: Likewise.
	* gcc.target/i386/avx-vcvtsi2sd-2.c: Likewise.
	* gcc.target/i386/avx-vcvtsi2ss-2.c: Likewise.
	* gcc.target/i386/avx-vcvtss2si-2.c: Likewise.
	* gcc.target/i386/avx-vcvttsd2si-2.c: Likewise.
	* gcc.target/i386/avx-vcvttss2si-2.c: Likewise.
	* gcc.target/i386/avx-vinsertps-3.c: Likewise.
	* gcc.target/i386/avx-vmovd-2.c: Likewise.
	* gcc.target/i386/avx-vmovq-2.c: Likewise.
	* gcc.target/i386/avx-vmovq-3.c: Likewise.
	* gcc.target/i386/avx-vpextrq-1.c: Likewise.
	* gcc.target/i386/avx-vpinsrq-1.c: Likewise.
	* gcc.target/i386/avx-vzeroupper-16.c: Likewise.
	* gcc.target/i386/avx-vzeroupper-17.c: Likewise.
	* gcc.target/i386/avx-vzeroupper-18.c: Likewise.
	* gcc.target/i386/bitfield1.c: Likewise.
	* gcc.target/i386/bitfield2.c: Likewise.
	* gcc.target/i386/bmi-2.c: Likewise.
	* gcc.target/i386/bmi-5.c: Likewise.
	* gcc.target/i386/builtin-unreachable.c: Likewise.
	* gcc.target/i386/cleanup-2.c: Likewise.
	* gcc.target/i386/clobbers.c: Likewise.
	* gcc.target/i386/cmov8.c: Likewise.
	* gcc.target/i386/cmpxchg16b-1.c: Likewise.
	* gcc.target/i386/compress-float-387-pic.c: Likewise.
	* gcc.target/i386/compress-float-387.c: Likewise.
	* gcc.target/i386/compress-float-sse-pic.c: Likewise.
	* gcc.target/i386/compress-float-sse.c: Likewise.
	* gcc.target/i386/crc32-2.c: Likewise.
	* gcc.target/i386/crc32-3.c: Likewise.
	* gcc.target/i386/divmod-7.c: Likewise.
	* gcc.target/i386/divmod-8.c: Likewise.
	* gcc.target/i386/fastcall-sseregparm.c: Likewise.
	* gcc.target/i386/fma3-builtin.c: Likewise.
	* gcc.target/i386/fma3-fma.c: Likewise.
	* gcc.target/i386/fma4-256-vector.c: Likewise.
	* gcc.target/i386/fma4-builtin.c: Likewise.
	* gcc.target/i386/fma4-fma-2.c: Likewise.
	* gcc.target/i386/fma4-fma.c: Likewise.
	* gcc.target/i386/fma4-vector-2.c: Likewise.
	* gcc.target/i386/fma4-vector.c: Likewise.
	* gcc.target/i386/funcspec-1.c: Likewise.
	* gcc.target/i386/funcspec-10.c: Likewise.
	* gcc.target/i386/funcspec-11.c: Likewise.
	* gcc.target/i386/funcspec-2.c: Likewise.
	* gcc.target/i386/funcspec-5.c: Likewise.
	* gcc.target/i386/funcspec-6.c: Likewise.
	* gcc.target/i386/gcc-have-sync-compare-and-swap-1.c: Likewise.
	* gcc.target/i386/gcc-have-sync-compare-and-swap-2.c: Likewise.
	* gcc.target/i386/gcc-have-sync-compare-and-swap-3.c: Likewise.
	* gcc.target/i386/gcc-have-sync-compare-and-swap-4.c: Likewise.
	* gcc.target/i386/incoming-1.c: Likewise.
	* gcc.target/i386/incoming-10.c: Likewise.
	* gcc.target/i386/incoming-11.c: Likewise.
	* gcc.target/i386/incoming-12.c: Likewise.
	* gcc.target/i386/incoming-13.c: Likewise.
	* gcc.target/i386/incoming-14.c: Likewise.
	* gcc.target/i386/incoming-15.c: Likewise.
	* gcc.target/i386/incoming-2.c: Likewise.
	* gcc.target/i386/incoming-3.c: Likewise.
	* gcc.target/i386/incoming-4.c: Likewise.
	* gcc.target/i386/incoming-5.c: Likewise.
	* gcc.target/i386/incoming-6.c: Likewise.
	* gcc.target/i386/incoming-7.c: Likewise.
	* gcc.target/i386/incoming-8.c: Likewise.
	* gcc.target/i386/incoming-9.c: Likewise.
	* gcc.target/i386/lea.c: Likewise.
	* gcc.target/i386/local.c: Likewise.
	* gcc.target/i386/loop-1.c: Likewise.
	* gcc.target/i386/loop-2.c: Likewise.
	* gcc.target/i386/loop-3.c: Likewise.
	* gcc.target/i386/max-stack-align.c: Likewise.
	* gcc.target/i386/memcpy-1.c: Likewise.
	* gcc.target/i386/movbe-2.c: Likewise.
	* gcc.target/i386/movq-2.c: Likewise.
	* gcc.target/i386/movq.c: Likewise.
	* gcc.target/i386/nrv1.c: Likewise.
	* gcc.target/i386/pad-4.c: Likewise.
	* gcc.target/i386/pad-5a.c: Likewise.
	* gcc.target/i386/pad-5b.c: Likewise.
	* gcc.target/i386/pad-6a.c: Likewise.
	* gcc.target/i386/pad-6b.c: Likewise.
	* gcc.target/i386/pad-7.c: Likewise.
	* gcc.target/i386/pad-9.c: Likewise.
	* gcc.target/i386/pentium4-not-mull.c: Likewise.
	* gcc.target/i386/pic-1.c: Likewise.
	* gcc.target/i386/pr12092-1.c: Likewise.
	* gcc.target/i386/pr12329.c: Likewise.
	* gcc.target/i386/pr21518.c: Likewise.
	* gcc.target/i386/pr22362.c: Likewise.
	* gcc.target/i386/pr22585.c: Likewise.
	* gcc.target/i386/pr23098.c: Likewise.
	* gcc.target/i386/pr25196.c: Likewise.
	* gcc.target/i386/pr25293.c: Likewise.
	* gcc.target/i386/pr25654.c: Likewise.
	* gcc.target/i386/pr26449.c: Likewise.
	* gcc.target/i386/pr26778.c: Likewise.
	* gcc.target/i386/pr26826.c: Likewise.
	* gcc.target/i386/pr27266.c: Likewise.
	* gcc.target/i386/pr29978.c: Likewise.
	* gcc.target/i386/pr30505.c: Likewise.
	* gcc.target/i386/pr30961-1.c: Likewise.
	* gcc.target/i386/pr31628.c: Likewise.
	* gcc.target/i386/pr32000-2.c: Likewise.
	* gcc.target/i386/pr32661-1.c: Likewise.
	* gcc.target/i386/pr32708-2.c: Likewise.
	* gcc.target/i386/pr32708-3.c: Likewise.
	* gcc.target/i386/pr34256.c: Likewise.
	* gcc.target/i386/pr34312.c: Likewise.
	* gcc.target/i386/pr34522.c: Likewise.
	* gcc.target/i386/pr35160.c: Likewise.
	* gcc.target/i386/pr35281.c: Likewise.
	* gcc.target/i386/pr36246.c: Likewise.
	* gcc.target/i386/pr36786.c: Likewise.
	* gcc.target/i386/pr37275.c: Likewise.
	* gcc.target/i386/pr37843-3.c: Likewise.
	* gcc.target/i386/pr37843-4.c: Likewise.
	* gcc.target/i386/pr39082-1.c: Likewise.
	* gcc.target/i386/pr39431.c: Likewise.
	* gcc.target/i386/pr39496.c: Likewise.
	* gcc.target/i386/pr39543-2.c: Likewise.
	* gcc.target/i386/pr39911.c: Likewise.
	* gcc.target/i386/pr40718.c: Likewise.
	* gcc.target/i386/pr40906-1.c: Likewise.
	* gcc.target/i386/pr40906-2.c: Likewise.
	* gcc.target/i386/pr40906-3.c: Likewise.
	* gcc.target/i386/pr40934.c: Likewise.
	* gcc.target/i386/pr41900.c: Likewise.
	* gcc.target/i386/pr42589.c: Likewise.
	* gcc.target/i386/pr43662.c: Likewise.
	* gcc.target/i386/pr43671.c: Likewise.
	* gcc.target/i386/pr43766.c: Likewise.
	* gcc.target/i386/pr43869.c: Likewise.
	* gcc.target/i386/pr44942.c: Likewise.
	* gcc.target/i386/pr44948-2a.c: Likewise.
	* gcc.target/i386/pr45234.c: Likewise.
	* gcc.target/i386/pr45336-2.c: Likewise.
	* gcc.target/i386/pr45336-4.c: Likewise.
	* gcc.target/i386/pr45852.c: Likewise.
	* gcc.target/i386/pr46470.c: Likewise.
	* gcc.target/i386/pr48037-1.c: Likewise.
	* gcc.target/i386/pr48389.c: Likewise.
	* gcc.target/i386/pr49095.c: Likewise.
	* gcc.target/i386/pr9771-1.c: Likewise.
	* gcc.target/i386/rdfsbase-1.c: Likewise.
	* gcc.target/i386/rdfsbase-2.c: Likewise.
	* gcc.target/i386/rdgsbase-1.c: Likewise.
	* gcc.target/i386/rdgsbase-2.c: Likewise.
	* gcc.target/i386/rdrand-3.c: Likewise.
	* gcc.target/i386/regparm-stdcall.c: Likewise.
	* gcc.target/i386/regparm.c: Likewise.
	* gcc.target/i386/reload-1.c: Likewise.
	* gcc.target/i386/rotate-2.c: Likewise.
	* gcc.target/i386/sibcall-5.c: Likewise.
	* gcc.target/i386/signbit-1.c: Likewise.
	* gcc.target/i386/signbit-2.c: Likewise.
	* gcc.target/i386/signbit-3.c: Likewise.
	* gcc.target/i386/sse-5.c: Likewise.
	* gcc.target/i386/sse-8.c: Likewise.
	* gcc.target/i386/sse-cvtsi2ss-2.c: Likewise.
	* gcc.target/i386/sse-cvtss2si-2.c: Likewise.
	* gcc.target/i386/sse-cvttss2si-2.c: Likewise.
	* gcc.target/i386/sse2-cvtsd2si-2.c: Likewise.
	* gcc.target/i386/sse2-cvtsi2sd-2.c: Likewise.
	* gcc.target/i386/sse2-cvttsd2si-2.c: Likewise.
	* gcc.target/i386/sse2-init-v2di-2.c: Likewise.
	* gcc.target/i386/sse2-movq-2.c: Likewise.
	* gcc.target/i386/sse2-movq-3.c: Likewise.
	* gcc.target/i386/sse4_1-insertps-3.c: Likewise.
	* gcc.target/i386/sse4_1-pextrq.c: Likewise.
	* gcc.target/i386/sse4_1-pinsrq.c: Likewise.
	* gcc.target/i386/sse4_2-crc32q.c: Likewise.
	* gcc.target/i386/sse4_2-popcntq.c: Likewise.
	* gcc.target/i386/ssefn-1.c: Likewise.
	* gcc.target/i386/ssefn-2.c: Likewise.
	* gcc.target/i386/sseregparm-1.c: Likewise.
	* gcc.target/i386/sseregparm-2.c: Likewise.
	* gcc.target/i386/sseregparm-3.c: Likewise.
	* gcc.target/i386/sseregparm-4.c: Likewise.
	* gcc.target/i386/sseregparm-5.c: Likewise.
	* gcc.target/i386/sseregparm-6.c: Likewise.
	* gcc.target/i386/sseregparm-7.c: Likewise.
	* gcc.target/i386/sseregparm-8.c: Likewise.
	* gcc.target/i386/stack-realign.c: Likewise.
	* gcc.target/i386/stack-usage-realign.c: Likewise.
	* gcc.target/i386/stackalign/asm-1.c: Likewise.
	* gcc.target/i386/stackalign/longlong-1.c: Likewise.
	* gcc.target/i386/stackalign/longlong-2.c: Likewise.
	* gcc.target/i386/stackalign/return-1.c: Likewise.
	* gcc.target/i386/stackalign/return-2.c: Likewise.
	* gcc.target/i386/stackalign/return-3.c: Likewise.
	* gcc.target/i386/tailcall-1.c: Likewise.
	* gcc.target/i386/tbm-2.c: Likewise.
	* gcc.target/i386/udivmod-7.c: Likewise.
	* gcc.target/i386/udivmod-8.c: Likewise.
	* gcc.target/i386/unroll-1.c: Likewise.
	* gcc.target/i386/vararg-1.c: Likewise.
	* gcc.target/i386/vararg-2.c: Likewise.
	* gcc.target/i386/vect8-ret.c: Likewise.
	* gcc.target/i386/vectorize5.c: Likewise.
	* gcc.target/i386/wmul-1.c: Likewise.
	* gcc.target/i386/wmul-2.c: Likewise.
	* gcc.target/i386/wrfsbase-1.c: Likewise.
	* gcc.target/i386/wrfsbase-2.c: Likewise.
	* gcc.target/i386/wrgsbase-1.c: Likewise.
	* gcc.target/i386/wrgsbase-2.c: Likewise.
	* gcc.target/i386/xop-pcmov.c: Likewise.
	* gcc.target/i386/xop-pcmov2.c: Likewise.
	* gcc.target/i386/xop-rotate1-vector.c: Likewise.
	* gcc.target/i386/xop-rotate2-vector.c: Likewise.
	* gcc.target/i386/xop-rotate3-vector.c: Likewise.
	* gcc.target/i386/xop-shift1-vector.c: Likewise.
	* gcc.target/i386/xop-shift2-vector.c: Likewise.
	* gcc.target/i386/xop-shift3-vector.c: Likewise.
	* gcc.target/i386/zee.c: Likewise.
	* gcc.target/x86_64/abi/callabi/callabi.exp: Likewise.
	* gfortran.dg/compiler-directive_2.f: Likewise.
	* gfortran.dg/g77/20010216-1.f: Likewise.
	* gfortran.dg/gomp/pr39152.f90: Likewise.
	* gfortran.dg/pr33794.f90: Likewise.

From-SVN: r176090
2011-07-09 12:25:11 -07:00
Uros Bizjak 4dc694b226 re PR fortran/48926 (gfortran.dg/coarray/image_index_1.f90 -fcoarray=single -O2 (test for excess errors))
PR fortran/48926
	* expr.c (gfc_get_corank): Change return value to int.
	* gfortran.h (gfc_get_corank): Update function prototype.

From-SVN: r176088
2011-07-09 19:35:44 +02:00
Jason Merrill 20888def1b * tree.c (build_vec_init_elt): Strip TARGET_EXPR.
From-SVN: r176084
2011-07-09 13:01:11 -04:00
Jakub Jelinek 5b696ba2dc re PR debug/49676 (inefficiency: DW_AT_GNU_call_site_value calculates everything << 32)
PR debug/49676
	* dwarf2out.c (size_of_int_loc_descriptor): New function.
	(address_of_int_loc_descriptor): Use it.
	(scompare_loc_descriptor): Optimize EQ/NE comparison with
	constant.

From-SVN: r176083
2011-07-09 17:48:42 +02:00
Richard Henderson 8662b2ba92 pdp11.md (define_c_enum "unspecv"): New.
* config/pdp11/pdp11.md (define_c_enum "unspecv"): New.
	(prologue, epilogue): New.
	(return, *rts): New.
	(blockage, setd, seti): New.
	* config/pdp11/pdp11.c (TARGET_ASM_FUNCTION_PROLOGUE): Remove.
	(TARGET_ASM_FUNCTION_EPILOGUE): Remove.
	(pdp11_saved_regno): New.
	(pdp11_expand_prologue): Rename from pdp11_output_function_prologue;
	generate rtl instead of text.
	(pdp11_expand_epilogue): Similarly from pdp11_output_function_epilogue.
	(pdp11_sp_frame_offset): Export.  Use pdp11_saved_regno.
	* config/pdp11/pdp11-protos.h: Update.

From-SVN: r176082
2011-07-09 08:41:31 -07:00
Richard Henderson 28b21ebbdb rs6000.c (rs6000_output_function_prologue): Don't try to insert an rtl prologue here.
* config/rs6000/rs6000.c (rs6000_output_function_prologue): Don't
	try to insert an rtl prologue here.
	(rs6000_output_function_epilogue): Similarly.
	* config/rs6000/rs6000.md (prologue): Emit a barrier to
	satisfy !TARGET_SCHED_PROLOG.
	(epilogue, sibcall_epilogue): Likewise.

From-SVN: r176081
2011-07-09 08:38:54 -07:00
Tobias Burnus 41de45c6a0 mpi.c (runtime_error): New function.
2011-07-09  Tobias Burnus  <burnus@net-b.de>
            Daniel Carrera  <dcarrera@gmail.com>

        * caf/mpi.c (runtime_error): New function.
        (_gfortran_caf_register): Use it.
        (_gfortran_caf_sync_all): Use it, add STAT_STOPPED_IMAGE
        as possible status value.
        (_gfortran_caf_sync_images): Ditto.


Co-Authored-By: Daniel Carrera <dcarrera@gmail.com>

From-SVN: r176080
2011-07-09 16:29:50 +02:00
Jonathan Wakely 677aad9c92 Makefile.am: Add new header.
2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>

	* include/Makefile.am: Add new header.
	* include/Makefile.in: Regenerate.
	* include/std/scoped_allocator: New.
	* doc/xml/manual/status_cxx200x.xml: Update.
	* testsuite/20_util/scoped_allocator/1.cc: New.
	* testsuite/20_util/scoped_allocator/propagation.cc: New.
	* testsuite/20_util/scoped_allocator/requirements/typedefs.cc: New.
	* testsuite/20_util/scoped_allocator/requirements/
	explicit_instantiation.cc: New.

From-SVN: r176079
2011-07-09 14:45:56 +01:00
Jonathan Wakely bd8485dc9f stl_vector.h: Use new allocator model in C++0x mode.
2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>

	* include/bits/stl_vector.h: Use new allocator model in C++0x mode.
	* include/bits/vector.tcc: Likewise.
	* testsuite/util/testsuite_allocator.h (propagating_allocator): Define.
	* testsuite/23_containers/vector/allocator/copy_assign.cc: New.
	* testsuite/23_containers/vector/allocator/noexcept.cc: New.
	* testsuite/23_containers/vector/allocator/copy.cc: New.
	* testsuite/23_containers/vector/allocator/swap.cc: New.
	* testsuite/23_containers/vector/allocator/move_assign.cc: New.
	* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
	Adjust dg-error line numbers.
	* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
	Likewise.
	* testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc:
	Likewise.
	* testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc:
	Likewise.

From-SVN: r176078
2011-07-09 14:06:29 +01:00
Jonathan Wakely d526242cd8 alloc_traits.h (__allocator_always_compares_equal): New trait, provide partial specializations for known allocators.
2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>

	* include/ext/alloc_traits.h (__allocator_always_compares_equal): New
	trait, provide partial specializations for known allocators.
	(__alloc_traits::construct, __alloc_traits::destroy): Overload for
	non-standard pointer types.
	(__alloc_traits::_S_always_equal): New trait for use with noexcept.
	(__alloc_traits::_S_nothrow_move): Likewise.
	(__alloc_traits::_S_nothrow_swap): Likewise.

From-SVN: r176077
2011-07-09 13:48:32 +01:00
Jonathan Wakely eece716393 cast.h: Fix typo in include guard.
2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>

	* include/ext/cast.h: Fix typo in include guard.
	* include/ext/pointer.h (_Unqualified_type): Remove redundant
	partial specializations for volatile types. Fix typos in comments.
	(pointer_traits<_Pointer_adaptor<Tp>>::pointer_to): Define.

From-SVN: r176075
2011-07-09 11:28:56 +01:00
Eric Botcazou 0a222ba757 sparc.h (STACK_SAVEAREA_MODE): Move around.
* config/sparc/sparc.h (STACK_SAVEAREA_MODE): Move around.
	(FP_REG_P): Delete.
	(IN_OR_GLOBAL_P): Likewise.

From-SVN: r176074
2011-07-09 10:13:56 +00:00
Jonathan Wakely 4880236e3f re PR libstdc++/49668 ([C++0x] std::thread does not forward its args as rvalues)
2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>

	PR libstdc++/49668
	* include/std/functional (__bind_simple): Define.
	* include/std/future (_Task_setter): Parameterize by type of result
	pointer instead of state object.
	(_S_task_setter): Type deduction helper.
	(_Task_state): Use _S_task_setter and __bind_simple.
	(_Deferred_state, _Async_state): Store call wrapper directly not as
	std::function. Use _S_task_setter and __bind_simple.
	(_S_make_deferred_state, _S_make_async_state): Type deduction helpers.
	(async): Use new functions and __bind_simple.
	* include/std/mutex (call_once): Use __bind_simple.
	* include/std/thread (thread): Likewise. Remove unused headers.
	* src/thread.cc: Add header.
	* testsuite/30_threads/async/49668.cc: New.
	* testsuite/30_threads/call_once/49668.cc: New.
	* testsuite/30_threads/thread/cons/49668.cc: New.
	* testsuite/30_threads/thread/cons/moveable.cc: Remove unused bool.

From-SVN: r176073
2011-07-09 11:13:01 +01:00