Commit Graph

107844 Commits

Author SHA1 Message Date
Jakub Jelinek
4e626909c7 re PR debug/48343 (ICE compiling i586 linux-2.6.38/drivers/staging/wlan-ng/p80211wep.c: in form_sum, at reload.c:5338)
PR debug/48343
	* combine.c (combine_instructions): Add last_combined_insn,
	update it if insn is after it, pass it to all try_combine
	calls.
	(try_combine): Add last_combined_insn parameter, pass it instead of
	i3 to propagate_for_debug.

	* gcc.dg/torture/pr48343.c: New test.

From-SVN: r172108
2011-04-07 19:57:26 +02:00
Rainer Orth
2e3597fef8 * gcc.target/i386/asm-6.c: Remove dg-xfail-if.
From-SVN: r172107
2011-04-07 17:11:30 +00:00
Ian Lance Taylor
405ca10418 libgo: Update to current Go library.
From-SVN: r172106
2011-04-07 17:09:10 +00:00
Joseph Myers
a751005d50 * de.po: Update.
From-SVN: r172103
2011-04-07 17:30:42 +01:00
Eric Botcazou
f15b8bdf44 Fix typos
From-SVN: r172102
2011-04-07 16:07:44 +00:00
Maxim Kuvyrkov
5fc1ae9931 * gcc.dg/lto/20090210_0.c: Require tls_runtime target.
From-SVN: r172101
2011-04-07 14:53:50 +00:00
Nick Clifton
5a10b0a943 mn10300.md (movqi_internal): Add alternatives to handle MDR <-> data register transfers.
* config/mn10300/mn10300.md (movqi_internal): Add alternatives
	to handle MDR <-> data register transfers.
	(movhi_internal): Likewise.

From-SVN: r172099
2011-04-07 14:02:37 +00:00
Alan Modra
20c033673b rs6000.c (rs6000_stack_info): Don't compare against previous stack info.
* config/rs6000/rs6000.c (rs6000_stack_info): Don't compare against
	previous stack info.

From-SVN: r172096
2011-04-07 20:47:05 +09:30
Stuart Henderson
8072c46058 MAINTAINERS (Write After Approval): Add myself.
2011-04-07  Stuart Henderson  <shenders@gcc.gnu.org>

	* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r172095
2011-04-07 11:09:02 +00:00
Tom de Vries
bf22920b4a re PR target/43920 (Choosing conditional execution over conditional branches for code size in some cases.)
2011-04-07  Tom de Vries  <tom@codesourcery.com>

	PR target/43920
	* cfgcleanup.c (try_crossjump_to_edge): Add dir parameter.  Pass dir to
	flow_find_cross_jump.  Swap variables to implement backward replacement.
	(try_crossjump_bb): Add argument to try_crossjump_to_edge.

From-SVN: r172094
2011-04-07 09:48:39 +00:00
Tom de Vries
c7a69ce198 re PR target/43920 (Choosing conditional execution over conditional branches for code size in some cases.)
2011-04-07  Tom de Vries  <tom@codesourcery.com>

	PR target/43920
	* lib/scanasm.exp (object-size): New proc.
	* gcc.target/arm/pr43920-2.c: New test.

From-SVN: r172093
2011-04-07 09:28:11 +00:00
Tom de Vries
823918aef3 re PR target/43920 (Choosing conditional execution over conditional branches for code size in some cases.)
2011-04-07  Tom de Vries  <tom@codesourcery.com>

	PR target/43920
	* cfgcleanup.c (walk_to_nondebug_insn): New function.
	(flow_find_cross_jump): Use walk_to_nondebug_insn.  Recalculate bb1 and
	bb2.
	(try_crossjump_to_edge): Handle case that newpos1 or newpos2 is not src1
	or src2.  Redirect edges to the last basic block.  Update frequency and
	count on multiple basic blocks in case of fallthru.

