OSDN Git Service

4341b94100e91deb4dd4747bb86cf6808760d762
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
1 2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
2
3         * sel-sched-ir.c (sel_restore_other_notes): Rename to sel_restore_notes.
4         Update all callers.  Call reemit_notes for all insns.
5
6 2010-01-14  Andrey Belevantsev  <abel@ispras.ru>
7
8         PR rtl-optimization/42246
9         * sel-sched-ir.h (get_all_loop_exits): Include exits from inner
10         loops.
11
12 2010-01-14  Andrey Belevantsev  <abel@ispras.ru>
13
14         * sel-sched.c (compute_av_set_at_bb_end): Do not test that number of
15         all successors is the same as number of successors in current region.
16
17 2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
18
19         * sel-sched.c (maybe_emit_renaming_copy): Exit early when expression
20         to rename is not separable.  Otherwise check that its LHS is not NULL.
21
22 2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
23
24         * sel-sched.c (choose_best_reg_1):  Loop over all regs for mode.
25
26 2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
27
28         * sel-sched.c (mark_unavailable_hard_regs): Do not try to search
29         available registers when failed to discover LHS register class.
30         Fix indentation.  Update comment.
31
32 2010-01-14  Andrey Belevantsev  <abel@ispras.ru>
33             Alexander Monakov  <amonakov@ispras.ru>
34
35         PR rtl-optimization/42389
36         * sel-sched.c (advance_one_cycle): Set FENCE_ISSUE_MORE
37         to can_issue_more.
38         (advance_state_on_fence): Likewise.
39         (sel_target_adjust_priority): Print debug output only when
40         sched_verbose >= 4, not 2.
41         (get_expr_cost): Do not issue all unique insns on the next cycle.
42         (fill_insns): Initialize can_issue_more from the value saved
43         with the fence.
44         * sel-sched-ir.c (flist_add): New parameter issue_more.
45         Init FENCE_ISSUE_MORE with it.
46         (merge_fences): Likewise.
47         (init_fences): Update call to flist_add.
48         (add_to_fences, add_clean_fence_to_fences)
49         (add_dirty_fence_to_fences): Likewise.
50         (move_fence_to_fences): Update call to merge_fences.
51         (invoke_reorder_hooks): Do not reset can_issue_more on insns from
52         sched groups.
53         * sel-sched-ir.h (struct _fence): New field issue_more.
54         (FENCE_ISSUE_MORE): New accessor macro.
55
56 2010-01-14  Andrey Belevantsev  <abel@ispras.ru>
57
58         PR rtl-optimization/42388
59         * sel-sched-ir.c (maybe_tidy_empty_bb): Do not delete empty blocks
60         that have no predecessors nor successors.  Do not call move_bb_info
61         for empty blocks outside of current region.
62
63 2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
64
65         PR rtl-optimization/42294
66         * sel-sched-ir.h (struct _sel_insn_data): Update comment.
67         * sel-sched.c (move_exprs_to_boundary): Transitively add all
68         originators' originators.
69
70 2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
71
72         PR rtl-optimization/39453
73         PR rtl-optimization/42246
74         * sel-sched-ir.c (considered_for_pipelining_p): Do not test
75         for pipelining_p.
76         (sel_add_loop_preheaders): Add preheader to last_added_blocks.
77
78 2010-01-14  Andrey Belevantsev  <abel@ispras.ru>
79             Alexander Monakov  <amonakov@ispras.ru>
80
81         PR middle-end/42245
82         * sel-sched-ir.c (sel_recompute_toporder): New.  Use it...
83         (maybe_tidy_empty_bb): ... here.  Make static.  Add new
84         argument.  Update all callers.
85         (tidy_control_flow): ... and here.  Recompute topological order
86         of basic blocks in region if necessary.
87         (sel_redirect_edge_and_branch): Change return type.  Return true
88         if topological order might have been invalidated.
89         (purge_empty_blocks): Export and move from...
90         * sel-sched.c (purge_empty_blocks): ... here.
91         * sel-sched-ir.h (sel_redirect_edge_and_branch): Update prototype.
92         (maybe_tidy_empty_bb): Delete prototype.
93         (purge_empty_blocks): Declare.
94
95 2010-01-14  Andrey Belevantsev <abel@ispras.ru>
96
97         PR rtl-optimization/42249
98         * sel-sched.c (try_replace_dest_reg): When chosen register
99         and original register is the same, do not bail out early, but
100         still check all original insns for validity of replacing destination
101         register.  Set EXPR_TARGET_AVAILABLE to 1 before leaving function
102         in this case.
103
104 2010-01-14  Jakub Jelinek  <jakub@redhat.com>
105
106         PR c/42721
107         Port from no-undefined-overflow branch
108         2009-03-09  Richard Guenther  <rguenther@suse.de>
109
110         * fold-const.c (add_double_with_sign): Fix unsigned overflow
111         detection.
112
113 2010-01-14  Richard Guenther  <rguenther@suse.de>
114
115         PR lto/42665
116         * gimple.c (iterative_hash_gimple_type): Avoid hashing
117         error_mark_node.
118
119 2010-01-14  Ira Rosen  <irar@il.ibm.com>
120
121         PR tree-optimization/42709
122         * tree-vect-slp.c (vect_get_constant_vectors): Use constant's type
123         as scalar type in creation of constant vector operand.
124
125 2010-01-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
126
127         PR testsuite/42414
128         * Makefile.in ($(TESTSUITEDIR)/site.exp, check-%)
129         (check-parallel-%): Match `testsuite' directory component only
130         at the end.
131
132 2010-01-14  Shujing Zhao  <pearly.zhao@oracle.com>
133
134         PR translation/39521
135         * gcc.c (do_spec_1): Wrapped the error and notice messages of specs
136         strings with _().
137
138 2010-01-13  Richard Guenther  <rguenther@suse.de>
139
140         PR tree-optimization/42730
141         * tree-ssa-ccp.c (maybe_fold_stmt_indirect): Add shortcut for
142         offset zero.
143
144 2010-01-13  Steve Ellcey  <sje@cup.hp.com>
145
146         PR target/pr42542
147         * config/ia64/ia64.c (ia64_expand_vecint_compare): Convert GTU to GT
148         for V2SI by subtracting (-(INT MAX) - 1) from both operands to make
149         them signed.
150
151 2010-01-13  Bernd Schmidt  <bernd.schmidt@analog.com>
152
153         * config/bfin/libgcc-bfin.ver: Regenerate based on current
154         libgcc-std.ver.  Add entries for ___smulsi3_highpart and
155         ___umulsi3_highpart.
156
157         * config/bfin/bfin.c (bfin_reorg): Call run_selective_scheduling
158         rather than schedule_insns if the pass is enabled.
159
160 2010-01-13  Martin Jambor  <mjambor@suse.cz>
161
162         PR tree-optimization/42704
163         * tree-sra.c (sra_modify_assign): Do not delete assignments to
164         SSA_NAMEs.
165
166 2010-01-13  Martin Jambor  <mjambor@suse.cz>
167
168         PR tree-optimization/42703
169         * tree-sra.c (analyze_access_subtree): Check that we can build a
170         reference to the original data within the aggregate.
171
172 2010-01-13  Richard Guenther  <rguenther@suse.de>
173
174         PR tree-optimization/42705
175         * tree-ssa-reassoc.c (build_and_add_sum): Insert stmts after
176         labels.
177
178 2010-01-13  Richard Guenther  <rguenther@suse.de>
179
180         PR middle-end/42716
181         * fold-const.c (fold_unary_loc): Fold INDIRECT_REFs.
182
183 2010-01-13  Jakub Jelinek  <jakub@redhat.com>
184
185         PR debug/41371
186         * var-tracking.c (values_to_unmark): New variable.
187         (find_loc_in_1pdv): Clear VALUE_RECURSED_INTO of values in
188         values_to_unmark vector.  Moved body to...
189         (find_loc_in_1pdv_1): ... this.  Don't clear VALUE_RECURSED_INTO,
190         instead queue it into values_to_unmark vector.
191         (vt_find_locations): Free values_to_unmark vector.
192
193 2010-01-13  Wolfgang Gellerich  <gellerich@de.ibm.com>
194
195         * config/s390/s390.c (override_options): Set
196         default of max-pending-list-length to 256
197
198 2010-01-13  Richard Guenther  <rguenther@suse.de>
199
200         PR lto/42678
201         * tree-pass.h (PROP_gimple_lcx): New.
202         * cfgexpand.c (pass_expand): Require PROP_gimple_lcx.
203         * passes.c (init_optimization_passes): Move pass_lower_complex_O0
204         before the final cleanup_eh.
205         (dump_properties): Dump PROP_gimple_lcx.
206         * tree-complex.c (pass_lower_complex): Provide PROP_gimple_lcx.
207         (tree_lower_complex_O0): Remove.
208         (gate_no_optimization): Run if PROP_gimple_lcx is not set.
209         (pass_lower_complex_O0): Provide PROP_gimple_lcx.  Run
210         tree_lower_complex, schedule TODO_update_ssa.
211         * lto-streamer-out.c (output_function): Stream the functions
212         properties.
213         * lto-streamer-in.c (input_function): Likewise.
214         (lto_read_body): Do not override them here.
215
216 2010-01-12  Joseph Myers  <joseph@codesourcery.com>
217
218         PR c/42708
219         * c-typeck.c (build_c_cast): Fold value cast to union type before
220         wrapping it in a CONSTRUCTOR.
221
222 2010-01-12  Jakub Jelinek  <jakub@redhat.com>
223
224         PR rtl-optimization/42699
225         * cse.c (cse_insn): Optimize lhs ZERO_EXTRACT if only CONST_INTs are
226         involved.
227
228 2010-01-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
229
230         * config/mips/iris6.h (SUBTARGET_DONT_WARN_UNUSED_SPEC,
231         SUBTARGET_WARN_UNUSED_SPEC): Move ...
232         config/mips/iris.h (SUBTARGET_DONT_WARN_UNUSED_SPEC,
233         SUBTARGET_WARN_UNUSED_SPEC): ... here
234         * config/mips/iris5.h (LIBGCC_SPEC): Define.
235
236 2010-01-12  Julian Brown  <julian@codesourcery.com>
237
238         * config/arm/neon-schedgen.ml (Utils): Don't try to
239         open missing module.
240         (find_with_result): New.
241
242 2010-01-12  Jakub Jelinek  <jakub@redhat.com>
243
244         PR debug/42662
245         * simplify-rtx.c (simplify_relational_operation_1): Avoid invalid rtx
246         sharing when canonicalizing ({lt,ge}u (plus a b) b).
247
248         PR tree-optimization/42645
249         * tree-inline.c (processing_debug_stmt): Move earlier.  Make static.
250         (remap_ssa_name): If processing_debug_stmt and name wasn't found in
251         decl_map, set processing_debug_stmt to -1 and return name without
252         any remapping.
253
254 2010-01-11  Dave Korn  <dave.korn.cygwin@gmail.com>
255
256         * doc/install.texi (Specific#x-x-cygwin): Document minimum required
257         binutils version, and reword target configuration description.
258
259 2010-01-11  Andy Hutchinson  <hutchinsonandy@gcc.gnu.org>
260
261         * config/avr/avr.h (LINKER_NAME): Remove. 
262
263 2010-01-11  Janis Johnson  <janis187@us.ibm.com>
264
265         PR target/42416
266         * config/rs6000/rs6000.c (rs6000_override_options): On targets
267         that support VSX, warn for -mno-altivec if vsx is not disabled,
268         and disable vsx.
269
270 2010-01-11  Joseph Myers  <joseph@codesourcery.com>
271             Shujing Zhao  <pearly.zhao@oracle.com>
272         
273         PR translation/42469
274         * common.opt (Wframe-larger-than=, fcompare-debug=, fdbg-cnt=,
275         fira-verbose=, flto-compression-level=, fplugin-arg-): Use tab
276         character between option name and help text.
277         * c.opt (imultilib): Likewise.
278
279 2010-01-10  Rafael Avila de Espindola  <espindola@google.com>
280
281         * lto-streamer-out.c (output_unreferenced_globals): Output static
282         variables.
283
284 2010-01-10  Steven Bosscher  <steven@gcc.gnu.org>
285
286         PR rtl-optimization/42621
287         * bb-reorder.c (gate_duplicated_computed_gotos): Only run if not
288         optimizing for size.
289         (duplicate_computed_gotos): Remove now-redundant check.
290
291 2010-01-10  Steve Ellcey  <sje@cup.hp.com>
292
293         PR target/37454
294         * configure.ac: Save and restore LDFLAGS and LIBS
295         * configure: Regenerate.
296
297 2010-01-10  Richard Guenther  <rguenther@suse.de>
298
299         PR middle-end/42667
300         * builtins.c (fold_builtin_strlen): Add type argument and
301         convert the resulting length to it.
302         (fold_builtin_1): Adjust.
303
304 2010-01-09  Jakub Jelinek  <jakub@redhat.com>
305
306         * config/rs6000/rs6000.c (rs6000_emit_set_long_const): Shorten
307         sequence for DImode constants >= 0x80000000UL <= 0xFFFFFFFFUL by
308         1 insn.
309         (num_insns_constant_wide): Adjust for that change.
310
311 2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
312
313         PR debug/42631
314         * web.c (union_defs): Add used argument, to combine uses of
315         uninitialized regs.
316         (entry_register): Adjust type and tests of used argument.
317         (web_main): Widen used for new use.  Pass it to union_defs.
318         * df.h (union_defs): Adjust prototype.
319
320 2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
321
322         PR debug/42630
323         * loop-unroll.c (referenced_in_one_insn_in_loop_p): Count debug
324         uses in new incoming argument.  Free body.
325         (reset_debug_uses_in_loop): New.
326         (analyze_insn_to_expand_var): Call the latter if the former found
327         anything.  Fix whitespace.  Reject invalid dest overlaps before
328         going through all insns in the loop.
329
330 2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
331
332         PR debug/42629
333         * haifa-sched.c (dying_use_p): Debug insns don't count.
334
335 2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
336
337         PR middle-end/42363
338         * gimplify.c (gimplify_modify_expr): Drop lhs on noreturn calls.
339         * tree-cfg.c (is_ctrl_altering_stmt): Don't compute flags twice.
340         (verify_gimple_call): Reject LHS in noreturn calls.
341
342 2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
343
344         PR debug/42604
345         PR debug/42395
346         * tree-vect-loop-manip.c (adjust_info): New type.
347         (adjust_vec): New pointer to vector.
348         (adjust_debug_stmts_now, adjust_vec_debug_stmts): New.
349         (adjust_debug_stmts, adjust_phi_and_debug_stmts): New.
350         (slpeel_update_phis_for_duplicate_loop): Use them.
351         (slpeel_update_phi_nodes_for_guard1): Likewise.
352         (slpeel_update_phi_nodes_for_guard2): Likewise.
353         (slpeel_tree_peel_loop_to_edge): Likewise.
354         (vect_update_ivs_after_vectorizer): Likewise.
355
356 2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
357
358         * vec.h (DEF_VEC_ALLOC_FUNC_O_STACK): Drop excess paren.
359         (DEF_VEC_ALLOC_FUNC_I_STACK): Likewise.
360
361 2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
362
363         * config/i386/i386.c (ix86_vectorize_builtin_vec_perm): Silence
364         bogus uninitialized warning.
365
366 2010-01-09  Richard Guenther  <rguenther@suse.de>
367
368         PR middle-end/42512
369         * tree-scalar-evolution.c (interpret_loop_phi): Make sure
370         the evolution is compatible with the initial condition.
371
372 2010-01-09  Jakub Jelinek  <jakub@redhat.com>
373
374         * gcc.c (process_command): Update copyright notice dates.
375         * gcov.c (print_version): Likewise.
376         * gcov-dump.c (print_version): Likewise.
377         * mips-tfile.c (main): Likewise.
378         * mips-tdump.c (main): Likewise.
379
380 2010-01-08  Andy Hutchinson  <hutchinsonandy@gcc.gnu.org>
381
382         PR target/41885
383         * config/avr/avr.md (rotlqi3): Add CONST_INT_P check.
384         (rotlhi3): Delete.
385         (rotlhi3_8): Delete.
386         (rotlsi3): Delete.
387         (rotlsi3_8): Delete.
388         (rotlsi3_16): Delete.
389         (rotlsi3_24): Delete.
390         (rotl<mode>3): New.
391         (*rotw<mode>3): New.
392         (*rotb<mode>3): New.
393         * config/avr/avr.c (avr_rotate_bytes): New function.
394         * config/avr/avr-proto.h (avr_rotate_bytes): New function. 
395
396 2010-01-08  Steve Ellcey  <sje@cup.hp.com>
397
398         PR target/37454
399         * configure.ac: Modify -rdynamic check.
400         * configure: Regenerate.
401
402 2010-01-08  DJ Delorie  <dj@redhat.com>
403
404         * config/sh/sh.c (sh_expand_epilogue): Fix interrupt handler
405         register popping order.
406
407 2010-01-08  Richard Guenther  <rguenther@suse.de>
408
409         PR lto/42528
410         * c.opt (fsigned-char): Also let LTO handle this option.
411         (funsigned-char): Likewise.
412
413 2010-01-07  Richard Guenther  <rguenther@suse.de>
414
415         * gimple.h (gss_for_code): Wrap gcc_assert in ENABLE_CHECKING.
416         (gimple_op): Likewise.
417         (gimple_op_ptr): Likewise.
418         (gimple_assign_set_lhs): Remove gcc_assert.
419         (gimple_assign_set_rhs1): Likewise.
420         (gimple_assign_set_rhs2): Likewise.
421         (gimple_call_set_lhs): Likewise.
422         (gimple_call_set_fn): Likewise.
423         (gimple_call_set_fndecl): Likewise.
424         (gimple_call_fndecl): Likewise.
425         (gimple_call_return_type): Likewise.
426         (gimple_call_set_chain): Likewise.
427         (gimple_call_num_args): Likewise.
428         (gimple_call_set_arg): Likewise.
429         (gimple_cond_set_code): Likewise.
430         (gimple_cond_set_lhs): Likewise.
431         (gimple_cond_set_rhs): Likewise.
432         (gimple_cond_set_true_label): Likewise.
433         (gimple_cond_set_false_label): Likewise.
434         (gimple_label_set_label): Likewise.
435         (gimple_goto_set_dest): Likewise.
436         (gimple_debug_bind_get_var): Wrap gcc_assert in ENABLE_CHECKING.
437         (gimple_debug_bind_get_value): Likewise.
438         (gimple_debug_bind_get_value_ptr): Likewise.
439         (gimple_debug_bind_set_var): Likewise.
440         (gimple_debug_bind_set_value): Likewise.
441         (gimple_debug_bind_reset_value): Likewise.
442         (gimple_debug_bind_has_value_p): Likewise.
443         (gimple_return_retval_ptr): Remove gcc_assert.
444         (gimple_return_retval): Likewise.
445         (gimple_return_set_retval): Likewise.
446         * tree-flow.h (struct gimple_df): Remove nonlocal_all member.
447         (safe_referenced_var_iterator): Remove.
448         (FOR_EACH_REFERENCED_VAR_SAFE): Likewise.
449         * tree-flow-inline.h (gimple_nonlocal_all): Remove.
450         (fill_referenced_var_vec): Remove.
451         (first_readonly_imm_use): Remove redundant gcc_assert.
452         (phi_arg_index_from_use): Combine gcc_asserts.
453         (move_use_after_head): Wrap gcc_assert in ENABLE_CHECKING.
454         (first_imm_use_stmt): Remove redundant gcc_assert.
455         * tree-cfg.c (verify_gimple_call): Verify function and chain
456         operands.  Verify arguments.
457         (verify_types_in_gimple_stmt): Verify condition code and labels.
458
459 2010-01-07  Richard Guenther  <rguenther@suse.de>
460
461         PR tree-optimization/42641
462         * sese.c (rename_map_elt_info): Use the SSA name version, do
463         not hash pointers.
464
465 2010-01-07  Jakub Jelinek  <jakub@redhat.com>
466
467         PR tree-optimization/42625
468         * cgraph.c (cgraph_make_node_local): Clear DECL_COMDAT*,
469         TREE_PUBLIC, DECL_WEAK and DECL_EXTERNAL also for same_body
470         aliases.
471
472 2010-01-07  Duncan Sands  <baldrick@free.fr>
473
474         * Makefile.in (PLUGIN_HEADERS): Add version.h.
475
476 2010-01-07  Uros Bizjak  <ubizjak@gmail.com>
477
478         PR target/42511
479         * ifcvt.c (dead_or_predicable): Also remove REG_EQUAL note when
480         note itself is not function_invariant_p.
481
482 2009-01-07  Steven Bosscher  <steven@gcc.gnu.org>
483
484         * gcse.c (execute_rtl_cprop, execute_rtl_pre, execute_rtl_hoist):
485         Do not add the DF_NOTE problem.
486         * store-motion.c (execute_rtl_store_motion): Likewise.
487
488 2010-01-07  Martin Jambor  <mjambor@suse.cz>
489
490         PR tree-optimization/42157
491         * tree-sra.c (compare_access_positions): Stabilize sort if both
492         accesses have integer types, return zero immediately if they are the
493         same.
494
495 2010-01-06  Richard Henderson  <rth@redhat.com>
496
497         PR middle-end/41883
498         * haifa-sched.c (add_to_note_list): Merge into ...
499         (concat_note_lists): ... here, and ...
500         (unlink_other_notes, rm_other_notes): Merge into...
501         (remove_notes): ... here.  Create REG_SAVE_NOTEs for
502         NOTE_INSN_EPILOGUE_BEG.  
503
504 2010-01-06  Richard Guenther  <rguenther@suse.de>
505
506         * ipa-inline.c (cgraph_decide_inlining_incrementally): Do
507         not inline regular functions into always-inline functions.
508
509 2010-01-06  Nick Clifton  <nickc@redhat.com>
510
511         * config/rx/rx.h (enum rx_cpu_type): Add RX200.
512         (CC1_SPEC): Issue an error message if -mcpu=rx200 and -fpu are
513         used together.
514         (OVERRIDE_OPTIONS): Delete.
515         (OPTIMIZATION_OPTIONS): Define.
516         (ALLOW_RX_FPU_INSNS): Define only in terms of -fpu option.
517         * config/rx/rx.c (rx_handle_option): Issue an error message if
518         -mcpu=rx200 and -fpu are used together.
519         (rx_set_optimization_options): New function.  Issue an error
520         message if an optimization attribute attempts to reset the FPU/
521         math optimization pairing.
522         * config/rx/rx-protos.h (rx_set_optimization_options): Prototype.
523         * config/rx/rx.opt: Set the default to 32-bit doubles.
524         * config/rx/t-rx: Add multilibs for -nofpu option.
525         * doc/invoke.texi: Update documentation of RX options.
526
527 2010-01-06  Richard Guenther  <rguenther@suse.de>
528
529         * tree-ssa-pre.c (name_to_id): New global.
530         (alloc_expression_id): Simplify SSA name handling.
531         (lookup_expression_id): Likewise.
532         (init_pre): Zero name_to_id.
533         (fini_pre): Free it.
534
535 2010-01-06  Uros Bizjak  <ubizjak@gmail.com>
536
537         * ifcvt.c (if_convert): Output slim multiple dumps with TDF_SLIM.
538
539 2010-01-05  H.J. Lu  <hongjiu.lu@intel.com>
540
541         PR target/42542
542         * config/i386/sse.md (smaxv2di3): New.
543         (umaxv2di3): Likewise.
544         (sminv2di3): Likewise.
545         (uminv2di3): Likewise.
546
547 2010-01-05  Eric Botcazou  <ebotcazou@adacore.com>
548
549         PR target/42564
550         * config/sparc/sparc.h (SPARC_SYMBOL_REF_TLS_P): Delete.
551         * config/sparc/sparc-protos.h (legitimize_pic_address): Likewise.
552         (legitimize_tls_address): Likewise.
553         (sparc_tls_referenced_p): Likewise.
554         * config/sparc/sparc.c (sparc_expand_move): Use legitimize_tls_address
555         and adjust calls to legitimize_pic_address.
556         (legitimate_constant_p) Use sparc_tls_referenced_p.
557         (legitimate_pic_operand_p): Likewise.
558         (sparc_legitimate_address_p): Do not use SPARC_SYMBOL_REF_TLS_P.
559         (sparc_tls_symbol_ref_1): Delete.
560         (sparc_tls_referenced_p): Make static, recognize specific patterns.
561         (legitimize_tls_address): Make static, handle CONST patterns.
562         (legitimize_pic_address): Make static, remove unused parameter and
563         adjust recursive calls.
564         (sparc_legitimize_address): Make static, use sparc_tls_referenced_p
565         and adjust call to legitimize_pic_address.
566         (sparc_output_mi_thunk): Likewise.
567
568 2010-01-05  Paolo Bonzini  <bonzini@gnu.rg>
569             H.J. Lu  <hongjiu.lu@intel.com>
570
571         PR target/42542
572         * config/i386/i386.c (ix86_expand_int_vcond): Convert GTU to GT
573         for V4SI and V2DI by subtracting (-(INT MAX) - 1) from both
574         operands to make them signed.
575
576         Revert:
577         2010-01-04  H.J. Lu  <hongjiu.lu@intel.com>
578
579         PR target/42542
580         * config/i386/i386.c (ix86_expand_int_vcond): Don't convert
581         GTU to GT for V4SI and V2DI.
582
583         * config/i386/sse.md (umaxv4si3): Enabled for SSE4.1 and XOP.
584         (umin<mode>3): Removed.
585         (uminv8hi3): New.
586         (uminv4si3): Likewise.
587
588 2010-01-05  Martin Jambor  <mjambor@suse.cz>
589
590         PR tree-optimization/42462
591         * ipa-inline.c (compute_inline_parameters): Pass node->decl instead of
592         current_function_decl to helper functions and macros.
593
594 2010-01-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
595
596         PR bootstrap/41771
597         * flags.h: Don't include real.h.
598         (HONOR_NANS, HONOR_SNANS, HONOR_INFINITIES, HONOR_SIGNED_ZEROS,
599         HONOR_SIGN_DEPENDENT_ROUNDING): Move ...
600         * real.h (HONOR_NANS, HONOR_SNANS, HONOR_INFINITIES,
601         HONOR_SIGNED_ZEROS, HONOR_SIGN_DEPENDENT_ROUNDING): ... here.
602         * dominance.c: Update copyright.
603         * gimple.c (walk_gimple_op): Remove inline.
604         * tree-ssa-reassoc.c: Include real.h.
605         * Makefile.in (FLAGS_H): Remove $(REAL_H).
606         (tree-ssa-reassoc.o): Depend on $(REAL_H).
607
608 2010-01-05  Nick Clifton  <nickc@redhat.com>
609
610         * config/rx/rx.c (rx_get_stack_layout): Fix allocation of second
611         register to push into the stack frame when the accumulator has to
612         be saved during interrupts.
613
614 2010-01-05  Eric Fisher  <joefoxreal@gmail.com>
615
616         * doc/invoke.texi: Remove the documentation about option
617         -Wunreachable-code.
618         * common.opt (Wunreachable-code):  Preserved for backward
619         compatibility.
620         * tree-cfg.c: Remove the implementation of -Wunreachable-code.
621         * opts.c (common_handle_option): Add OPT_Wunreachable_code to
622         the backward compatibility flag section.
623
624 2010-01-05  Richard Guenther  <rguenther@suse.de>
625
626         * tree-ssa-pre.c (bitmap_value_insert_into_set): Optimize.
627
628 2010-01-05  Jakub Jelinek  <jakub@redhat.com>
629
630         PR other/42611
631         * cfgexpand.c (expand_one_var): Diagnose too large variables.
632
633         PR tree-optimization/42508
634         * tree-sra.c (convert_callers): Check for recursive call
635         by comparing cgraph nodes instead of decls.
636         (modify_function): Call ipa_modify_formal_parameters also
637         on all same_body aliases.
638
639         * cgraphunit.c (cgraph_materialize_all_clones): Compare
640         cgraph nodes when checking for same_body aliases.
641
642 2010-01-05  Richard Guenther  <rguenther@suse.de>
643
644         * tree-ssa-pre.c (get_or_alloc_expr_for_name): Avoid redundant
645         allocation and lookup.
646         (get_or_alloc_expr_for_constant): Likewise.
647         (phi_translate): Sink allocation.
648
649 2010-01-04  Richard Guenther  <rguenther@suse.de>
650
651         * tree-ssa-sccvn.c (get_or_alloc_constant_value_id): Allocate
652         a new entry only if needed.
653         * tree-ssa-dom.c (lookup_avail_expr): Likewise.
654         * tree-ssa-coalesce.c (find_coalesce_pair): Avoid one
655         hashtable lookup.
656         * tree-ssa-pre.c (sorted_array_from_bitmap_set): Pre-allocate
657         the result array.
658         (phi_translate): Handle CONSTANTs early.
659
660 2010-01-04  Martin Jambor  <mjambor@suse.cz>
661
662         PR tree-optimization/42398
663         * tree-sra.c (struct access): Removed flag grp_different_types.
664         (dump_access): Do not dump the removed flag.
665         (sort_and_splice_var_accesses): Do not set the removed flag.
666         (sra_modify_expr): Check for type compatibility directly.
667
668 2010-01-04  Martin Jambor  <mjambor@suse.cz>
669
670         PR tree-optimization/42366
671         * ipa-cp.c (ipcp_init_stage): Always call ipa_compute_jump_functions on
672         edges with variable number of parameters.
673         * ipa-prop.c (ipa_write_node_info): Stream out uses_analysis_done
674         flag instead of asserting it.
675         (ipa_read_node_info): Read uses_analysis_done flag.
676
677 2010-01-04  Richard Guenther  <rguenther@suse.de>
678
679         * tree-ssa-sccvn.c (vn_reference_op_compute_hash): Use
680         iterative_hash_* as intended.
681         (vn_reference_compute_hash): Likewise.  Simplify hashing
682         SSA names.
683         (vn_reference_lookup_2): Likewise.
684         (vn_nary_op_compute_hash): Likewise.
685         (vn_phi_compute_hash): Likewise.
686         (expressions_equal_p): Remove strange code.
687         * tree-ssa-pre.c (pre_expr_eq): Use gcc_unreachable ().
688         (pre_expr_hash): Likewise.  Simplify hashing SSA names.
689         (bitmap_insert_into_set_1): Take value-id as parameter.
690         (add_to_value): Pass it.
691         (bitmap_insert_into_set): Likewise.
692         (bitmap_value_insert_into_set): Likewise.  Remove redundant check.
693
694 2010-01-04  Jakub Jelinek  <jakub@redhat.com>
695
696         PR driver/42442
697         * gcc.c (SWITCH_IGNORE_PERMANENTLY): Define.
698         (do_self_spec): For switches with SWITCH_IGNORE set set also
699         SWITCH_IGNORE_PERMANENTLY.
700         (check_live_switch): Check SWITCH_IGNORE_PERMANENTLY instead
701         of SWITCH_IGNORE.
702
703 2010-01-04  Rafael Avila de Espindola  <espindola@google.com>
704
705         * lto-streamer-out.c (output_unreferenced_globals): Output the full
706         tree of an unreferenced global var.
707
708 2010-01-04  H.J. Lu  <hongjiu.lu@intel.com>
709
710         PR target/42542
711         * config/i386/i386.c (ix86_expand_int_vcond): Don't convert
712         GTU to GT for V4SI and V2DI.
713
714         * config/i386/sse.md (umaxv4si3): Enabled for SSE4.1 and XOP.
715         (umin<mode>3): Removed.
716         (uminv8hi3): New.
717         (uminv4si3): Likewise.
718
719 2010-01-04  H.J. Lu  <hongjiu.lu@intel.com>
720
721         PR lto/42581
722         * collect2.c (main): Turn on trace in collect2 if -v is passed
723         to gcc with LTO.
724
725 2010-01-03  Jerry Quinn  <jlquinn@optonline.net>
726
727         * doc/c-tree.texi (RETURN_STMT): Change to RETURN_EXPR.  Update
728         description of expression operand.
729
730 2010-01-03  Andrew Jenner  <andrew@codesourcery.com>
731
732         * configure.ac: Add install-html to target_list for Make-hooks.
733         * configure: Regenerate.
734         * fortran/Make-lang.in (F95_HTMLFILES): New.
735         (fortran.html): Use it.
736         (fortran.install-html): New.
737         * Makefile.in (install-html): Add lang.install-html.
738         * java/Make-lang.in (JAVA_HTMLFILES): New.
739         (java.html): Use it.
740         (java.install-html): New.
741         * objc/Make-lang.in (objc.install-html): New.
742         * objcp/Make-lang.in (obj-c++.install-html): New.
743         * cp/Make-lang.in (c++.install-html): New.
744         * ada/gcc-interface/Make-lang.in (ada.install-html): New.
745         * lto/Make-lang.in (lto.install-html): New.
746
747 2010-01-03  H.J. Lu  <hongjiu.lu@intel.com>
748
749         PR lto/42520
750         * gcc.c (LINK_COMMAND_SPEC): Pass -m* and -v to -plugin-opt.
751
752 2009-01-03  Steven Bosscher  <steven@gcc.gnu.org>
753
754         PR rtl-optimization/41862
755         * store-motion.c (store_killed_in_insn, compute_store_table,
756         remove_reachable_equiv_notes, replace_store_insn,
757         build_store_vectors): Ignore all DEBUG_INSNs.
758
759 2010-01-03  H.J. Lu  <hongjiu.lu@intel.com>
760
761         PR lto/41564
762         * common.opt: Add dumpdir.
763
764         * gcc.c (cc1_options): Add "-dumpbase %B" only if -dumpbase
765         isn't specified.
766         (option_map): Add --dumpdir.
767
768         * gcc.h (DEFAULT_WORD_SWITCH_TAKES_ARG): Add dumpdir.
769
770         * lto-wrapper.c (run_gcc): Add -dumpbase and -dumpdir for -o.
771
772         * opts.c (decode_options): Try dump_dir_name first if
773         dump_base_name isn't an absolute path.
774         (common_handle_option): Handle OPT_dumpdir.
775
776         * toplev.c (dump_dir_name): New.
777         (print_switch_values): Also ignore -dumpdir.
778
779         * toplev.h (dump_dir_name): New.
780
781 2010-01-03  Richard Guenther  <rguenther@suse.de>
782
783         PR tree-optimization/42589
784         * tree-ssa-math-opts.c (execute_optimize_bswap): Allow
785         double-word expansion of bswap32.
786
787 2010-01-03  Steven Bosscher  <steven@gcc.gnu.org>
788
789         * postreload-gcse.c (insert_expr_in_table): Replace BLOCK_NUM
790         with BLOCK_FOR_INSN.
791         * auto-inc-dec.c (attempt_change, get_next_ref, find_inc): Likewise.
792         * ifcvt.c (noce_get_alt_condition, noce_try_abs,
793         noce_process_if_block): Likewise.
794         * gcse.c (compute_local_properties, insert_expr_in_table,
795         insert_set_in_table, canon_list_insert, find_avail_set,
796         pre_insert_copy_insn): Likewise.
797
798         * basic-block.h (BLOCK_NUM): Move from here...
799         * sched-int.h (BLOCK_NUM): ... to here to localize it in the scheduler.
800
801 2010-01-03  Richard Guenther  <rguenther@suse.de>
802
803         PR tree-optimization/42438
804         * tree-ssa-pre.c (struct bb_bitmap_sets): Add
805         contains_may_not_return_call flag.
806         (BB_MAY_NOTRETURN): New.
807         (valid_in_sets): Trapping nary operations are not valid
808         in blocks that may not return.
809         (insert_into_preds_of_block): Remove check for trapping
810         expressions.
811         (compute_avail): Compute also BB_MAY_NOTRETURN.
812
813 2010-01-03  Gerald Pfeifer  <gerald@pfeifer.com>
814
815         * doc/invoke.texi: Add 2010 to copyright years.
816
817 2010-01-03  Eric Botcazou  <ebotcazou@adacore.com>
818
819         * config/sparc/sparc.c: Fix formatting nits.
820
821 2010-01-02  Gerald Pfeifer  <gerald@pfeifer.com>
822             Alexander Monakov  <amonakov@ispras.ru>
823
824         * doc/invoke.texi (Optimize Options): Reword introduction a bit.
825
826 2010-01-02  Richard Guenther  <rguenther@suse.de>
827
828         PR middle-end/42577
829         * tree-vrp.c (check_all_array_refs): Skip non-excutable blocks.
830         (simplify_switch_using_ranges): Mark to be removed edges
831         as non-executable.
832
833 2010-01-02  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
834
835         * config/pa/t-slibgcc-dwarf-ver (SHLIB_SOVERSION): Bump by two.
836
837         * collect2.c (scan_libraries): Add missing argument in call to
838         scan_prog_file.
839
840 2010-01-02  Uros Bizjak  <ubizjak@gmail.com>
841
842         PR target/42448
843         * config/alpha/predicates.md (aligned_memory_operand): Return false
844         for CQImode.
845         (unaligned_memory_operand): Return true for CQImode.
846         * config/alpha/alpha.c (get_aligned_mem): Assert that location
847         doesn not cross aligned SImode word boundary.
848
849 2010-01-02  Anatoly Sokolov  <aesok@post.ru>
850
851         * config/avr/avr.h (REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P, XEXP_):
852         Remove.
853         * config/avr/avr-protos.h (avr_init_once, avr_optimization_options,
854         avr_change_section, avr_reg_class_from_letter) : Remove declaration.
855
856 2010-01-02  Richard Guenther  <rguenther@suse.de>
857
858         PR lto/41597
859         * toplev.c (compile_file): Emit LTO marker properly.  Change
860         it to __gnu_lto_v1.
861         * collect2.c (scan_prog_file): Adjust for changed LTO marker.
862
863 2010-01-01  Richard Guenther  <rguenther@suse.de>
864
865         PR debug/42455
866         * tree-sra.c (analyze_all_variable_accesses): Work in DECL_UID order.
867
868 2010-01-01  Richard Guenther  <rguenther@suse.de>
869
870         PR c/42570
871         * c-decl.c (grokdeclarator): For zero-size arrays force
872         structural equality checks as layout_type does.
873
874 2010-01-01  H.J. Lu  <hongjiu.lu@intel.com>
875
876         * builtins.c: Update copyright to 2010.
877
878 2010-01-01  H.J. Lu  <hongjiu.lu@intel.com>
879
880         PR lto/42531
881         * lto-streamer-out.c (produce_asm): Revert the last change.
882         (copy_function): Likewise.
883
884         * lto-streamer.c (lto_get_section_name): Skip any leading
885         asterisk in name.
886
887 2010-01-01  Richard Guenther  <rguenther@suse.de>
888
889         PR middle-end/42559
890         * builtins.c (get_object_alignment): Do not use DECL_ALIGN
891         for LABEL_DECLs.
892
893 \f
894 Copyright (C) 2010 Free Software Foundation, Inc.
895
896 Copying and distribution of this file, with or without modification,
897 are permitted in any medium without royalty provided the copyright
898 notice and this notice are preserved.