OSDN Git Service

pf3gnuchains/gcc-fork.git
13 years ago2011-01-23 Tobias Burnus <burnus@net-b.de>
burnus [Sun, 23 Jan 2011 22:26:27 +0000 (22:26 +0000)]
2011-01-23  Tobias Burnus  <burnus@net-b.de>

        PR fortran/47421
        * trans-decl.c (gfc_trans_deferred_vars): Do not nullify
        scalar allocatable dummy arguments.

2011-01-23  Tobias Burnus  <burnus@net-b.de>

        PR fortran/47421
        * gfortran.dg/allocatable_scalar_12.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169145 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR rtl-optimization/47166
bernds [Sun, 23 Jan 2011 21:11:24 +0000 (21:11 +0000)]
PR rtl-optimization/47166
* reload1.c (emit_reload_insns): Disable the spill_reg_store
mechanism for PRE_MODIFY and POST_MODIFY.
(inc_for_reload): For PRE_MODIFY, return the insn that sets the
reloadreg.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169144 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago* compare-elim.c (maybe_select_cc_mode): Add ATTRIBUTE_UNUSED
schwab [Sun, 23 Jan 2011 14:27:33 +0000 (14:27 +0000)]
* compare-elim.c (maybe_select_cc_mode): Add ATTRIBUTE_UNUSED
markers.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169143 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * gcc.dg/vect/costmodel/spu/costmodel-vect-33.c: Expect
irar [Sun, 23 Jan 2011 08:20:22 +0000 (08:20 +0000)]
    * gcc.dg/vect/costmodel/spu/costmodel-vect-33.c: Expect
        vectorization to be not profitable if peeling is used
        to realign the memory access.
        * gcc.dg/vect/costmodel/spu/costmodel-vect-76a.c:
        Increase loop bound to avoid loop unrolling.
        * gcc.dg/vect/costmodel/spu/costmodel-vect-76c.c:
        Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169142 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoDaily bump.
gccadmin [Sun, 23 Jan 2011 00:18:24 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169141 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR lto/47333
hubicka [Sat, 22 Jan 2011 23:45:45 +0000 (23:45 +0000)]
PR lto/47333
* g++.dg/lto/pr47333.C: New file.
* lto-cgraph.c (reachable_from_this_partition_p): Fix pasto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169137 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR tree-optimization/43884
hubicka [Sat, 22 Jan 2011 21:47:40 +0000 (21:47 +0000)]
PR tree-optimization/43884
PR lto/44334
* predict.c (maybe_hot_frequency_p): Use entry block frequency as an base.
* doc/invoke.texi (hot-bb-frequency-fraction): Update docs.
* gcc.dg/autopar/outer-2.c: Increase array size.
* gcc.dg/tree-ssa/ldist-pr45948.c: Update test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169136 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/s390/s390.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST): Remove.
aesok [Sat, 22 Jan 2011 21:38:39 +0000 (21:38 +0000)]
* config/s390/s390.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST): Remove.
* config/s390/s390.c (s390_register_move_cost,
s390_memory_move_cost): New.
(TARGET_REGISTER_MOVE_COST, TARGET_MEMORY_MOVE_COST): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169135 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR middle-end/47401
uweigand [Sat, 22 Jan 2011 21:24:54 +0000 (21:24 +0000)]
PR middle-end/47401
* except.c (sjlj_assign_call_site_values): Move setting the
crtl->uses_eh_lsda flag to ...
(sjlj_mark_call_sites): ... here.
(sjlj_emit_function_enter): Support NULL dispatch label.
(sjlj_build_landing_pads): In a function with no landing pads
that still has must-not-throw regions, generate code to register
a personality function with empty LSDA.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169134 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agorx: Enable the compare-elim pass.
rth [Sat, 22 Jan 2011 19:39:36 +0000 (19:39 +0000)]
rx: Enable the compare-elim pass.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169133 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agomn10300: Enable the compare-elim pass.
rth [Sat, 22 Jan 2011 19:37:55 +0000 (19:37 +0000)]
mn10300: Enable the compare-elim pass.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169132 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoNew -fcompare-elim pass.
rth [Sat, 22 Jan 2011 19:35:10 +0000 (19:35 +0000)]
New -fcompare-elim pass.

Version 3, with two rounds of comments from Paolo Bonzini.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169131 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-01-22 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Sat, 22 Jan 2011 17:30:22 +0000 (17:30 +0000)]
2011-01-22  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/38536
* resolve.c (gfc_iso_c_func_interface):  For C_LOC,
check for array sections followed by component references
which are illegal.  Also check for coindexed arguments.