From-SVN: r172091
2011-04-07 08:35:23 +00:00
Tom de Vries
472c95f5af re PR target/43920 (Choosing conditional execution over conditional branches for code size in some cases.)
2011-04-07  Tom de Vries  <tom@codesourcery.com>

	PR target/43920
	* cfgcleanup.c (equal_different_set_p, can_replace_by, merge_dir): New
	function.
	(old_insns_match_p): Change return type.  Replace return false/true with
	return dir_none/dir_both.  Use can_replace_by.
	(flow_find_cross_jump): Add dir_p parameter.  Init replacement direction
	from dir_p.  Register replacement direction in dir, last_dir and
	afterlast_dir.	Handle new return type of old_insns_match_p using
	merge_dir.  Return replacement direction in dir_p.
	(flow_find_head_matching_sequence, outgoing_edges_match): Handle new
	return type of old_insns_match_p.
	(try_crossjump_to_edge): Add argument to call to flow_find_cross_jump.
	* ifcvt.c ( cond_exec_process_if_block): Add argument to call to
	flow_find_cross_jump.
	* basic-block.h (enum replace_direction): New type.
	(flow_find_cross_jump): Add parameter to declaration.

From-SVN: r172090
2011-04-07 08:10:34 +00:00
Jeffrey Yasskin
7c16382a3a In C++0x mode, import iota and is_sorted from namespace std into namespace __gnu_cxx to avoid ambiguous call errors.
In C++0x mode, import iota and is_sorted from namespace std into
namespace __gnu_cxx to avoid ambiguous call errors.  copy_n would be a
good candidate for this too, except it was standardized with a
different return type.

Tested:
  `make -k check-c++` on x86_64-unknown-linux-gnu.

libstdc++-v3/ChangeLog:

2011-04-06  Jeffrey Yasskin  <jyasskin@google.com>

        * include/ext/algorithm (is_sorted): In C++0x mode import from
        namespace std.
        * include/ext/numeric (iota): In C++0x mode import from
        namespace std.
        * testsuite/ext/is_sorted/cxx0x.cc: New.
        * testsuite/ext/iota/cxx0x.cc: New.

From-SVN: r172073
2011-04-07 04:11:12 +00:00
GCC Administrator
030759ae91 Daily bump.
From-SVN: r172072
2011-04-07 00:18:54 +00:00
Ian Lance Taylor
8d0b03a22d Use backend interface for constant switch statements.
* go-gcc.cc (if_statement): Use build3_loc.
	(Gcc_backend::switch_statement): New function.
	(Gcc_backend::statement_list): New function.

From-SVN: r172066
2011-04-06 23:07:13 +00:00
Tobias Burnus
d17b0ae1ca re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2011-04-06  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        PR fortran/48477
        * gfortran.dg/coarray_13.f90: Avoid out-of-bounds access.

From-SVN: r172061
2011-04-06 20:32:27 +02:00
Tobias Burnus
7b7c0f2a21 re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2011-04-06  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * trans-intrinsic.c (gfc_conv_intrinsic_function): Fix
        call for this_image.

From-SVN: r172060
2011-04-06 20:30:58 +02:00
Tobias Burnus
6eb87b330f re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2011-04-06  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * caf/mpi.c (_gfortran_caf_init, _gfortran_caf_finalize):
        Add global variable caf_mpi_initialized and use it for when
        finalizing.

