Commit Graph

112618 Commits

Author SHA1 Message Date
David S. Miller
f0237267ba Make sparc's "struct processor_costs" private to sparc.c
* config/sparc/sparc.h (sparc_costs): Remove extern decl.
	(struct processor_costs): Move from here..
	* config/sparc/sparc.c (struct processor_costs): To here.
	(sparc_costs): Mark static.

From-SVN: r180324
2011-10-22 00:30:12 -07:00
David S. Miller
9dc98917cc Convert sparc over to TARGET_SECONDARY_RELOAD.
gcc/

	* config/sparc/sparc.h (SECONDARY_INPUT_RELOAD_CLASS,
	SECONDARY_OUTPUT_RELOAD_CLASS): Delete.
	* config/sparc/sparc.c (TARGET_SECONDARY_RELOAD): Redefine.
	(sparc_secondary_reload): New function.

From-SVN: r180323
2011-10-22 00:05:32 -07:00
DJ Delorie
40c4cbcd82 obstack.h [!GNUC] (obstack_free): Avoid cast to int.
* obstack.h [!GNUC] (obstack_free): Avoid cast to int.
* ansidecl.h (ENUM_BITFIELD): Always use enum in C++

From-SVN: r180321
2011-10-21 21:35:29 -04:00
GCC Administrator
799ae3ed41 Daily bump.
From-SVN: r180320
2011-10-22 00:19:07 +00:00
Steven G. Kargl
6d8c9e5c9a re PR fortran/50821 (3 new GCC HEAD@180266 regressions)
2011-10-20  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/50821
	* check.c (gfc_check_ishftc): Check args are constant before 
	extracting the integer.

From-SVN: r180316
2011-10-21 22:48:39 +00:00
Paul Brook
74b388c339 c6x.c (c6x_asm_emit_except_personality, [...]): New functions.
* config/c6x/c6x.c (c6x_asm_emit_except_personality,
	c6x_asm_init_sections): New functions.
	(TARGET_ASM_EMIT_EXCEPT_PERSONALITY, TARGET_ASM_INIT_SECTIONS):
	Define.

From-SVN: r180314
2011-10-21 21:04:13 +00:00
Paul Brook
56dc349e1a * unwind-arm-common.inc: Handle ID3/4 unwinding data.
From-SVN: r180313
2011-10-21 21:00:11 +00:00
Paolo Carlini
d2e312d7e5 re PR c++/45385 (missing -Wconversion for method calls)
/cp
2011-10-21  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/45385
	* init.c (build_vec_init): Early return error_mark_node if
	maxindex is -1.

/c-family
2011-10-21  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/45385
	* c-common.c (conversion_warning): Remove code looking for
	artificial operands.

/testsuite
2011-10-21  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/45385
	* g++.dg/warn/Wconversion4.C: New.

From-SVN: r180312
2011-10-21 20:01:31 +00:00
Jakub Jelinek
9956ad4d14 re PR target/50813 (gcc.dg/torture/vshuf-{v4di,v8si}.c fail on AVX target)
PR target/50813
	* config/i386/i386.c (expand_vec_perm_even_odd_1): Handle
	V4DImode and V8SImode for !TARGET_AVX2.

	* gcc.dg/torture/vshuf-32.inc: Add broadcast permutation
	from element other than first and reverse permutation.
	* gcc.dg/torture/vshuf-16.inc: Likewise.
	* gcc.dg/torture/vshuf-8.inc: Likewise.
	* gcc.dg/torture/vshuf-4.inc: Likewise.

From-SVN: r180311
2011-10-21 21:32:20 +02:00
Bernd Schmidt
f561ef0f49 re PR bootstrap/50825 (bootstrap fails at stage1 libgcc from r180302)
PR bootstrap/50825
	* sched-deps.c (add_dependence): If not doing predication, promote
	REG_DEP_CONTROL to REG_DEP_ANTI.

From-SVN: r180310
2011-10-21 18:38:44 +00:00
Paolo Carlini
fe66170d5b re PR c++/31423 (Improve upon "invalid use of member (did you forget the '&' ?)")
/cp
2011-10-21  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/31423
	* typeck2.c (cxx_incomplete_type_diagnostic): Improve error message
	for invalid use of member function.

/testsuite
2011-10-21  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/31423
	* g++.dg/parse/error43.C: New.
	* g++.dg/parse/error44.C: Likewise.