2011-01-22  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/38536
* gfortran.dg/c_loc_tests_16.f90:  New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169130 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/rx/rx.md (cstoresf4): Pass comparison operator to
nickc [Sat, 22 Jan 2011 16:09:52 +0000 (16:09 +0000)]
* config/rx/rx.md (cstoresf4): Pass comparison operator to
rx_split_fp_compare.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169129 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/rx/rx.md (UNSPEC_CONST): New.
nickc [Sat, 22 Jan 2011 16:05:49 +0000 (16:05 +0000)]
* config/rx/rx.md (UNSPEC_CONST): New.
(deallocate_and_return): Wrap the amount popped off the stack in
an UNSPEC_CONST in order to stop it being rejected by
-mmax-constant-size.
(pop_and_return): Add a "(return)" rtx.
(call): Drop the immediate operand.
(call_internal): Likewise.
(call_value): Likewise.
(call_value_internal): Likewise.
(sibcall_internal): Likewise.
(sibcall_value_internal): Likewise.
(sibcall): Likewise.  Generate an explicit call using
sibcall_internal.
(sibcall_value): Likewise.
(mov<>): FAIL if a constant operand is not legitimate.
(addsi3_unpsec): New pattern.
* config/rx/rx.c (rx_print_operand_address): Handle UNPSEC
CONSTs.
(ok_for_max_constant): New function.
(gen_safe_add): New function.
(rx_expand_prologue): Use gen_safe_add.
(rx_expand_epilogue): Likewise.
(rx_is_legitimate_constant): Use ok_for_max_constant.  Handle
UNSPEC CONSTs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169128 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-01-22 Tobias Burnus <burnus@net-b.de>
burnus [Sat, 22 Jan 2011 13:50:25 +0000 (13:50 +0000)]
2011-01-22  Tobias Burnus  <burnus@net-b.de>

        PR fortran/47399
        * primary.c (gfc_match_varspec): Relax gcc_assert to allow for
        PARAMETER TBP.

2011-01-22  Tobias Burnus  <burnus@net-b.de>

        PR fortran/47399
        * gfortran.dg/typebound_proc_19.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169126 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR tree-optimization/47053
law [Sat, 22 Jan 2011 04:09:44 +0000 (04:09 +0000)]
PR tree-optimization/47053
* tree-ssa-dse.c (need_eh_cleanup): New bitmap.
(dse_optimize_stmt): Set the appropriate bit in NEED_EH_CLEANUP when
statements are deleted.
(tree_ssa_dse): Allocate & free NEED_EH_CLEANUP.  If NEED_EH_CLEANUP
is nonempty, then purge dead edges and cleanup the CFG.

PR tree-optimization/47053
* g++.dg/pr47053.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169123 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoAvoid crash when M structure free just before thread exit.
ian [Sat, 22 Jan 2011 02:59:24 +0000 (02:59 +0000)]
Avoid crash when M structure free just before thread exit.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169121 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agolibgo: Adjust deadlock avoidance.
ian [Sat, 22 Jan 2011 02:15:01 +0000 (02:15 +0000)]
libgo: Adjust deadlock avoidance.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169120 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agosyscalls: Add SPARC RTEMS specific file.
ian [Sat, 22 Jan 2011 02:01:38 +0000 (02:01 +0000)]
syscalls: Add SPARC RTEMS specific file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169119 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoDaily bump.
gccadmin [Sat, 22 Jan 2011 00:18:41 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169118 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoAvoid deadlock creating new thread.
ian [Sat, 22 Jan 2011 00:12:00 +0000 (00:12 +0000)]
Avoid deadlock creating new thread.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169114 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoAvoid deadlock when finalizer lock is held during gc.
ian [Fri, 21 Jan 2011 23:33:52 +0000 (23:33 +0000)]
Avoid deadlock when finalizer lock is held during gc.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169112 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoPR 46267 strerror thread safety
jb [Fri, 21 Jan 2011 22:42:17 +0000 (22:42 +0000)]
PR 46267 strerror thread safety

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169110 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/47041
jason [Fri, 21 Jan 2011 22:30:26 +0000 (22:30 +0000)]
PR c++/47041
* semantics.c (build_constexpr_constructor_member_initializers):
Handle trivial copy.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169108 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoPR debug/47402
aoliva [Fri, 21 Jan 2011 22:11:24 +0000 (22:11 +0000)]
PR debug/47402
Temporarily revert:
2011-01-21  Alexandre Oliva  <aoliva@redhat.com>
PR debug/47106
* tree-dfa.c (create_var_ann): Mark variable as used.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169107 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoFix race condition in test case.
ian [Fri, 21 Jan 2011 22:01:02 +0000 (22:01 +0000)]
Fix race condition in test case.

Brought over from master repository.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169106 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/47388
jakub [Fri, 21 Jan 2011 21:34:25 +0000 (21:34 +0000)]
PR c++/47388
* semantics.c (begin_for_stmt): If -fno-for-scope, don't
assume init must be NULL if scope is NULL.
(begin_range_for_stmt): Likewise.

* g++.dg/cpp0x/range-for10.C: New test.
* g++.dg/template/for1.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169105 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-01-21 Tobias Burnus <burnus@net-b.de>
burnus [Fri, 21 Jan 2011 20:33:10 +0000 (20:33 +0000)]
2011-01-21  Tobias Burnus  <burnus@net-b.de>

        PR fortran/47394
        * error.c (gfc_error_now, gfc_fatal_error, gfc_error_check):
        Use defined instead of magic number exit status codes.
        * scanner.c (include_line, gfc_new_file): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169104 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-01-21 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Fri, 21 Jan 2011 19:41:13 +0000 (19:41 +0000)]
