OSDN Git Service

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