From-SVN: r180309
2011-10-21 18:18:55 +00:00
Georg-Johann Lay
c1a330ef7f avr.h (LEGITIMIZE_RELOAD_ADDRESS): Pass address of X instead of X to avr_legitimize_reload_address.
* config/avr/avr.h (LEGITIMIZE_RELOAD_ADDRESS): Pass address of X
	instead of X to avr_legitimize_reload_address.
	* config/avr/avr-protos.h (avr_legitimize_reload_address): Change
	first argument's type from rtx to rtx*.
	* config/avr/avr.c (avr_legitimize_reload_address): Ditto.
	Pass PX to push_reload instead of &X.  Change log messages for
	better distinction.

From-SVN: r180308
2011-10-21 15:46:32 +00:00
Roland Stigge
9200b30225 re PR translation/47064 (params.def: Translatable string compilatoin (vs. compilation))
2011-10-21  Roland Stigge  <stigge@antcom.de>

	PR translation/47064
	* params.def: Fix typo "compilatoin" -> "compilation".

From-SVN: r180307
2011-10-21 14:55:42 +00:00
Uros Bizjak
d25f2fb9d6 * ChangeLog: Add missing PR reference.
From-SVN: r180305
2011-10-21 16:34:51 +02:00
H.J. Lu
2c9b39efcb re PR driver/50740 (CPUID leaf 7 for BMI/BMI2/AVX2 feature detection not qualified with max_level and doesn't use subleaf)
PR target/50740
	* config/i386/driver-i386.c (host_detect_local_cpu): Do cpuid 7 only
	if max_level allows that.

testsuite/ChangeLog:

	PR target/50740
	* gcc.target/i386/avx2-check.h (main): Check CPUID level correctly.
	* gcc.target/i386/bmi2-check.h: Ditto.

From-SVN: r180304
2011-10-21 16:32:32 +02:00
Bernd Schmidt
e2724e63c6 reg-notes.def (DEP_CONTROL): New.
* reg-notes.def (DEP_CONTROL): New.
	* sched-ebb.c (add_deps_for_risky_insns): Add a REG_DEP_CONTROL when
	not doing speculation.
	* rtlanal.c (record_hard_reg_sets, find_all_hard_reg_sets,
	record_hard_reg_uses_1, record_hard_reg_uses): New functions.
	* function.c (record_hard_reg_sets, record_hard_reg_uses,
	record_hard_reg_uses_1): Remove; move to rtlanal.c.
	* lists.c (copy_INSN_LIST, concat_INSN_LIST): New functions.
	* haifa-sched.c: Swap includes of "rtl.h" and "hard-reg-set.h".
	(MUST_RECOMPUTE_SPEC_P): New macro.
	(real_insn_for_shadow): New function.
	(cond_clobbered_p, recompute_todo_spec, check_clobbered_conditions,
	toggle_cancelled_flags): New static functions.
	(schedule_insn): Relax an assert to only check for empty hard back
	dependencies.  Skip cancelled dependencies.  Call
	check_clobbered_conditions.
	(copy_insn_list): Remove function, renamed moved to lists.c.
	(save_backtrack_point): Use new spelling copy_INSN_LIST.
	(unschedule_insns_until): Ensure TODO_SPEC is reset properly.
	(restore_last_backtrack_point): Likewise.  Call toggle_cancelled_flags.
	(estimate_insn_tick): Ignore cancelled dependencies.
	(haifa_speculate_insn): Move declaration.
	(try_ready): Move code into recompute_todo_spec and call it.  Tweak
	some asserts.  Ensure predicated patterns are restored if necessary.
	Dump DEP_CONTROL flag.
	(haifa_change_pattern): Merge with sched_change_pattern.
	(sched_change_pattern): Remove function.
	* sched-deps.c (NON_FLUSH_JUMP_KIND, NON_FLUSH_JUMP): Remove.  All
	uses changed to simply not test NON_FLUSH_JUMP_P.
	(ds_to_dk, dk_to_ds, dump_dep, ds_to_dt, dump_ds, check_dep): Handle
	REG_DEP_CONTROL.
	(dep_spec_p): If DO_PREDICATION, REG_DEP_CONTROL is speculative.
	(reg_pending_control_uses, control_dependency_cache): New static
	variables.
	(sched_get_reverse_condition_uncached): New function.
	(sd_find_dep_between): Remove pointless assert.  Look in
	control_dependency_cache.
	(ask_dependency_caches, set_dependency_caches, sd_delete_dep,
	extend_dependency_caches, sched_deps_finish): Handle REG_DEP_CONTROL
	and control_dependency_cache.
	(sd_unresolve_dep): Use dep_spec_p.
	(add_dependence): Now a wrapper around add_dependence_1, handling
	REG_DEP_CONTROL specially.
	(flush_pending_lists): Clear pending_jump_insns.
	(sched_analyze_1): Handle pending_jump_insns like a memory flush.
	(sched_analyze_2): Unconditionally add to pending memory flushes,
	keep previous behaviour but apply it to pending_jump_insns instead.
	(sched_analyze_insn): Defer adding jump reg dependencies using
	reg_pending_control_uses; add them to the control_uses list.  Handle
	pending_jump_insns and control_uses when adding dependence lists.
	(deps_analyze_insn): Update INSN_COND_DEPS.
	(deps_analyze_insn): Add jumps to pending_jump_insns rather than
	last_pending_memory_flush.
	(init_deps): Initialize pending_jump_insns.
	(free_deps): Free control_uses.
	(remove_from_deps): Remove from pending_jump_insns.
	(init_deps_global): Allocate reg_pending_control_uses).
	(finish_deps_global): Free it.
	(add_dependence_1): Renamed from add_dependence.  Handle
	REG_DEP_CONTROL.
	* rtl.h (record_hard_reg_uses, find_all_hard_reg_sets): Declare.
	(copy_INSN_LIST, concat_INSN_LIST): Declare.
	* sched-int.h (struct deps_reg): Add control_uses.
	(struct deps_desc): Add pending_jump_insns.
	(struct _haifa_deps_insn_data): Add cond_deps.
	(struct _haifa_insn_data): Add must_recompute_spec and predicated_pat.
	(INSN_COND_DEPS, PREDICATED_PAT): New macros.
	(BITS_PER_DEP_WEAK): Adjust for two extra bits in the word.
	(DEP_CONTROL): New macro.
	(DEP_TYPES): Include it.
	(HARD_DEP): Adjust definition.
	(DEP_CANCELLED): New macro.
	(enum SCHED_FLAGS): Add DO_PREDICATION.
	(sched_get_reverse_condition_uncached, real_insn_for_shadow): Declare.
	* sched-rgn.c (concat_INSN_LIST): Remove function.
	(deps_join): Handle pending_jump_insns.
	(free_pending_lists): Likewise.
	* config/c6x/c6x.c (c6x_set_sched_flags): Set DO_PREDICATION for final
	schedule.