2011-01-21  Benjamin Kosnik  <bkoz@redhat.com>

* include/bits/c++config (_GLIBCXX_EXPORT_TEMPLATE): Remove.
* include/debug/safe_sequence.h: Same.
* include/debug/safe_iterator.h: Same.
* include/std/forward_list: Same.
* include/std/deque: Same.
* include/std/list: Same.
* include/std/random: Same.
* include/std/streambuf: Same.
* include/std/fstream: Same.
* include/std/istream: Same.
* include/std/string: Same.
* include/std/ostream: Same.
* include/std/sstream: Same.
* include/ext/vstring.h: Same.
* include/bits/basic_ios.h: Same.
* include/bits/locale_classes.h: Same.
* include/bits/locale_facets.h: Same.
* include/bits/valarray_array.h: Same.
* include/bits/locale_facets_nonio.h: Same.
* include/tr1/random: Same.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169102 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR middle-end/45566
jakub [Fri, 21 Jan 2011 19:35:42 +0000 (19:35 +0000)]
PR middle-end/45566
* except.c (convert_to_eh_region_ranges): Emit queued no-region
notes from other section in hot/cold partitioning even if
last_action is -3.  Increment call_site_base.

* g++.dg/tree-prof/partition3.C: New test.

* g++.dg/tree-prof/tree-prof.exp: Fix a comment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169101 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR rtl-optimization/47366
jakub [Fri, 21 Jan 2011 19:34:03 +0000 (19:34 +0000)]
PR rtl-optimization/47366
* fwprop.c (forward_propagate_into): Return bool.  If
any changes are made, -fnon-call-exceptions is used and
REG_EH_REGION note is present, call purge_dead_edges
and return true if it purged anything.
(fwprop_addr): Adjust callers, call cleanup_cfg (0) if
any EH edges were purged.

* g++.dg/opt/pr47366.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169100 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/46552
jason [Fri, 21 Jan 2011 18:59:40 +0000 (18:59 +0000)]
PR c++/46552
* semantics.c (cxx_eval_constant_expression): Handle OFFSET_REF.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169099 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoRemove the types float and complex.
ian [Fri, 21 Jan 2011 18:19:03 +0000 (18:19 +0000)]
Remove the types float and complex.

Update to current version of Go library.

Update testsuite for removed types.

* go-lang.c (go_langhook_init): Omit float_type_size when calling
go_create_gogo.
* go-c.h: Update declaration of go_create_gogo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169098 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/46977
jason [Fri, 21 Jan 2011 17:38:02 +0000 (17:38 +0000)]
PR c++/46977
* semantics.c (potential_constant_expression_1): Split out from
potential_constant_expression.  Add want_rval parm.  Handle
template expression forms.  Don't enforce restriction on address
of automatic variable here.  Add a couple of diagnostics that
had been missing.
(require_potential_constant_expression): New entry point.
(build_data_member_initialization, register_constexpr_fundef): Adjust.
(maybe_constant_value): Check potential_constant_expression.
* pt.c (fold_non_dependent_expr_sfinae): Likewise.
* tree.c (build_vec_init_expr): Adjust.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169096 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR rtl-optimization/41619
law [Fri, 21 Jan 2011 16:49:31 +0000 (16:49 +0000)]
PR rtl-optimization/41619
* caller-save.c (setup_save_areas): Break out code to determine
which hard regs are live across calls by examining the reload chains
so that it is always used.
Eliminate code which checked REG_N_CALLS_CROSSED.