From-SVN: r172059
2011-04-06 20:29:55 +02:00
Uros Bizjak
a95d400021 sse.md (AVXMODEDCVTDQ2PS): Remove.
* config/i386/sse.md (AVXMODEDCVTDQ2PS): Remove.
	(AVXMODEDCVTPS2DQ): Ditto.
	(VEC_FLOAT_MODE): Ditto.
	(<sse>_andnot<mode>3): Merge with avx_andnot<mode>3.  Use VF mode
	iterator.  Handle TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL target flag.
	(<any_logic:code><mode>3): Use VF mode iterator.
	(*<any_logic:code><mode>3): Merge with *avx_<any_logic:code><mode>3.
	Use VF mode iterator.
	(copysign<mode>3): Use VF mode iterator.
	(*andnot<MODEF:mode>3): Merge with *avx_andnot<MODEF:mode>3.  Handle
	TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL target flag.
	(*<any_logic:code><MODEF:mode>3): Merge with
	*avx_<any_logic:code><MODEF:mode>3.
	(sse_cvtsi2ss): Merge with *avx_cvtsi2ss.
	(sse_cvtsi2ssq): Merge with *avx_cvtsi2ssq.
	(avx_cvtdq2ps256): Split from avx_cvtdq2ps<avxmodesuffix>.
	(avx_cvtdq2ps<avxmodesuffix>): Remove.
	(sse2_cvtdq2ps): Use %v modifier.
	(avx_cvtps2dq256): Split from avx_cvtps2dq<avxmodesuffix>.
	(avx_cvtps2dq<avxmodesuffix>): Remove.
	(sse2_cvtps2dq): Use %v modifier.
	(avx_cvttps2dq256): Split from avx_cvttps2dq<avxmodesuffix>.
	(avx_cvttps2dq<avxmodesuffix>): Remove.
	(sse2_cvttps2dq): Use %v modifier.
	(sse2_cvtsi2sd): Merge with *avx_cvtsi2sd.
	(sse2_cvtsi2sdq): Merge with *avx_cvtsi2sdq.
	(sse2_cvtsd2siq): Fix insn template.
	(sse2_cvtsd2siq_2): Ditto.
	(sse2_cvttsd2siq): Ditto.
	(sse2_cvtsd2ss): Merge with *avx_cvtsd2ss.
	(sse2_cvtss2sd): Merge with *avx_cvtss2sd.

From-SVN: r172058
2011-04-06 19:39:27 +02:00
Steve Ellcey
4e927875b0 mtune.c: Prune note from output.
2011-04-06  Steve Ellcey  <sje@cup.hp.com>

	* gcc.dg/mtune.c: Prune note from output.

From-SVN: r172056
2011-04-06 16:15:28 +00:00
Joseph Myers
ad01c4370f * gcov-io.c: Use GCC Runtime Library Exception.
From-SVN: r172053
2011-04-06 17:04:18 +01:00
Ian Lance Taylor
db0adf8230 Use backend interface for if statements.
Rename some temporary conversion functions to shorter names.

	* go-gcc.cc (Gcc_backend::if_statement): New function.
	(tree_to_stat): New function.
	(expr_to_tree): Renamed from expression_to_tree.
	(stat_to_tree): Renamed from statement_to_tree.

From-SVN: r172052
2011-04-06 15:46:53 +00:00
Ian Lance Taylor
cfebcf30ea Use backend interface for expression statements.
* go-gcc.cc (Gcc_backend::expression_statement): New function.

From-SVN: r172051
2011-04-06 15:30:20 +00:00
Rainer Orth
763ea608b4 re PR testsuite/48480 (FAIL: staticrootslib.lo -O2 (test for excess errors))
PR testsuite/48480
	* testsuite/lib/boehm-gc.exp (boehm-gc-dg-prune): Allow for path
	to ranlib.

From-SVN: r172050
2011-04-06 15:23:33 +00:00
Joseph Myers
85bfb75e74 configure.ac (build_tools): Remove build-byacc.
* configure.ac (build_tools): Remove build-byacc.
	(host_libs): Remove mmalloc.
	(host_tools): Remove byacc make patch prms send-pr ash bash bzip2
	autoconf automake libtool diff rcs fileutils shellutils time
	textutils wdiff find uudecode hello tar gzip indent recode release
	sed perl gawk findutils gettext zip.
	(libgcj): Remove target-qthreads.
	(target_tools): Remove target-examples target-gperf.
	(YACC): Don't handle building byacc.
	* configure: Regenerate.
	* Makefile.def (ash, autoconf, automake, bash, byacc, bzip2, diff,
	dosutils, examples, fileutils, find, findutils, gawk, gettext,
	gnuserv, gperf, gzip, hello, indent, libtool, make, mmalloc,
	patch, perl, prms, qthreads, rcs, recode, release, sed, send-pr,
	shellutils, tar, textutils, time, uudecode, wdiff, zip): Don't
	handle building components.
	* Makefile.in: Regenerate.