From-SVN: r180302
2011-10-21 13:35:44 +00:00
Ville Voutilainen
b9af306b97 re PR c++/50811 ([C++0x] G++ rejects class-virt-specifier if class-head-name includes nested-name-specifier)
PR c++/50811
	* parser.c (cp_parser_class_head): Parse virt-specifiers
	regardless of whether an id is present

From-SVN: r180301
2011-10-21 09:31:21 -04:00
Rainer Orth
d75b27217b Fix gnat.dg testing with linker plugin check
* lib/gcc-dg.exp (GCC_UNDER_TEST): Set before calling
	check_linker_plugin_available.

From-SVN: r180300
2011-10-21 12:53:09 +00:00
Georg-Johann Lay
d573919e7c re PR target/50820 ([avr] Use EIND consistently)
PR target/50820
	* config/avr/libgcc.S (__EIND__): New define to 0x3C.
	(__tablejump__): Consistently use EIND for indirect jump/call.
	(__tablejump_elpm__): Ditto.

From-SVN: r180299
2011-10-21 12:48:04 +00:00
Bernd Schmidt
8076c3e3e4 c6x.md (attr "op_pattern"): New.
* config/c6x/c6x.md (attr "op_pattern"): New.
	(load_sdata_pic, mov<mode>_insn for QIHIM and SISFVM): Set it.
	* config/c6x/c6x-mult.md.in (mulhi3_VARIANT_, mulhisi3_insn_VARIANT_):
	Likewise.
	* config/c6x/c6x-mult.md: Regenerate.
	* config/c6x/c6x.c: Include "regrename.h".
	(unit_req_table): New typedef.
	(unit_reqs): Use it for the declaration.
	(unit_req_factor, get_unit_reqs, merge_unit_reqs, unit_req_imbalance,
	get_unit_operand_masks, try_rename_operands, reshuffle_units): New
	static functions.
	(count_unit_reqs): New arg reqs.  All callers changed.  Use
	get_unit_reqs, and don't merge here.
	(res_mii): New arg reqs.  All callers changed.  Rewrite to use a loop
	using unit_req_factor.
	(hwloop_optimize): Call reshuffle_units.  Call merge_unit_reqs after
	count_unit_reqs.
	(c6x_reorg): Add reg notes problem, and call df_analyze.
	* Makefile.in ($(out_object_file)): Depend on regrename.h.