PR rtl-optimization/41619
* gcc.dg/pr41619.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169095 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR tree-optimization/47355
jakub [Fri, 21 Jan 2011 15:15:40 +0000 (15:15 +0000)]
PR tree-optimization/47355
* tree-eh.c (cleanup_empty_eh_merge_phis): Give up if
NOP has non-debug uses beyond PHIs in new_bb.

* g++.dg/opt/pr47355.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169094 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoPR debug/47106
aoliva [Fri, 21 Jan 2011 14:57:33 +0000 (14:57 +0000)]
PR debug/47106
* cfgexpand.c (account_used_vars_for_block): Only account vars
that are annotated as used.
(estimated_stack_frame_size): Don't set TREE_USED.
* tree-dfa.c (create_var_ann): Mark variable as used.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169093 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-01-21 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 21 Jan 2011 14:14:12 +0000 (14:14 +0000)]
2011-01-21  Richard Guenther  <rguenther@suse.de>

PR middle-end/47395
* tree.def (WIDEN_MULT_MINUS_EXPR): Fix printed name.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169092 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-01-21 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 21 Jan 2011 14:08:26 +0000 (14:08 +0000)]
2011-01-21  Richard Guenther  <rguenther@suse.de>

        * gcc.dg/tree-ssa/pr47392.c: Make test non-static instead of
        making main hot.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169091 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-01-21 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 21 Jan 2011 14:02:41 +0000 (14:02 +0000)]
2011-01-21  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/47365
* tree-ssa-sccvn.h (vn_lookup_kind): Declare.
(vn_reference_lookup_pieces): Adjust.
(vn_reference_lookup): Likewise.
* tree-ssa-sccvn.c (vn_walk_kind): New static global.
(vn_reference_lookup_3): Only look through kills if in
VN_WALKREWRITE mode.
(vn_reference_lookup_pieces): Adjust.
(vn_reference_lookup): Likewise.
(visit_reference_op_load): Likewise.
(visit_reference_op_store): Likewise.
* tree-ssa-pre.c (phi_translate_1): Use VN_WALK mode.
(compute_avail): Likewise.
(eliminate): Likewise.

* gcc.dg/torture/pr47365.c: New testcase.
* gcc.dg/tree-ssa/pr47392.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169089 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago* configure.ac: Use AS_HELP_STRING throughout.
schwab [Fri, 21 Jan 2011 13:18:23 +0000 (13:18 +0000)]
* configure.ac: Use AS_HELP_STRING throughout.
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169088 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * g++.dg/other/anon5.C: Skip on mips-sgi-irix*.
ro [Fri, 21 Jan 2011 13:02:39 +0000 (13:02 +0000)]
* g++.dg/other/anon5.C: Skip on mips-sgi-irix*.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169085 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR tree-optimization/47391
jakub [Fri, 21 Jan 2011 12:57:52 +0000 (12:57 +0000)]
PR tree-optimization/47391
* varpool.c (const_value_known_p): Return false if
decl is volatile.

* gcc.dg/pr47391.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169084 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * tree-ssa-live.c (remove_unused_scope_block_p): Don't remove
jakub [Fri, 21 Jan 2011 12:51:18 +0000 (12:51 +0000)]
* tree-ssa-live.c (remove_unused_scope_block_p): Don't remove
DECL_IGNORED_P non-reg vars if they are used.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169083 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * g++.dg/template/char1.C: Use signed char.
ro [Fri, 21 Jan 2011 11:36:53 +0000 (11:36 +0000)]
* g++.dg/template/char1.C: Use signed char.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169082 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-01-21 Kai Tietz <kai.tietz@onevision.com>
ktietz [Fri, 21 Jan 2011 09:05:14 +0000 (09:05 +0000)]
2011-01-21  Kai Tietz  <kai.tietz@onevision.com>

        PR bootstrap/47215
        * decl.c (java_init_decl_processing): Remove
        va_list_type_node related type initializations.

2011-01-21  Kai Tietz  <kai.tietz@onevision.com>

PR bootstrap/47215
* config/i386/i386.c (ix86_local_alignment): Handle
case for va_list_type_node is nil.
(ix86_canonical_va_list_type): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169080 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-01-21 Tobias Burnus <burnus@net-b.de>
burnus [Fri, 21 Jan 2011 07:11:05 +0000 (07:11 +0000)]
2011-01-21  Tobias Burnus  <burnus@net-b.de>

        PR fortran/47377
        * expr.c (gfc_check_pointer_assign): Reject expr data-targets
        without pointer attribute.