From-SVN: r172042
2011-04-06 13:18:12 +01:00
Jakub Jelinek
fe84628425 re PR debug/48466 (Wrong variable locations at -O0 on i686)
PR debug/48466
	* dwarf2out.c (based_loc_descr): If drap_reg is INVALID_REGNUM, use
	as base_reg whatever register reg has been eliminated to, instead
	of hardcoding STACK_POINTER_REGNUM.

	* gcc.dg/guality/pr36977.c: New test.
	* gcc.dg/guality/pr48466.c: New test.

From-SVN: r172039
2011-04-06 13:49:59 +02:00
Joseph Myers
acce4e7738 tm.texi.in: Document C target hooks as separate from general target hooks.
* doc/tm.texi.in: Document C target hooks as separate from general
	target hooks.
	* doc/tm.texi: Regenerate.
	* genhooks.c (struct hook_desc): Add docname field.
	(HOOK_VECTOR_1, DEFHOOKPOD, DEFHOOK, DEFHOOK_UNDOC).  Initialize
	docname field.
	(hook_array): Include c-target.def.
	(emit_documentation): Use docname field in output.
	(emit_init_macros): Take docname argument.  Only emit definitions
	for hooks matching docname.
	(main): Expect additional arguments in all cases.  Pass argument
	to emit_init_macros.
	* target.def: Move initial macro definitions and comments to
	target-hooks-macros.h.
	(gcc_targetcm): Move to c-family/c-target.def.
	* target.h (targetcm): Move declaration to c-family/c-target.h.
	* targhooks.c (default_handle_c_option): Move to
	c-family/c-opts.c.
	* targhooks.h (default_handle_c_option): Move declaration to
	c-family/c-common.h.
	* target-hooks-macros.h: New file.
	* config.gcc (target_has_targetcm): Define and use to add to
	c_target_objs and cxx_target_objs.
	* config/default-c.c: New file.
	* config/darwin-c.c: Include c-target.h and c-target-def.h instead
	of target.h and target-def.h.
	(TARGET_HANDLE_C_OPTION, targetcm): Define later in file.
	(darwin_objc_construct_string, darwin_cfstring_ref_p,
	darwin_check_cfstring_format_arg): Make static.
	(TARGET_OBJC_CONSTRUCT_STRING_OBJECT,
	TARGET_STRING_OBJECT_REF_TYPE_P,
	TARGET_CHECK_STRING_OBJECT_FORMAT_ARG): Define here.
	* config/darwin-protos.h (darwin_objc_construct_string,
	darwin_cfstring_ref_p, darwin_check_cfstring_format_arg): Don't
	declare.
	* config/darwin.h (TARGET_OBJC_CONSTRUCT_STRING_OBJECT,
	TARGET_STRING_OBJECT_REF_TYPE_P,
	TARGET_CHECK_STRING_OBJECT_FORMAT_ARG, TARGET_HAS_TARGETCM):
	Remove.
	* config/t-darwin (darwin-c.o): Update dependencies.
	* system.h (TARGET_HAS_TARGETCM): Poison.
	* Makefile.in (TARGET_H): Update.
	(TARGET_DEF, C_TARGET_DEF, C_TARGET_H, C_TARGET_DEF_H): Define.
	(c-family/c-format.o, c-family/c-opts.o): Update dependencies.
	(default-c.o): New target.
	(s-target-hooks-def-h): Pass "Target Hook" string to genhooks.
	(c-family/c-target-hooks-def.h, s-c-target-hooks-def-h): New
	targets.
	(s-tm-texi): Pass -d option to genhooks.  Also test timestamp on
	c-target.def.
	(build/genhooks.o): Update dependencies.

c-family:
	* c-target-def.h: New file.
	* c-target.def: New file.
	* c-target.h: New file.
	* c-common.c (targetcm): Don't define here.
	* c-common.h (default_handle_c_option): Declare.
	* c-format.c: Include c-target.h instead of target.h.
	* c-opts.c: Include c-target.h instead of target.h.  Explicitly
	include tm.h.
	(default_handle_c_option): Move from targhooks.c.