From-SVN: r180296
2011-10-21 11:54:25 +00:00
Kai Tietz
bb35fdd04a branch-cost1.c: New test.
* gcc.target/i386/branch-cost1.c: New test.
        * gcc.target/i386/branch-cost2.c: New test.
        * gcc.target/i386/branch-cost3.c: New test.
        * gcc.target/i386/branch-cost4.c: New test.

        * fold-const.c (simple_operand_p_2): Handle integral
        casts from boolean-operands.

From-SVN: r180295
2011-10-21 13:50:42 +02:00
Rainer Orth
b867358a06 Fix several ChangeLog errors.
From-SVN: r180294
2011-10-21 11:41:15 +00:00
Jan Hubicka
25e2c40dd7 cgraph.c (dump_cgraph_node): Dump alias flag.
* cgraph.c (dump_cgraph_node): Dump alias flag.
	* cgraphunit.c (handle_alias_pairs): Handle weakrefs with no destination.
	(get_alias_symbol): New function.
	(output_weakrefs): Output also weakrefs with no destinatoin.
	(lto_output_node): Output weakref alias flag when at function boundary.

From-SVN: r180292
2011-10-21 11:04:20 +00:00
Andrew Stubbs
49008cb98e re PR target/50809 (driver-arm.c:55:11: error: anonymous type with no linkage used to declare variable '<anonymous struct> vendors []' with linkage [-Werror])
2011-10-21  Andrew Stubbs  <ams@codesourcery.com>

	PR target/50809

	gcc/
	* config/arm/driver-arm.c (vendors): Make static.

From-SVN: r180289
2011-10-21 10:31:48 +00:00
Uros Bizjak
efc1540576 i386.c (ix86_emit_swdivsf): Force b into register.
* config/i386/i386.c (ix86_emit_swdivsf): Force b into register.
	(ix86_emit_swsqrtsf): Force a into register.

From-SVN: r180287
2011-10-21 09:30:24 +02:00
Mike Stump
3147591f60 regcprop.c (copyprop_hardreg_forward_1): Update recog_data after validate_change wipes it out.
* regcprop.c (copyprop_hardreg_forward_1): Update recog_data
	after validate_change wipes it out.

From-SVN: r180284
2011-10-21 02:14:32 +00:00
Ulrich Weigand
b66cf46e4d spu.md ("vec_permv16qi"): Reduce selector modulo 32 before using the shufb instruction.
* config/spu/spu.md ("vec_permv16qi"): Reduce selector modulo 32
	before using the shufb instruction.

From-SVN: r180283
2011-10-21 01:27:36 +00:00
GCC Administrator
d2a80c9fbd Daily bump.
From-SVN: r180282
2011-10-21 00:19:02 +00:00
Steve Ellcey
7ec254da41 vect-120.c: Add vect_floatint_cvt requirement.
2011-10-20  Steve Ellcey  <sje@cup.hp.com>

	* gcc.dg/vect/vect-120.c: Add vect_floatint_cvt requirement.

From-SVN: r180278
2011-10-20 21:29:20 +00:00
Steve Ellcey
926ac8d494 re PR testsuite/50722 (FAIL: gcc.dg/pr49994-3.c (test for excess errors))
2011-10-20  Steve Ellcey  <sje@cup.hp.com>

	PR testsuite/50722
	* gcc.dg/pr49994-3.c: Skip on HP-UX.