2011-01-21  Tobias Burnus  <burnus@net-b.de>

        PR fortran/47377
        * gfortran.dg/pointer_target_4.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169079 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoFix typo in comment.
mrs [Fri, 21 Jan 2011 05:03:44 +0000 (05:03 +0000)]
Fix typo in comment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169078 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Add
amodra [Fri, 21 Jan 2011 02:13:52 +0000 (02:13 +0000)]
* config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Add
builtin_define __CMODEL_MEDIUM__ and __CMODEL_LARGE__.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169077 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoDaily bump.
gccadmin [Fri, 21 Jan 2011 00:18:42 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169076 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-01-20 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Thu, 20 Jan 2011 23:41:24 +0000 (23:41 +0000)]
2011-01-20  Benjamin Kosnik  <bkoz@redhat.com>

PR libstdc++/36104
* acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Accept gnu variants.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169072 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoRename f_load to f_fpa_loads patch
ramana [Thu, 20 Jan 2011 22:03:29 +0000 (22:03 +0000)]
Rename f_load to f_fpa_loads patch

2011-01-20  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

* config/arm/arm.md (define_attr type): Rename f_load
and f_store to f_fpa_load and f_fpa_store. Update.
(write_conflict): Deal with rename fallout.
(*push_fp_multi): Likewise.
* config/arm/fpa.md (f_load): Use f_fpa_load.
(f_store): Use f_fpa_store.
(*movsf_fpa): Likewise.
(*movdf_fpa): Likewise.
(*movxf_fpa): Likewise.
(*thumb2_movsf_fpa): Likewise.
(*thumb2_movdf_fpa): Likewise.
(*thumb2_movxf_fpa): Likewise.
* config/arm/vfp.md (*thumb2_movdf_vfp): Fix attribute to
f_loadd and f_stored.
(*thumb2_movdi_vfp): Likewise.
(*thumb2_movsf_vfp): Fix attribute to f_loads.
(*thumb2_movsi_vfp): Likewise.
* config/arm/cortex-m4-fpu.md (cortex_m4_f_load):
Use f_loads instead of f_load.
* config/arm/cortex-a5.md (cortex_a5_f_loads): Remove f_load.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169071 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoRefix test for PR47251
meissner [Thu, 20 Jan 2011 21:19:30 +0000 (21:19 +0000)]
Refix test for PR47251

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169067 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-01-20 Jonathan Wakely <jwakely.gcc@gmail.com>
redi [Thu, 20 Jan 2011 20:18:29 +0000 (20:18 +0000)]
2011-01-20  Jonathan Wakely  <jwakely.gcc@gmail.com>

        PR libstdc++/47380
* doc/xml/manual/diagnostics.xml: Replace note about C++0x concepts.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169064 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-01-20 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Thu, 20 Jan 2011 20:04:25 +0000 (20:04 +0000)]
2011-01-20  Benjamin Kosnik  <bkoz@redhat.com>

PR libstdc++/36104 part three
* src/hashtable_c++0x.cc: Adjust namespace macros.
* testsuite/util/testsuite_rvalref.h: Don't forward declare hash.
* config/abi/pre/gnu-versioned-namespace.ver: Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169063 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-01-20 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Thu, 20 Jan 2011 18:26:33 +0000 (18:26 +0000)]
2011-01-20  Benjamin Kosnik  <bkoz@redhat.com>

* include/ext/pb_ds/detail/resize_policy/
hash_load_check_resize_trigger_imp.hpp: Adjust assert condition.
* include/ext/pb_ds/detail/pat_trie_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp: Format.
* include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/debug_map_base.hpp: Use never_adjustor.

* testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Adjust
iterations downward when testing in debug mode.
* testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Same.
* testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Same.
* testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Same.
* testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Same.
* testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Same.
* testsuite/ext/pb_ds/example/hash_illegal_resize.cc: Use SIZE,
reduce in debug mode.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169061 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/xtensa/xtensa.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove.
aesok [Thu, 20 Jan 2011 17:37:13 +0000 (17:37 +0000)]
* config/xtensa/xtensa.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove.
* config/xtensa/xtensa-protos.h (constantpool_address_p): Remove.
* config/xtensa/xtensa.c (TARGET_MODE_DEPENDENT_ADDRESS_P): Define.
(xtensa_mode_dependent_address_p): New function.
(constantpool_address_p): Make static. Change return type to bool.
Change argument type to const_rtx. Use CONST_INT_P predicate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169060 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agogcc/ChangeLog:
aoliva [Thu, 20 Jan 2011 16:56:25 +0000 (16:56 +0000)]
gcc/ChangeLog:
PR debug/46583
* tree-ssa-live.c (remove_unused_scope_block_p): Keep type decls.
gcc/testsuite/ChangeLog:
PR debug/46583
* g++.dg/debug/pr46583.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169058 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR debug/47283
jakub [Thu, 20 Jan 2011 16:40:36 +0000 (16:40 +0000)]
PR debug/47283
* cfgexpand.c (expand_debug_expr): Instead of generating
(mem (debug_implicit_ptr)) for MEM_REFs use COMPONENT_REF
etc. handling.

