OSDN Git Service

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