From-SVN: r180277
2011-10-20 21:26:01 +00:00
Joseph Myers
65be965bfc pr46940_0.c (ASMNAME, [...]): Define.
* gcc.dg/lto/pr46940_0.c (ASMNAME, ASMNAME2, STRING): Define.
	(_moz_foo, EXT__foo): Use ASMNAME.

From-SVN: r180276
2011-10-20 22:09:48 +01:00
Joseph Myers
515b520e4f lto.exp (lto-execute): Use .exe suffix for test executable names.
* lib/lto.exp (lto-execute): Use .exe suffix for test executable
	names.

From-SVN: r180272
2011-10-20 21:39:36 +01:00
Kirill Yukhin
6dd3234ecf Fix operands order in BMI2 patterns.
gcc/

2011-10-20  Kirill Yukhin  <kirill.yukhin@intel.com>

	PR target/50766
	* config/i386/i386.md (bmi_bextr_<mode>): Update register/
	memory operand order.
	(bmi2_bzhi_<mode>3): Ditto.
	(bmi2_pdep_<mode>3): Ditto.
	(bmi2_pext_<mode>3): Ditto.

gcc/testsuite/

2011-10-20  Kirill Yukhin  <kirill.yukhin@intel.com>

	PR target/50766
	* gcc.target/i386/pr50766.c: New test.

From-SVN: r180271
2011-10-20 13:37:32 -07:00
Richard Henderson
5a3c00681c target.def (vec_perm_const_ok): Rename from builtin_vec_perm_ok.
* target.def (vec_perm_const_ok): Rename from builtin_vec_perm_ok.
	* optabs.c (can_vec_perm_expr_p): Update to match.
	(expand_vec_perm_expr): Likewise.
	* config/i386/i386.c (TARGET_VECTORIZE_VEC_PERM_CONST_OK): Rename
	from TARGET_VECTORIZE_BUILTIN_VEC_PERM_OK.
	* doc/tm.texi.in: Likewise.

From-SVN: r180270
2011-10-20 13:10:05 -07:00
Sergey Ostanevich
74acb076e9 Change Atom align_loops_max_skip to 15.
2011-10-20  Sergey Ostanevich  <sergos.gnu@gmail.com>

	PR target/50572
	* config/i386/i386.c (processor_target_table): Change Atom
	align_loops_max_skip to 15.

From-SVN: r180268
2011-10-20 12:29:52 -07:00
Jason Merrill
76187e874a re PR c++/41449 (Partial aggregate initialization not cleaned up on exception)
PR c++/41449
	* typeck2.c (split_nonconstant_init_1): Handle EH cleanup of
	initialized subobjects.

From-SVN: r180267
2011-10-20 15:13:51 -04:00
Richard Henderson
5dea5b2a34 Remove TARGET_VECTORIZE_BUILTIN_VEC_PERM.
From-SVN: r180266
2011-10-20 12:07:41 -07:00
Steven G. Kargl
0019028b0b ishft_3.f90: Update test.
2011-10-20  Steven G. Kargl  <kargl@gcc.gnu.org>
 
	* gfortran.dg/ishft_3.f90:  Update test.
 
2011-10-20  Steven G. Kargl  <kargl@gcc.gnu.org>
 
	* check.c (less_than_bitsize1): Check |shift| <= bit_size(i).
	(gfc_check_ishftc):  Check |shift| <= bit_size(i) and check
	that size is positive.

From-SVN: r180264
2011-10-20 18:07:10 +00:00
Steven G. Kargl
86daf6d59d re PR fortran/50524 (*** glibc detected *** invalid free() pointer on illegal code (r178939))
2011-10-15  Steven G. Kargl  <kargl@gcc.gcu.org>
 
	PR fortran/50524
	* resolve.c (resolve_ref): Check return value of resolve_substring().

2011-10-15  Steven G. Kargl  <kargl@gcc.gcu.org>
 
	PR fortran/50524
	* gfortran.dg/substring_integer_index.f90: New test.

From-SVN: r180262
2011-10-20 17:15:06 +00:00
Steven G. Kargl
fc3c949109 2011-10-16 Steven G. Kargl<kargl@gcc.gnu.org>
* io.c (match_dt_format): Match a user-defined operator or a kind
	type prefixed string.

2011-10-16  Steven G. Kargl<kargl@gcc.gnu.org>

	* gfortran.dg/format_string.f: New test.