* g++.dg/debug/pr47283.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169057 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR testsuite/47371
jakub [Thu, 20 Jan 2011 16:37:28 +0000 (16:37 +0000)]
PR testsuite/47371
* gcc.target/i386/headmerge-1.c: Tighten up scan-assembler regex.
* gcc.target/i386/headmerge-2.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169056 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-01-20 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 20 Jan 2011 14:42:20 +0000 (14:42 +0000)]
2011-01-20  Richard Guenther  <rguenther@suse.de>

PR middle-end/47370
* tree-inline.c (remap_gimple_op_r): Recurse manually for
the pointer operand of MEM_REFs.

* gcc.dg/torture/pr47370.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169055 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR tree-optimization/46130
jakub [Thu, 20 Jan 2011 12:02:33 +0000 (12:02 +0000)]
PR tree-optimization/46130
* ipa-split.c (consider_split): If return_bb contains non-virtual
PHIs other than for retval or if split_function would not adjust it,
refuse to split.

* gcc.dg/pr46130-1.c: New test.
* gcc.dg/pr46130-2.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169052 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-01-20 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 20 Jan 2011 10:33:15 +0000 (10:33 +0000)]
2011-01-20  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/47167
* tree-ssa-copyrename.c (copy_rename_partition_coalesce):
Revert previous change, only avoid enumeral type changes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169050 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * doc/tm.texi.in (BRANCH_COST): Englishify.
mrs [Thu, 20 Jan 2011 00:19:07 +0000 (00:19 +0000)]
* doc/tm.texi.in (BRANCH_COST): Englishify.
* doc/tm.texi (BRANCH_COST): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169043 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoDaily bump.
gccadmin [Thu, 20 Jan 2011 00:18:46 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169042 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoFixup formatting.
mrs [Wed, 19 Jan 2011 23:52:57 +0000 (23:52 +0000)]
Fixup formatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169038 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agolibgo/Makefile.am: Fix typo naming socket_bsd.go.
ian [Wed, 19 Jan 2011 23:03:33 +0000 (23:03 +0000)]
libgo/Makefile.am: Fix typo naming socket_bsd.go.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169037 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoFix PR c++/47291
dodji [Wed, 19 Jan 2011 22:57:47 +0000 (22:57 +0000)]
Fix PR c++/47291

gcc/
PR c++/47291
* dwarf2out.c (generic_type_p, schedule_generic_params_dies_gen)
(gen_scheduled_generic_parms_dies): New functions.
(gen_struct_or_union_type_die): Schedule template parameters DIEs
generation for the end of CU compilation.
(dwarf2out_finish): Generate template parameters DIEs here.

gcc/testsuite/

PR c++/47291
* g++.dg/debug/dwarf2/template-params-10.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169036 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agogcc/ChangeLog:
aoliva [Wed, 19 Jan 2011 22:07:14 +0000 (22:07 +0000)]
gcc/ChangeLog:
PR debug/46240
* tree-into-ssa.c (maybe_register_def): Do not attempt to add
debug bind stmt on merge edges.
gcc/testsuite/ChangeLog:
PR debug/46240
* g++.dg/debug/pr46240.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169035 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoPR debug/47079
aoliva [Wed, 19 Jan 2011 22:00:00 +0000 (22:00 +0000)]
PR debug/47079
PR debug/46724
* function.c (instantiate_expr): Instantiate incoming rtl of
implicit arguments, and recurse on VALUE_EXPRs.
(instantiate_decls): Instantiate rtl and VALUE_EXPR of result.
* var-tracking.c (adjust_mems): Reject virtual_incoming_args_rtx.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169034 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago* c-parser.c (c_parser_for_statement): Initialize
aoliva [Wed, 19 Jan 2011 21:59:47 +0000 (21:59 +0000)]
* c-parser.c (c_parser_for_statement): Initialize
collection_expression.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169033 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoRemember erroneous type when creating GENERIC for named type.
ian [Wed, 19 Jan 2011 20:54:30 +0000 (20:54 +0000)]
Remember erroneous type when creating GENERIC for named type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169030 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/spu/spu-elf.h (ASM_SPEC): Remove %{w:-W}.
jsm28 [Wed, 19 Jan 2011 20:51:32 +0000 (20:51 +0000)]
* config/spu/spu-elf.h (ASM_SPEC): Remove %{w:-W}.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169028 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoDon't crash on reference to field with erroneous type.
ian [Wed, 19 Jan 2011 20:47:21 +0000 (20:47 +0000)]
Don't crash on reference to field with erroneous type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169027 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/rs6000/sysv4.h (LINK_PATH_SPEC): Remove.
jsm28 [Wed, 19 Jan 2011 20:45:30 +0000 (20:45 +0000)]
* config/rs6000/sysv4.h (LINK_PATH_SPEC): Remove.
(LINK_SHLIB_SPEC): Don't use %(link_path).
(SUBTARGET_EXTRA_SPECS): Remove link_path.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169026 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/rs6000/sysv4.h (SHARED_LIB_SUPPORT): Remove conditional.
jsm28 [Wed, 19 Jan 2011 20:41:37 +0000 (20:41 +0000)]
* config/rs6000/sysv4.h (SHARED_LIB_SUPPORT): Remove conditional.
(NO_SHARED_LIB_SUPPORT): Remove.
(LINK_SHLIB_SPEC): Remove one conditional definition.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169025 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/mips/linux64.h (LINK_SPEC): Remove %{non_shared}
jsm28 [Wed, 19 Jan 2011 20:39:09 +0000 (20:39 +0000)]
* config/mips/linux64.h (LINK_SPEC): Remove %{non_shared}
%{call_shared}.
* config/mips/mips.h (LINK_SPEC): Remove %{non_shared}.
* config/mips/netbsd.h (LINK_SPEC): Remove %{call_shared}.
* config/mips/openbsd.h (LINK_SPEC): Remove %{non_shared}
%{call_shared} and conditionals on these options not being passed.
* config/mips/sde.h (LINK_SPEC): Remove %{non_shared}
%{call_shared}.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169024 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoGenerate an init function if any global variable needs a preinit.
ian [Wed, 19 Jan 2011 20:37:50 +0000 (20:37 +0000)]
Generate an init function if any global variable needs a preinit.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169023 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-01-19 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Wed, 19 Jan 2011 20:00:47 +0000 (20:00 +0000)]
2011-01-19  Benjamin Kosnik  <bkoz@redhat.com>