objc:
	* objc-act.c: Include c-target.h instead of target.h.
	* Make-lang.in (objc/objc-act.o): Update dependencies.

From-SVN: r172035
2011-04-06 12:08:17 +01:00
Richard Guenther
275b4baa71 ipa-inline.c (enum inlining_mode): Remove.
2011-04-06  Richard Guenther  <rguenther@suse.de>
 
	* ipa-inline.c (enum inlining_mode): Remove.
	(cgraph_flatten): Use some other token.
	(cgraph_edge_early_inlinable_p): New function, split out from ...
	(cgraph_perform_always_inlining): New function, split out from ...
	(cgraph_decide_inlining_incrementally): ... here.
	(cgraph_mark_inline_edge): Adjust.
	(cgraph_early_inlining): Re-structure.
	(pass_early_inline): Require SSA form.

From-SVN: r172033
2011-04-06 10:16:30 +00:00
Andrew Stubbs
9adc580c20 arm.h (arm_class_likely_spilled_p): Check against LO_REGS only for Thumb-1.
2011-03-06  Andrew Stubbs  <ams@codesourcery.com>
	    Julian Brown  <julian@codesourcery.com>
	    Mark Shinwell  <shinwell@codesourcery.com>

	gcc/
	* config/arm/arm.h (arm_class_likely_spilled_p): Check against
	LO_REGS only for Thumb-1.
	(MODE_BASE_REG_CLASS): Restrict base registers to those which can
	be used in short instructions when optimising for size on Thumb-2.



Co-Authored-By: Julian Brown <julian@codesourcery.com>
Co-Authored-By: Mark Shinwell <shinwell@codesourcery.com>

From-SVN: r172032
2011-04-06 09:52:52 +00:00
Ramana Radhakrishnan
33abfb6bdb Fix commit for PR target/43920
From-SVN: r172031
2011-04-06 09:41:07 +00:00
Eric Botcazou
516426da9f gimple-low.c (lower_gimple_return): When not optimizing, force labels associated with user returns to be preserved.
* gimple-low.c (lower_gimple_return): When not optimizing, force labels
	associated with user returns to be preserved.

