Commit Graph

110135 Commits

Author SHA1 Message Date
Rainer Orth 9e34e53f8e re PR target/49541 (TLS support partially broken in 64-bit mode)
PR target/49541
	* config/sol2.h (LIB_SPEC): Simplify.
	Move LIB_THREAD_LDFLAGS_SPEC ...
	(LINK_SPEC): ... here.

From-SVN: r176244
2011-07-13 17:58:18 +00:00
Bernd Schmidt 515646845f haifa-sched.c (struct sched_block_state): New.
* haifa-sched.c (struct sched_block_state): New.
	(schedule_block): Move some local variables into such a structure.

From-SVN: r176243
2011-07-13 17:47:26 +00:00
Rainer Orth b3fe158425 crtprec.c: Move to ../libgcc/config/i386.
gcc:
	* config/i386/crtprec.c: Move to ../libgcc/config/i386.
	* config/i386/t-crtpc: Remove.
	* config/t-darwin (EXTRA_MULTILIB_PARTS): Remove.
	* config.gcc (i[34567]86-*-darwin*): Remove i386/t-crtpc from
	tmake_file.
	(x86_64-*-darwin*): Likewise.
	(i[34567]86-*-linux*): Likewise.
	(x86_64-*-linux*): Likewise.

	* config/i386/sol2.h (ENDFILE_SPEC): Redefine.
	Handle -mpc32, -mpc64, -mpc80.

	libgcc:
	* config/i386/crtprec.c: New file.
	* config/i386/t-crtpc: Use $(srcdir) to refer to crtprec.c.
	* config.host (i[34567]86-*-darwin*): Add i386/t-crtpc to tmake_file.
	Add crtprec32.o, crtprec64.o, crtprec80.o to extra_parts.
	(x86_64-*-darwin*): Likewise.
	(i[34567]86-*-solaris2*: Likewise.

	gcc/testsuite:
	* gcc.c-torture/execute/990127-2.x: Use -mpc64 on i?86-*-darwin*,
	i?86-*-solaris2*, x86_64-*-darwin*, x86_64-*-solaris2*.

From-SVN: r176242
2011-07-13 17:39:35 +00:00
Rainer Orth 35d8090d78 crtfastmath.c: Move to ../libgcc/config/alpha.
gcc:
	* config/alpha/crtfastmath.c: Move to ../libgcc/config/alpha.
	* config/alpha/t-crtfm: Remove.
	* config/i386/crtfastmath.c: Move to ../libgcc/config/i386.
	* config/i386/t-crtfm: Remove.
	* config/ia64/crtfastmath.c: Move to ../libgcc/config/ia64.
	* config/mips/crtfastmath.c: Move to ../libgcc/config/mips.
	* config/sparc/crtfastmath.c: Move to ../libgcc/config/sparc.
	* config/sparc/t-crtfm: Remove.

	* config.gcc (alpha*-*-linux*): Remove alpha/t-crtfm from tmake_file.
	(alpha*-*-freebsd*): Likewise.
	(i[34567]86-*-darwin*): Remove i386/t-crtfm from tmake_file.
	(x86_64-*-darwin*): Likewise.
	(i[34567]86-*-linux*): Likewise.
	(x86_64-*-linux*): Likewise.
	(x86_64-*-mingw*): Likewise.
	(ia64*-*-elf*): Remove crtfastmath.o from extra_parts.
	(ia64*-*-freebsd*): Likewise.
	(ia64*-*-linux*): Likewise.
	(mips64*-*-linux*): Likewise.
	(mips*-*-linux*): Likewise.
	(sparc-*-linux*): Remove sparc/t-crtfm from tmake_file.
	(sparc64-*-linux*): Likewise.
	(sparc64-*-freebsd*): Likewise.

	libgcc:
	* config/alpha/crtfastmath.c: New file.
	* config/i386/crtfastmath.c: New file.
	* config/ia64/crtfastmath.c: New file.
	* config/mips/crtfastmath.c: New file.
	* config/sparc/crtfastmath.c: New file.

	* config/t-crtfm (crtfastmath.o): Use $(srcdir) to refer to
	crtfastmath.c.
	Add -frandom-seed=gcc-crtfastmath.
	* config/alpha/t-crtfm: Remove.
	* config/i386/t-crtfm: Use $(srcdir) to refer to crtfastmath.c.
	* config/ia64/t-ia64 (crtfastmath.o): Remove.

	* config.host (alpha*-*-linux*): Replace alpha/t-crtfm by t-crtfm.
	(alpha*-dec-osf5.1*): Likewise.
	(alpha*-*-freebsd*): Add t-crtfm to tmake_file.
	Add crtfastmath.o to extra_parts.
	(i[34567]86-*-darwin*): Add i386/t-crtfm to tmake_file.
	Add crtfastmath.o to extra_parts.
	(x86_64-*-darwin*): Likewise.
	(x86_64-*-mingw*): Likewise.
	(ia64*-*-elf*): Add t-crtfm to tmake_file.
	(ia64*-*-freebsd*): Likewise.
	(ia64*-*-linux*): Likewise.
	(sparc64-*-freebsd*): Add t-crtfm to tmake_file.
	Add crtfastmath.o to extra_parts.

From-SVN: r176241
2011-07-13 17:33:38 +00:00
Uros Bizjak 19073ebc7a g++.exp (g++_init): Use istarget.
* lib/g++.exp (g++_init):  Use istarget.  Remove target_triplet global.
	* lib/obj-c++.exp (obj-c++_init): Ditto.
	* lib/file-format.exp (gcc_target_object_format): Ditto.
	* lib/target-supports-dg.exp (dg-require-dll): Ditto.
	* lib/target-supports-dg-exp (check_weak_available): Ditto.
	(check_visibility_available): Ditto.
	(check_effective_target_tls_native): Ditto.
	(check_effective_target_tls_emulated): Ditto.
	(check_effective_target_function_sections): Ditto.

From-SVN: r176240
2011-07-13 18:31:56 +02:00
Rainer Orth e141542e74 darwin-crt2.c: Move to ../libgcc/config/rs6000.
gcc:
	* config/darwin-crt2.c: Move to ../libgcc/config/rs6000.
	* config/darwin-crt3.c: Move to ../libgcc/config.
	* config/t-darwin (EXTRA_MULTILIB_PARTS): Remove.
	($(T)crt3$(objext)): Remove.
	* config/rs6000/t-darwin (DARWIN_EXTRA_CRT_BUILD_CFLAGS): Remove.
	($(T)crt2$(objext)): Remove.
	* config.gcc (powerpc-*-darwin*): Remove extra_parts.
	(powerpc64-*-darwin*): Likewise.

	gcc/po:
	* EXCLUDES (config/darwin-crt2.c): Remove.

	libgcc:
	* config/darwin-crt3.o: New file.
	* config/rs6000/darwin-crt2.c: New file.
	* config/t-darwin: New file.
	* config/rs6000/t-darwin (DARWIN_EXTRA_CRT_BUILD_CFLAGS): New variable.
	(crt2.o): New rule.
	* config.host (*-*-darwin*): Add crt3.o to extra_parts.
	(powerpc-*-darwin*): Add crt2.o to extra_parts.
	(powerpc64-*-darwin*): Likewise.

From-SVN: r176239
2011-07-13 16:28:30 +00:00
H.J. Lu 72fbc381fe Support ptr_mode != Pmode in x86_output_mi_thunk.
2011-07-13  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/i386.c (x86_output_mi_thunk): Support ptr_mode
	!= Pmode.

	* config/i386/i386.md (*addsi_1_zext): Renamed to ...
	(addsi_1_zext): This.

From-SVN: r176238
2011-07-13 08:54:15 -07:00
Rainer Orth dbf32ca5be configure.ac: Don't create pth.
* configure.ac: Don't create pth.
	Check for library containing sched_yield.
	* configure: Regenerate.
	* config.h.in: Regenerate.

	* testsuite/lib/libmudflap.exp (libmudflap-init): Use
	mfconfig_libs in -static check.

From-SVN: r176237
2011-07-13 14:57:29 +00:00
Bernd Schmidt 727a65e6fc tm.texi.in (TARGET_ASM_MERGEABLE_RODATA_PREFIX): Add hook.
* doc/tm.texi.in (TARGET_ASM_MERGEABLE_RODATA_PREFIX): Add hook.
	* doc/tm.texi: Regenerate.
	* target.def (mergeable_rodata_prefix: New defhookpod.
	* varasm.c (mergeable_string_section, mergeable_constant_section):
	Use it. Allocate name with alloca.

From-SVN: r176235
2011-07-13 13:32:57 +00:00
H.J. Lu cb77b6cf1f Remove -mfused-madd and add -mfma.
2011-07-13  H.J. Lu  <hongjiu.lu@intel.com>

	* doc/invoke.texi (x86): Remove -mfused-madd and add -mfma.

From-SVN: r176230
2011-07-13 04:39:40 -07:00
Richard Sandiford 36fc37994d tree-vect-loop-manip.c (vect_create_cond_for_alias_checks): Tighten overlap check.
gcc/
	* tree-vect-loop-manip.c (vect_create_cond_for_alias_checks): Tighten
	overlap check.

From-SVN: r176229
2011-07-13 11:17:00 +00:00
Richard Sandiford 953d0c90a2 tree.h (categorize_ctor_elements): Remove comment.
gcc/
	* tree.h (categorize_ctor_elements): Remove comment.  Fix long line.
	(count_type_elements): Delete.
	(complete_ctor_at_level_p): Declare.
	* expr.c (flexible_array_member_p): New function, split out from...
	(count_type_elements): ...here.  Make static.  Replace allow_flexarr
	parameter with for_ctor_p.  When for_ctor_p is true, return the
	number of elements that should appear in the top-level constructor,
	otherwise return an estimate of the number of scalars.
	(categorize_ctor_elements): Replace p_must_clear with p_complete.
	(categorize_ctor_elements_1): Likewise.  Use complete_ctor_at_level_p.
	(complete_ctor_at_level_p): New function, borrowing union logic
	from old categorize_ctor_elements_1.
	(mostly_zeros_p): Return true if the constructor is not complete.
	(all_zeros_p): Update call to categorize_ctor_elements.
	* gimplify.c (gimplify_init_constructor): Update call to
	categorize_ctor_elements.  Don't call count_type_elements.
	Unconditionally prevent clearing for variable-sized types,
	otherwise rely on categorize_ctor_elements to detect
	incomplete initializers.

gcc/cp/
	* typeck2.c (split_nonconstant_init_1): Pass the initializer directly,
	rather than a pointer to it.  Return true if the whole of the value
	was initialized by the generated statements.  Use
	complete_ctor_at_level_p instead of count_type_elements.

gcc/testsuite/
2011-07-12  Chung-Lin Tang  <cltang@codesourcery.com>

	* gcc.target/arm/pr48183.c: New test.

From-SVN: r176228
2011-07-13 11:16:36 +00:00
Richard Guenther 9111c71553 tree-vrp.c (simplify_conversion_using_ranges): Make sure the final type is integral.
2011-07-13  Richard Guenther  <rguenther@suse.de>

	* tree-vrp.c (simplify_conversion_using_ranges): Make sure
	the final type is integral.

	* gcc.dg/torture/20110713-1.c: New testcase.

From-SVN: r176227
2011-07-13 10:32:55 +00:00
Bernd Schmidt a19af9c4e4 sched-int.h (struct _dep): Add member cost.
* sched-int.h (struct _dep): Add member cost.
	(DEP_COST, UNKNOWN_DEP_COST): New macros.
	* sched-deps.c (init_dep_1): Initialize DEP_COST.
	* haifa-sched.c (dep_cost_1): Use and set DEP_COST.
	(sched_change_pattern): Reset it for dependent insns.

From-SVN: r176226
2011-07-13 10:18:32 +00:00
Rainer Orth 2d1efe2d2d Makefile.in (CRT0STUFF_T_CFLAGS): Remove.
gcc:
	* Makefile.in (CRT0STUFF_T_CFLAGS): Remove.
	($(T)crt0.o, $(T)mcrt0.o, s-crt0): Remove.
	* config/i386/netware-crt0.c: Move to ../libgcc/config/i386.
	* config/i386/t-nwld (CRTSTUFF_T_CFLAGS, CRT0STUFF_T_CFLAGS): Remove.
	(CRT0_S, MCRT0_S): Remove.
	($(T)libgcc.def, $(T)libc.def, $(T)libcpre.def, $(T)posixpre.def):
	Remove.
	(s-crt0): Remove.
	* config.gcc (i[3456x]86-*-netware*): Remove extra_parts.

	libgcc:
	* config/i386/netware-crt0.c: New file.
	* config/i386/t-nwld: Rename to ...
	* config/i386/t-slibgcc-nwld: ... this.
	* config/i386/t-nwld: New file.
	* config.host (i[3456x]86-*-netware*): Add i386/t-slibgcc-nwld to
	tmake_file.
	Add crt0.o, libgcc.def, libc.def, libcpre.def, posixpre.def to
	extra_parts.

From-SVN: r176225
2011-07-13 09:57:08 +00:00
Ian Lance Taylor 09df293c7a libgo/testsuite/gotest: Run tests in source file order.
From-SVN: r176223
2011-07-13 01:04:50 +00:00
GCC Administrator 791ddb90b9 Daily bump.
From-SVN: r176222
2011-07-13 00:18:47 +00:00
Diego Novillo 2c1404747a name-lookup.h (cp_binding_level): Rename from cxx_scope.
* name-lookup.h (cp_binding_level): Rename from cxx_scope.
	Update all users.
	(struct cp_binding_level): Fix indentation.

From-SVN: r176218
2011-07-12 18:59:39 -04:00
Jason Merrill 38ab02dbdc s/recurson/recursion/
From-SVN: r176217
2011-07-12 17:24:43 -04:00
Eric Botcazou e84a58ffbe cse.c (insert_with_costs): Put semi-colon after empty loop body on the next line.
* cse.c (insert_with_costs): Put semi-colon after empty loop body
	on the next line.
	* emit-rtl.c (push_to_sequence): Likewise.
	* haifa-sched.c (max_issue): Likewise.
	* matrix-reorg.c (add_allocation_site): Likewise.
	* postreload-gcse.c (eliminate_partially_redundant_load): Likewise.
	* reload.c (alternative_allows_const_pool_ref): Likewise.
	* sched-rgn.c (rgn_add_block): Likewise.
	(rgn_fix_recovery_cfg): Likewise.
	* tree.c (attribute_list_contained): Likewise.
c-family/
	* c-ada-spec.c (dump_nested_types): Put semi-colon after empty loop
	body on the next line.

From-SVN: r176216
2011-07-12 20:07:09 +00:00
Uros Bizjak 3a4ffde68c i386.c: Tidy processor feature bitmasks.
* config/i386/i386.c: Tidy processor feature bitmasks.
	(m_P4_NOCONA): New.

From-SVN: r176215
2011-07-12 21:47:31 +02:00
Andrew Pinski 10b75750f2 re PR rtl-optimization/49474 (ppc ICEs with -O3 (bootstrapping with -O3 and --disable-checking))
2011-07-12  Andrew Pinski  <pinskia@gmail.com>

	PR rtl-opt/49474
	* cprop.c (find_implicit_sets): Correct the condition.

2011-07-12  Andrew Pinski  <pinskia@gmail.com>

	PR rtl-opt/49474
	* gcc.c-torture/compile/pr49474.c: New testcase.

From-SVN: r176213
2011-07-12 11:46:10 -07:00
Richard Henderson 4f42d714a2 re PR target/49713 (Conflicting types for 'arm_dbx_register_number')
PR target/49713
        * dwarf2out.h (dwarf_frame_regnum): Remove.
        * dwarf2out.c (based_loc_descr): Revert last change.  Initialize regno
        earlier from DWARF_FRAME_REGNUM.  Never use dbx_reg_number.
        * dwarf2cfi.c (dw_stack_pointer_regnum, dw_frame_pointer_regnum): New.
        (execute_dwarf2_frame): Initialize them.
        (DW_STACK_POINTER_REGNUM, DW_FRAME_POINTER_REGNUM): Remove; replace
        users of the macros with the variables.
        (expand_builtin_dwarf_sp_column): Revert last change.
        (expand_builtin_init_dwarf_reg_sizes): Likewise.  Compute the
        result of DWARF_FRAME_REGNUM into a local variable.

From-SVN: r176212
2011-07-12 11:41:44 -07:00
Richard Henderson 3a5e4ad6e2 re PR target/49714 (Revision 176128 introduced many ICEs in insn_default_length, at config/i386/i386.md:600)
PR target/49714
        * config/i386/i386.c (x86_output_mi_thunk): Use
        machopic_indirect_call_target instead of machopic_indirection_name
        directly.

From-SVN: r176211
2011-07-12 11:20:29 -07:00
Laurent GUERBY 9e9bd455d4 prefix.h: Wrap up in extern "C" block.
* prefix.h: Wrap up in extern "C" block.
ada/
	* adadecode.c: Wrap up in extern "C" block.
	* adadecode.h: Likewise.
	* adaint.c: Likewise.  Remove 'const' keyword.
	* adaint.h: Likewise.
	* argv.c: Likewise.
	* atree.h: Likewise.
	* cio.c: Likewise.
	* cstreams.c: Likewise.
	* env.c: Likewise.
	* exit.c: Likewise.
	* fe.h: Likewise.
	* final.c: Likewise.
	* init.c: Likewise.
	* initialize.c: Likewise.
	* link.c: Likewise.
	* namet.h: Likewise.
	* nlists.h: Likewise.
	* raise.c: Likewise.
	* raise.h: Likewise.
	* repinfo.h: Likewise.
	* seh_init.c: Likewise.
	* targext.c: Likewise.
	* tracebak.c: Likewise.
	* uintp.h: Likewise.
	* urealp.h: Likewise.
	* xeinfo.adb: Wrap up generated C code in extern "C" block.
	* xsinfo.adb: Likewise.
	* xsnamest.adb: Likewise.
	* gcc-interface/gadaint.h: Wrap up in extern "C" block.
	* gcc-interface/gigi.h: Wrap up some prototypes in extern "C" block.
	* gcc-interface/misc.c: Likewise.
	* gcc-interface/Make-lang.in (GCC_LINK): Use LINKER.
	(GNAT1_C_OBJS): Remove ada/b_gnat1.o.  List ada/seh_init.o and
	ada/targext.o here...
	(GNAT_ADA_OBJS): ...and not here.
	(GNAT1_ADA_OBJS): Add ada/b_gnat1.o.
	(GNATBIND_OBJS): Reorder.

Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>

From-SVN: r176210
2011-07-12 17:23:04 +00:00
Harsha Jagasia 4d652a1865 AMD bdver2 Enablement
2011-07-12  Harsha Jagasia  <harsha.jagasia@amd.com>

	AMD bdver2 Enablement
	* config.gcc (i[34567]86-*-linux* | ...): Add bdver2.
	(case ${target}): Add bdver2.
	* config/i386/driver-i386.c (host_detect_local_cpu): Let
	-march=native recognize bdver2 processors.
	* config/i386/i386-c.c (ix86_target_macros_internal): Add
	bdver2 def_and_undef
	* config/i386/i386.c (struct processor_costs bdver2_cost): New
	bdver2 cost table.
	(m_BDVER2): New definition.
	(m_AMD_MULTIPLE): Includes m_BDVER2.
	(initial_ix86_tune_features): Add bdver2 tuning.
	(processor_target_table): Add bdver2 entry.
	(static const char *const cpu_names): Add bdver2 entry.
	(ix86_option_override_internal): Add bdver2 instruction sets.
	(ix86_issue_rate): Add bdver2.
	(ix86_adjust_cost): Add bdver2.
	(has_dispatch): Add bdver2.
	* config/i386/i386.h (TARGET_BDVER2): New definition.
	(enum target_cpu_default): Add TARGET_CPU_DEFAULT_bdver2.
	(enum processor_type): Add PROCESSOR_BDVER2.
	* config/i386/i386.md (define_attr "cpu"): Add bdver2.
	* config/i386/i386.opt ( mdispatch-scheduler): Add bdver2 to
	description.

From-SVN: r176209
2011-07-12 16:26:02 +00:00
Richard Henderson 5756d08c25 re PR target/49714 (Revision 176128 introduced many ICEs in insn_default_length, at config/i386/i386.md:600)
PR target/49714
        * config/i386/i386.c (x86_output_mi_thunk): Fix mode for
        destination address in memory on some paths.

From-SVN: r176208
2011-07-12 08:46:02 -07:00
Bernd Schmidt 123148b532 tm.texi.in (FUNCTION_ARG_PADDING): Mention TARGET_FUNCTION_ARG_ROUND_BOUNDARY.
* doc/tm.texi.in (FUNCTION_ARG_PADDING): Mention
	TARGET_FUNCTION_ARG_ROUND_BOUNDARY.
	(TARGET_FUNCTION_ARG_ROUND_BOUNDARY): Add hook.
	* function.c (locate_and_pad_parm): Take it into account.
	* target.def (function_arg_round_boundary): New hook.
	* targhooks.c (default_function_arg_round_boundary): New function.
	* targhooks.h (default_function_arg_round_boundary): Declare.
	* doc/tm.texi: Regenerate.

From-SVN: r176207
2011-07-12 14:57:28 +00:00
Richard Guenther b7a83ad8eb tree-ssa-copyrename.c (rename_ssa_copies): Zero statistics.
2011-07-12  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-copyrename.c (rename_ssa_copies): Zero statistics.
	Do not perform no-op changes.

From-SVN: r176206
2011-07-12 14:38:41 +00:00
Rainer Orth 261ceb73df Delete moved source files.
From-SVN: r176205
2011-07-12 14:35:46 +00:00
Richard Sandiford 12c4ecb13a predicates.md (neon_struct_operand): Make a normal predicate.
gcc/
	* config/arm/predicates.md (neon_struct_operand): Make a normal
	predicate.
	(neon_struct_or_register_operand): New predicate.
	* config/arm/neon.md (movmisalign<mode>): Replace predicates
	with neon_struct_or_register_operand.
	(*movmisalign<mode>_neon_store, *movmisalign<mode>_neon_load): Use
	neon_struct_operand instead of memory_operand.

From-SVN: r176204
2011-07-12 14:30:32 +00:00
Andrew Haley b46a23dd68 interpret.cc (check_handler): Fix bit rot.
2011-07-12  Andrew Haley  <aph@redhat.com>

        * interpret.cc (check_handler): Fix bit rot.
        (breakpoint_at): Likewise.

From-SVN: r176200
2011-07-12 12:56:50 +00:00
Andrew Haley 2558c6054e natClass.cc (finalize): Make sure that the class really has an engine.
2011-07-12  Andrew Haley  <aph@redhat.com>

	* java/lang/natClass.cc (finalize): Make sure that the class
	really has an engine.

From-SVN: r176199
2011-07-12 12:50:36 +00:00
Martin Jambor ab079773d3 cgraph.h (cgraph_get_node_or_alias): Removed declaration.
2011-07-12  Martin Jambor  <mjambor@suse.cz>

	* cgraph.h (cgraph_get_node_or_alias): Removed declaration.
	* cgraph.c (cgraph_get_node_or_alias): Removed.
	(change_decl_assembler_name): Changed all calls to
	cgraph_get_node_or_alias to a call to cgraph_get_node.
	(cgraph_make_decl_local): Likewise.
	* lto-symtab.c (lto_symtab_resolve_symbols): Likewise.
	* varasm.c (default_binds_local_p_1): Likewise.
	(decl_binds_to_current_def_p): Likewise.

From-SVN: r176196
2011-07-12 12:29:39 +02:00
Jakub Jelinek d5fed62d72 re PR tree-optimization/49712 (internal compiler error: in gen_lsm_tmp_name, at tree-ssa-loop-im.c:2048)
PR tree-optimization/49712
	* tree-ssa-loop-im.c (gen_lsm_tmp_name): Handle TARGET_MEM_REF.

	* gcc.c-torture/execute/pr49712.c: New test.

From-SVN: r176195
2011-07-12 11:13:06 +02:00
GCC Administrator 1be4e803d2 Daily bump.
From-SVN: r176192
2011-07-12 00:17:39 +00:00
Jason Merrill ebfefb41d9 re PR c++/49672 ([C++0x] Internal error when passing variadic template args to a lambda function)
PR c++/49672
	* pt.c (extract_fnparm_pack): Split out from...
	(make_fnparm_pack): ...here.
	(instantiate_decl): Handle non-pack parms after a pack.
	* semantics.c (maybe_add_lambda_conv_op): Don't in a template.

From-SVN: r176183
2011-07-11 17:03:19 -04:00
Ian Lance Taylor d983a802f6 libgo: Define CC_FOR_BUILD in Makefile.
From-SVN: r176182
2011-07-11 20:27:50 +00:00
Ian Lance Taylor ae06570eb6 libgo/runtime: Change std::abort to abort.
From-SVN: r176181
2011-07-11 20:16:01 +00:00
Bernd Schmidt c0b6224a6e genautomata.c (add_arc): Return void.
* genautomata.c (add_arc): Return void.  All callers changed.
	(make_automaton): Remove dead code.

From-SVN: r176179
2011-07-11 19:41:11 +00:00
Richard Henderson 7263c6d715 dwarf2cfi.c (DW_STACK_POINTER_REGNUM): New.
* dwarf2cfi.c (DW_STACK_POINTER_REGNUM): New.
        (DW_FRAME_POINTER_REGNUM): New.
        (expand_builtin_init_dwarf_reg_sizes): Use unsigned for rnum.
        (def_cfa_1): Do not convert reg to DWARF_FRAME_REGNUM here.
        (dwf_regno): New.
        (dwarf2out_flush_queued_reg_saves, dwarf2out_frame_debug_def_cfa,
        dwarf2out_frame_debug_adjust_cfa, dwarf2out_frame_debug_cfa_register,
        dwarf2out_frame_debug_cfa_expression, dwarf2out_frame_debug_expr):
        Use it.
        * dwarf2out.c (based_loc_descr): Use dwarf_frame_regnum.
        * dwarf2out.h (dwarf_frame_regnum): New.
        (struct cfa_loc): Document the domain of the reg member.

From-SVN: r176178
2011-07-11 12:30:56 -07:00
Jason Merrill 5fb8060d5b * decl2.c (decl_constant_var_p): Use decl_maybe_constant_var_p.
From-SVN: r176177
2011-07-11 14:52:19 -04:00
Jason Merrill 4904b64bf7 re PR c++/44609 (Invalid template code causes infinite loop of error messages)
PR c++/44609
	* cp-tree.h (struct tinst_level): Add errors field.
	* pt.c (neglectable_inst_p, limit_bad_template_recurson): New.
	(push_tinst_level): Don't start another decl in that case.
	(reopen_tinst_level): Adjust errors field.
	* decl2.c (cp_write_global_declarations): Don't complain about
	undefined inline if its template was defined.
	* mangle.c (mangle_decl_string): Handle failure from push_tinst_level.

From-SVN: r176176
2011-07-11 14:52:12 -04:00
Paolo Carlini 848ca96f30 re PR libstdc++/49559 ([C++0x] stable_sort calls self-move-assignment operator)
2011-07-11  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/49559
	* include/bits/stl_algo.h (__move_merge_backward): Remove.
	(__move_merge_adaptive, __move_merge_adaptive_backward): New.
	(__merge_adaptive): Use the latter two.
	(__rotate_adaptive): Avoid self move-assignment.
	* include/bits/stl_algobase.h (move_backward): Fix comment.
	* testsuite/25_algorithms/stable_sort/49559.cc: New.
	* testsuite/25_algorithms/inplace_merge/49559.cc: Likewise.
	* testsuite/25_algorithms/inplace_merge/moveable.cc: Extend.
	* testsuite/25_algorithms/inplace_merge/moveable2.cc: Likewise.
	* testsuite/util/testsuite_rvalref.h (rvalstruct::operator=
	(rvalstruct&&)): Check for self move-assignment.

From-SVN: r176174
2011-07-11 18:38:54 +00:00
Uros Bizjak f9610d205a i386.c (ix86_trampoline_init): Switch arms of if expr.
* config/i386/i386.c (ix86_trampoline_init): Switch arms of if expr.
	Use offset everywhere.  Always assert that offset <= TRAMPOLINE_SIZE.

From-SVN: r176173
2011-07-11 19:57:49 +02:00
Andrew Haley 4d4a9b72be ffi.c (FFI_INIT_TRAMPOLINE): Clear icache.
2011-07-11  Andrew Haley  <aph@redhat.com>

        * src/arm/ffi.c (FFI_INIT_TRAMPOLINE): Clear icache.

From-SVN: r176172
2011-07-11 17:50:04 +00:00
Paolo Carlini 0f509bb7d5 testsuite_allocator.h (propagating_allocator<>:: operator=(const propagating_allocator<>&)): Retun *this.
2011-07-11  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/util/testsuite_allocator.h (propagating_allocator<>::
	operator=(const propagating_allocator<>&)): Retun *this.

From-SVN: r176169
2011-07-11 17:19:53 +00:00
Jakub Jelinek 96ae7458c0 re PR debug/49676 (inefficiency: DW_AT_GNU_call_site_value calculates everything << 32)
PR debug/49676
	* dwarf2out.c (int_shift_loc_descriptor): New function.
	(int_loc_descriptor): If shorter, emit i as
	(i >> shift), shift, DW_OP_shl for suitable shift value.
	Similarly, try to optimize large negative values using
	DW_OP_neg of a positive value if shorter.
	(size_of_int_shift_loc_descriptor): New function.
	(size_of_int_loc_descriptor): Adjust to match int_loc_descriptor
	changes.
	(mem_loc_descriptor) <case CONST_INT>: Emit zero-extended constants
	that fit into DWARF2_ADDR_SIZE bytes as int_loc_descriptor +
	DW_OP_GNU_convert instead of DW_OP_GNU_const_type if the former
	is shorter.
	(resolve_addr_in_expr): Optimize DW_OP_plus_uconst with a large
	addend as added DW_OP_plus if it is shorter.

	* gcc.dg/guality/csttest.c: New test.

From-SVN: r176167
2011-07-11 18:57:25 +02:00
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