PR libstdc++/36104 part two
* include/bits/hashtable.h: Revert to non-nested macro usage.
* include/bits/hashtable_policy.h: Same.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169021 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * ipa-split.c (find_return_bb): Use single_pred_p/single_pred_edge,
jakub [Wed, 19 Jan 2011 19:58:37 +0000 (19:58 +0000)]
* ipa-split.c (find_return_bb): Use single_pred_p/single_pred_edge,
simplify.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169020 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * ipa-split.c: Spelling fixes.
jakub [Wed, 19 Jan 2011 19:57:54 +0000 (19:57 +0000)]
* ipa-split.c: Spelling fixes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169019 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agomn10300: Add support in longlong.h.
rth [Wed, 19 Jan 2011 19:36:42 +0000 (19:36 +0000)]
mn10300: Add support in longlong.h.

This greatly helps out the DImode division, and to a lesser
extent the DImode multiplication routines in libgcc2.c.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169018 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agomn10300: Use reg_or_am33_const_operand in mulsi3.
rth [Wed, 19 Jan 2011 19:33:44 +0000 (19:33 +0000)]
mn10300: Use reg_or_am33_const_operand in mulsi3.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169017 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/spu/spu.h (MOVE_RATIO): Return 4 in the !speed case.
uweigand [Wed, 19 Jan 2011 19:05:14 +0000 (19:05 +0000)]
* config/spu/spu.h (MOVE_RATIO): Return 4 in the !speed case.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169015 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agomn10300: Implement adddi3, subdi3.
rth [Wed, 19 Jan 2011 18:55:12 +0000 (18:55 +0000)]
mn10300: Implement adddi3, subdi3.

Via expander, pre- and post-reload patterns.  The pre-reload
pattern is defined to allow lower_subregs totally split the
DImode values.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169014 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agomn10300: Emit retf instruction
rth [Wed, 19 Jan 2011 18:50:52 +0000 (18:50 +0000)]
mn10300: Emit retf instruction