From-SVN: r172030
2011-04-06 09:34:02 +00:00
Tristan Gingold
96621ebf37 dbxout.c: (debug_nesting...
2011-04-06  Tristan Gingold  <gingold@adacore.com>

	* dbxout.c: (debug_nesting, symbol_queue, symbol_queue_index)
	(symbol_queue_size, DBXOUT_DECR_NESTING)
	(DBXOUT_DECR_NESTING_AND_RETURN): Also define
	if XCOFF_DEBUGGING_INFO.

From-SVN: r172029
2011-04-06 09:29:53 +00:00
Uros Bizjak
07c0852e00 i386.md (attribute isa): New.
* config/i386/i386.md (attribute isa): New.
	(attribute enabled): New.
	(setcc_<mode>_sse): Merge from *{avx,sse}_setcc<mode>.
	(*fop_<mode>_comm_mixed): Merge with *fop_<mode>_comm_mixed_avx.
	(*fop_<mode>_comm_sse): Merge with *fop_<mode>_comm_avx.
	(*fop_<mode>_1_mixed): Merge with *fop_<mode>_1_mixed_avx.
	(*fop_<mode>_1_sse): Merge with *fop_<mode>_1_avx.
	(<smaxmin:code><mode>3): Merge with *avx_<smaxmin:code><mode>3.
	(*ieee_smin<mode>3): Merge with *avx_ieee_smin<mode>3.
	(*ieee_smax<mode>3): Merge with *avx_ieee_smax<mode>3.

	* config/i386/sse.md (VF): New mode iterator.
	(VF1): Ditto.
	(VF2): Ditto.
	(VF_128): Ditto.
	(SSEMODEF4): Remove.
	(attribute sse): Handle V8SF and V4DF modes.
	(<absneg:code><mode>2): Use VF mode iterator.
	(*absneg<mode>2): Merge from *{avx,sse}_absneg<mode>2.  Use VF
	mode iterator.
	(<plusminus_insn><mode>3): Use VF mode iterator.
	(*<plusminus_insn><mode>3): Merge with *avx_<plusminus_insn><mode>3.
	Use VF mode iterator.
	(<sse>_vm<plusminus_insn><mode>3): Merge with
	*avx_vm<plusminus_insn><mode>3.  Use VF_128 mode iterator.
	(mul<mode>3): Use VF mode iterator.
	(*mul<mode>3): Merge with *avx_mul<mode>3.  Use VF mode iterator.
	(<sse>_vmmul<mode>3): Merge with *avx_vmmul<mode>3.  Use VF_128
	mode iterator.
	(div<VF2:mode>3): Merge from divv2df3 and divv4df3.
	(div<VF1:mode>3): Merge from divv4sf3 and divv8sf3.
	(<sse>_div<mode>3): Merge with *avx_div<mode>3.  Use VF mode iterator.
	(<sse>_vmdiv<mode>3): Merge with *avx_vmdiv<mode>3.  Use VF_128
	mode iterator.
	(<sse>_rcp<mode>2): Merge from avx_rcpv8sf2 and sse_rcpv4sf2.
	Use VF1 mode iterator.
	(sse_vmrcpv4sf2): Merge with *avx_vmrcpv4sf2.
	(sqrt<VF2:mode>2): New expander.
	(sqrt<VF1:mode>2): Merge from sqrtv4sf2 and sqrtv8sf2.
	(<sse>_sqrt<mode>2): Merge from avx_sqrtv8sf2, sse_sqrtv4sf, sqrtv4df2
	and sqrtv2df2.  Use VF mode iterator.
	(<sse>_vmsqrt<mode>2): Merge with *avx_vmsqrt<mode>2.  Use VF_128
	mode iterator.
	(rsqrt<VF1:mode>2): Merge from rsqrtv4sf2 and rsqrtv8sf2.
	(<sse>_rsqrt<mode>2): Merge from avx_rsqrtv8sf2 and sse_rsqrt4sf2.
	Use VF1 mode iterator.
	(sse_vmrsqrtv4sf2): Merge with *avx_vmrsqrtv4sf2.
	(<smaxmin:code><mode>3): Use VF mode iterator.
	(*<smaxmin:code><mode>3_finite): Merge with
	*avx_<smaxmin:code><mode>3_finite.  Use VF mode iterator.
	(*<smaxmin:code><mode>3): Merge with *avx_<smaxmin:code><mode>3.
	(<sse>_vm<smaxmin:code><mode>2): Merge with
	*avx_vm<smaxmin:code><mode>2.  Use VF_128 mode iterator.
	(*ieee_smin<mode>3): Merge with *avx_ieee_smin<mode>3.  Use VF
	mode iterator.
	(*ieee_smax<mode>3): Merge with *avx_ieee_smax<mode>3.  Use VF
	mode iterator.
	(sse3_addsubv2df3): Merge with *avx_addsubv2df3.
	(sse3_addsubv4sf3): Merge with *avx_addsubv4sf3.
	(sse3_h<plusminus_insn>v2df3): Merge with *avx_h<plusminus_insn>v2df3.
	(sse3_h<plusminus_insn>v4sf3): Merge with *avx_h<plusminus_insn>v4sf3.
	(avx_cmp<mode>3): Rename from avx_cmp<ssemodesuffix><mode>3.  Use
	VF mode iterator.
	(avx_vmcmp<mode>3): Rename from avx_cmp<ssescalarmodesuffix><mode>3.
	Use VF_128 mode iterator.
	(<sse>_maskcmp<mode>3): Merge with *avx_maskcmp<mode>3.  Use VF
	mode iterator.
	(<sse>_vmmaskcmp<mode>3): Merge with *avx_vmmaskcmp<mode>3.  Use
	VF_128 mode iterator.
	(vcond<mode>): Use VF mode iterator.
	* config/i386/predicates.md (sse_comparison_operator): Merge with
	avx_comparison_float_operator.  Do not declare as special_predicate.
	* config/i386/i386.c (struct builtin_description): Update for renamed
	compare patterns.
	(ix86_expand_args_builtin): Ditto.
	(ix86_expand_sse_compare_mask): Ditto.

From-SVN: r172028
2011-04-06 11:24:46 +02:00
Richard Guenther
ff5d142c9e tree-inline.c (estimate_num_insns): For calls simply account for all passed arguments and a used return value.
2011-04-06  Richard Guenther  <rguenther@suse.de>

	* tree-inline.c (estimate_num_insns): For calls simply account
	for all passed arguments and a used return value.

From-SVN: r172024
2011-04-06 08:56:28 +00:00
Richard Guenther
d7d1d041ae re PR middle-end/47663 (Very simple wrapper not inlined)
2011-04-06  Richard Guenther  <rguenther@suse.de>
 
	PR tree-optimization/47663
	* cgraph.h (struct cgraph_edge): Add call_stmt_size and
	call_stmt_time fields.
	(cgraph_edge_inlinable_p): Declare.
	(cgraph_edge_recursive_p): New inline function.
	* cgraph.c (cgraph_create_edge_1): Initialize call_stmt_size.
	(cgraph_clone_edge): Copy it.
	* ipa-inline.c (cgraph_estimate_edge_time): New function.
	Account for call stmt time.
	(cgraph_estimate_time_after_inlining): Take edge argument.
	(cgraph_estimate_edge_growth): Account call stmt size.
	(cgraph_estimate_size_after_inlining): Take edge argument.
	(cgraph_mark_inline_edge): Adjust.
	(cgraph_check_inline_limits): Likewise.
	(cgraph_recursive_inlining_p): Remove.
	(cgraph_edge_badness): Use cgraph_edge_recursive_p.
	(cgraph_decide_recursive_inlining): Take edge argument and
	adjust.
	(cgraph_decide_inlining_of_small_functions): Do not avoid
	diags for recursive inlining here.
	(cgraph_flatten): Adjust.
	(cgraph_decide_inlining_incrementally): Likewise.
	(estimate_function_body_sizes): Remove call cost handling.
	(compute_inline_parameters): Initialize caller edge call costs.
	(cgraph_estimate_edge_growth): New function.
	(cgraph_estimate_growth): Use it.
	(cgraph_edge_badness): Likewise.
	(cgraph_check_inline_limits): Take an edge argument.
	(cgraph_decide_inlining_of_small_functions): Adjust.
	(cgraph_decide_inlining): Likewise.
	* tree-inline.c (estimate_num_insns): Only account for call
	return value if it is used.
	(expand_call_inline): Avoid diagnostics on recursive inline
	functions here.
	* lto-cgraph.c (lto_output_edge): Output edge call costs.
	(input_edge): Input edge call costs.

	* gcc.dg/tree-ssa/inline-8.c: New testcase.

From-SVN: r172023
2011-04-06 08:51:23 +00:00
Rainer Orth
2feb95f7d8 * config/alpha/osf5.h (MAX_OFILE_ALIGNMENT): Define.
From-SVN: r172022
2011-04-06 08:48:22 +00:00
Jonathan Wakely
26fbd9c219 invoke.texi (Spec Files): Fix typo.
2011-04-06  Jonathan Wakely  <jwakely.gcc@gmail.com>

	* doc/invoke.texi (Spec Files): Fix typo.

From-SVN: r172020
2011-04-06 09:00:43 +01:00
Eric Botcazou
694dc0cad2 profile.c (branch_prob): Move declaration of local variable.
* profile.c (branch_prob): Move declaration of local variable.  Remove
	obsolete ??? comment.  Expand the location explicitly instead of using
	the LOCATION_FILE and LOCATION_LINE macros.

From-SVN: r172019
2011-04-06 06:17:22 +00:00
Ian Lance Taylor
5c8e495222 libgo: Always use AM_LDFLAGS when linking libgo.la.
This ensures that we pass -fsplit-stack as required.

From-SVN: r172018
2011-04-06 06:01:53 +00:00
Wei Guozhi
4925d0d5e5 arm.md (arm_cmpsi_insn): Compute attr "length".
* config/arm/arm.md (arm_cmpsi_insn): Compute attr "length".
	(arm_cond_branch): Likewise.
	(arm_cond_branch_reversed): Likewise.
	(arm_jump): Likewise.
	(push_multi): Likewise.
	* config/arm/constraints.md (Py): New constraint.

From-SVN: r172017
2011-04-06 02:24:16 +00:00
Nathan Froyd
f55dfa2fe1 re PR bootstrap/48471 (ia64-*-* does not bootstrap due to unused variables in dbxout.c)
PR bootstrap/48471
	* dbxout.c (debug_nesting, symbol_queue, symbol_queue_index):
	Move these...
	(symbol_queue_size, DBXOUT_DECR_NESTING): ...and these...
	(DBXOUT_DECR_NESTING_AND_RETURN): ...and this under
	#ifdef DBX_DEBUGGING_INFO.

From-SVN: r172016
2011-04-06 01:06:42 +00:00
GCC Administrator
4bb28d9f2e Daily bump.
From-SVN: r172015
2011-04-06 00:18:48 +00:00
Joseph Myers
e417dafa76 * de.po: Update.
From-SVN: r172009
2011-04-06 00:08:35 +01:00
Eric Botcazou
466acc9ef6 pr47917.c: Add -D_XOPEN_SOURCE=500 to dg-options for Solaris 9 as well.
* gcc.dg/torture/pr47917.c: Add -D_XOPEN_SOURCE=500 to dg-options for
	Solaris 9 as well.

From-SVN: r172008
2011-04-05 22:52:46 +00:00
Eric Botcazou
3b8b39322f pr47917.c: Add -D_XOPEN_SOURCE=500 to dg-options for Solaris 8 as well.
* gcc.dg/torture/pr47917.c: Add -D_XOPEN_SOURCE=500 to dg-options for
	Solaris 8 as well.

From-SVN: r172007
2011-04-05 22:43:32 +00:00
Bernd Schmidt
fca96842b4 re PR bootstrap/48403 (bootstrap comparison failure)
PR bootstrap/48403
	* haifa-sched.c (schedule_block): Increment cycle_issued_insns only
	if old and new states differ.

From-SVN: r172006
2011-04-05 22:19:17 +00:00
Joseph Myers
30b83e381f m68k.c (m68k_handle_option): Don't handle OPT_m5200, OPT_m5206e, OPT_m528x, OPT_m5307, OPT_m5407 and OPT_mcfv4e.
* config/m68k/m68k.c (m68k_handle_option): Don't handle OPT_m5200,
	OPT_m5206e, OPT_m528x, OPT_m5307, OPT_m5407 and OPT_mcfv4e.
	* config/m68k/m68k.h (OPTION_DEFAULT_SPECS, ASM_CPU_SPEC): Don't
	handle -m5200, -m5206e, -m528x, -m5307, -m5407 and -mcfv4e.
	* config/m68k/m68k.opt (m5200, m5206e, m528x, m5307, m5407,
	mcfv4e): Use Alias.
	* config/m68k/t-mlibs (MULTILIB_MATCHES): Don't map legacy
	ColdFire options to -mcpu= options.

From-SVN: r172005
2011-04-05 22:55:18 +01:00
Jeff Law
277a9aa5a1 tree-ssa-threadupdate.c (determine_bb_domination_status): Always check if BB is a successor of LOOP->header and return NONDOMINATING if...
* tree-ssa-threadupdate.c (determine_bb_domination_status): Always
	check if BB is a successor of LOOP->header and return NONDOMINATING
	if it is not, regardless of ENABLE_CHECKING.

From-SVN: r172004
2011-04-05 15:30:54 -06:00
Ian Lance Taylor
49fd1b338c gotest: Add external timeout if internal timeout fails.
From-SVN: r172003
2011-04-05 21:11:35 +00:00