From-SVN: r180261
2011-10-20 17:04:53 +00:00
Dodji Seketeli
24685ae9c5 Fix building ggc-zone.c
* ggc-zone.c (ggc_internal_alloc_zone_stat): Rename
	ggc_alloced_size_order_for_request into ggc_round_alloc_size like
	it was done in ggc-page.c.

From-SVN: r180258
2011-10-20 17:22:17 +02:00
Uros Bizjak
455c36ea0a ipa-sra-2.c: Add dg-require-effective-target non_strict_align.
* gcc.dg/ipa/ipa-sra-2.c: Add dg-require-effective-target
       non_strict_align.
       * gcc.dg/ipa/ipa-sra-6.c: Ditto.

From-SVN: r180257
2011-10-20 17:20:34 +02:00
Uros Bizjak
bbe996ec71 re PR target/47989 (-mrecip causes 482.sphinx3, 464.h264ref and 481.wrf to miscompare)
PR target/47989
	* config/i386/i386.h (RECIP_MASK_DEFAULT): New define.
	* config/i386/i386.op (recip_mask): Initialize with RECIP_MASK_DEFAULT.
	* doc/invoke.texi (ix86 Options, -mrecip): Document that GCC
	implements vectorized single float division and vectorized sqrtf(x)
	with reciprocal sequence with additional Newton-Raphson step with
	-ffast-math.

From-SVN: r180256
2011-10-20 17:13:30 +02:00
Paul Brook
eb405c4669 exception.c (parse_lsda_header): hardcode ttype_encoding for older ARM EABI toolchains.
2011-10-17  Paul Brook  <paul@codesourcery.com>
            Matthias Klose  <doko@ubuntu.com>

        * exception.c (parse_lsda_header): hardcode ttype_encoding for older
        ARM EABI toolchains.
        (get_ttype_entry) Remove __ARM_EABI_UNWINDER__ variant.

Co-Authored-By: Matthias Klose <doko@ubuntu.com>

From-SVN: r180255
2011-10-20 13:57:21 +00:00
Paul Brook
86220f3f94 exception.cc (parse_lsda_header): hardcode ttype_encoding for older ARM EABI toolchains.
2011-10-17  Paul Brook  <paul@codesourcery.com>

        * exception.cc (parse_lsda_header): hardcode ttype_encoding for older
        ARM EABI toolchains.
        (get_ttype_entry) Remove __ARM_EABI_UNWINDER__ variant.

From-SVN: r180254
2011-10-20 13:56:12 +00:00
Joseph Myers
6b2de4c7d8 pr40906-1.c, [...]: Do not use -mno-accumulate-outgoing-args.
* gcc.target/i386/pr40906-1.c, gcc.target/i386/pr40906-2.c,
	gcc.target/i386/pr46226.c: Do not use
	-mno-accumulate-outgoing-args.

From-SVN: r180252
2011-10-20 14:04:34 +01:00
Joseph Myers
6611b62cc2 val-prof-7.c: Declare bzero instead of including <strings.h>.
* gcc.dg/tree-prof/val-prof-7.c: Declare bzero instead of
	including <strings.h>.

From-SVN: r180251
2011-10-20 14:03:56 +01:00
Dodji Seketeli
61445bdc92 Use @smallexample instead of @quotation in cppopts.texi
gcc/
	PR other/50659
	* doc/cppopts.texi: Use @smallexample/@end smallexample in
	documentation for -fdebug-cpp instead of @quotation/@end quotation
	that is not supported by contrib/texi2pod.pl.

From-SVN: r180250
2011-10-20 14:36:55 +02:00
Jan Hubicka
f2aeb744a1 ipa-inline.c (inline_small_functions): Always update all calles after inlining.
* ipa-inline.c (inline_small_functions): Always update all calles after
	inlining.

From-SVN: r180249
2011-10-20 12:18:56 +00:00
Jan Hubicka
51973b1e1f lto.c (node_cmp, [...]): New functions.
* lto.c (node_cmp, varpool_node_cmp): New functions.
	(lto_balanced_map): Honnor -fno-toplevel-reorder of vars&functions.
	(cmp_partitions): Rename to ...
	(cmp_partitions_size): ... this one.
	(cmp_partitions_order): New function.
	(lto_wpa_write_files): Sort partitions by order when
	-fno-toplevel-reorder is used.

From-SVN: r180248
2011-10-20 11:49:31 +00:00