Now that we properly track the life of MDR, we can emit
the RETF instruction if MDR has not been modified.  This
insn is 3-4 cycles faster since the return address is
already loaded.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169013 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agomn10300: tidy pic address loading
rth [Wed, 19 Jan 2011 18:46:30 +0000 (18:46 +0000)]
mn10300: tidy pic address loading

There's little reason to greatly complicate things by splitting
the pic_load patterns and using complex rtl to make it work out.
Instead, use the %= marker to generate unique numbers and emit
the entire load_pic sequence at once.

At the same time, collect all references to outgoing_args_size
into mn10300_frame_size, and all computations of register save
area size into mn10300_initial_offset.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169012 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agomn10300: Cleanup all arithmetic.
rth [Wed, 19 Jan 2011 18:38:56 +0000 (18:38 +0000)]
mn10300: Cleanup all arithmetic.

For addition and logicals, define an operation-plus-flags update pattern
in preparation for compare elimination.  In addition, clean up the way
we compare and validate CC_MODEs.  Define NEG in terms of NOT; this is
smaller and allows a non-clobbering destination alternative.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169010 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agomn10300: Explicitly represent MDR in multiply and divide.
rth [Wed, 19 Jan 2011 17:27:58 +0000 (17:27 +0000)]
mn10300: Explicitly represent MDR in multiply and divide.

Note that the mulsidi3_internal pattern is structured so
as to let the lower-subregs pass fully split the result.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169008 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agomn10300: Expose the MDR register to register allocation.
rth [Wed, 19 Jan 2011 17:20:26 +0000 (17:20 +0000)]
mn10300: Expose the MDR register to register allocation.

Note that nothing uses the "z" constraint yet except the one
move pattern; this merely defines the register class properly.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169007 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agomn10300: Cleanup legitimate addresses
rth [Wed, 19 Jan 2011 17:14:31 +0000 (17:14 +0000)]
mn10300: Cleanup legitimate addresses

Allow REG+REG and POST_MODIFY addressing for AM33.  Fix AM33 base and
index register classes.  Remove a bunch of register class combinations
that aren't really useful after this cleanup.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169006 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agomn10300: Cleanup secondary reloads
rth [Wed, 19 Jan 2011 17:02:57 +0000 (17:02 +0000)]
mn10300: Cleanup secondary reloads

Handles output reloads for QI/HImode properly; previously we were
only handing input reloads properly.

Handles reloads involving the stack pointer better; note that the
AM33 allows copying SP to DATA_REGS as well as ADDRESS and EXTENDED.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169005 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agomn10300: Re-write move patterns.
rth [Wed, 19 Jan 2011 16:57:37 +0000 (16:57 +0000)]
mn10300: Re-write move patterns.

Use the "D" and "A" constraints, and the enabled attribute to
unify all ofthe integer move patterns.  Delete the fake double
word move patterns; let the middle-end generate subregs as required.

Unfortunately, this somehow exposes a register pressure problem
with the udivmod pattern.  This is properly fixed with subsequent
patches that expose the MDR register.

In the meantime it is highly desirable to to preserve bisect-ability
of the patch series, so disable this pattern for AM30.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169004 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoImprove check for const initializer loop.
ian [Wed, 19 Jan 2011 16:55:24 +0000 (16:55 +0000)]
Improve check for const initializer loop.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169003 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoCheck for error type when getting type of binary expression.
ian [Wed, 19 Jan 2011 16:03:55 +0000 (16:03 +0000)]
Check for error type when getting type of binary expression.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169002 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoFix handling of anonymous field in struct with pointer type.
ian [Wed, 19 Jan 2011 15:47:50 +0000 (15:47 +0000)]
Fix handling of anonymous field in struct with pointer type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169001 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/47303
jakub [Wed, 19 Jan 2011 15:36:57 +0000 (15:36 +0000)]
PR c++/47303
* decl2.c (finish_anon_union): Only call mangle_decl if TREE_STATIC
or DECL_EXTERNAL.

* g++.dg/template/anonunion1.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169000 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * doc/tm.texi.in: Spell out that a lack of register class unions
amylaar [Wed, 19 Jan 2011 15:23:06 +0000 (15:23 +0000)]
* doc/tm.texi.in: Spell out that a lack of register class unions
can lead to ICEs.
* doc/tm.texi: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168998 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR rtl-optimization/47337
jakub [Wed, 19 Jan 2011 15:13:01 +0000 (15:13 +0000)]
PR rtl-optimization/47337
* dce.c (check_argument_store): New function.
(find_call_stack_args): Ignore debug insns.  Use check_argument_store.

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168997 138bc75d-0d04-0410-961f-82ee72b054a4