OSDN Git Service

* config/h8300/h8300.c: (h8300_push_pop): Use bool type for
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
1 2010-02-15  Nick Clifton  <nickc@redhat.com>
2
3         * config/h8300/h8300.c: (h8300_push_pop): Use bool type for
4         boolean parameters.  Use emit_jump_insn when emitting a pop
5         instruction containing a return insn.
6         (push): Use 'true' rather than '1' as second parameter to F.
7         (h8300_expand_prologue): Likewise.
8         Use 'true' and 'false' for boolean parameters to
9         h8300_push_pop.
10         (h8300_expand_epilogue): Likewise.
11
12 2010-02-15  Richard Guenther  <rguenther@suse.de>
13
14         PR middle-end/43068
15         * cgraphunit.c (thunk_adjust): Skip adjusting by fixed_offset
16         if that is zero.
17
18 2010-02-15  Nick Clifton  <nickc@redhat.com>
19
20         * config/mn10300/mn10300.h (FUNCTION_ARG_REGNO_P): Revert previous
21         delta.
22
23 2010-02-14  Marco Poletti  <poletti.marco@gmail.com>
24
25         * intl.c (fake_ngettext): New function.
26         * intl.h (fake_ngettext): Declare.
27         (ngettext): Define macro.
28         * collect2.c (notice_translated): New function.
29         (main): Use notice_translated and ngettext.
30         * collect2.h (notice_translated): Declare.
31
32 2010-02-14  Steven Bosscher  <steven@gcc.gnu.org>
33
34         * reorg.c (delete_computation): Comment fixes.
35         * caller-save.c (setup_save_areas): Idem.
36         * sel-sched-dump.c (dump_lv_set): Idem.
37         * rtl.def: Idem.
38
39 2010-02-14  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
40
41         * config/s390/s390.c (s390_sched_init): New function.
42         (TARGET_SCHED_INIT): Target hook defined.
43
44 2010-02-12  Dave Korn  <dave.korn.cygwin@gmail.com>
45             Jack Howarth  <howarth@bromo.med.uc.edu>
46             Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
47
48         PR target/42982
49         Partial revert of unintended change in fix for PR41605.
50         * config/darwin.h: Fix typo.
51         * config/darwin9.h: Same.
52
53 2010-02-11  Jakub Jelinek  <jakub@redhat.com>
54
55         * c-pch.c (pch_init): Clear v.
56
57 2010-02-11  Sebastian Pop  <sebastian.pop@amd.com>
58
59         PR middle-end/42930
60         * graphite-scop-detection.c (graphite_can_represent_scev): Call
61         graphite_can_represent_init for MULT_EXPR.
62
63 2010-02-11  Sebastian Pop  <sebastian.pop@amd.com>
64
65         PR middle-end/42914
66         PR middle-end/42530
67         * graphite-sese-to-poly.c (remove_phi): New.
68         (translate_scalar_reduction_to_array): Call remove_phi.
69
70 2010-02-11  Sebastian Pop  <sebastian.pop@amd.com>
71
72         PR middle-end/42771
73         * graphite-clast-to-gimple.c (gloog): Call rename_sese_parameters.
74         * graphite-clast-to-gimple.h (gloog): Update declaration.
75         * graphite-poly.c (new_scop): Clear POLY_SCOP_P.
76         * graphite-poly.h (struct poly_bb): Add missing comments.
77         (struct scop): Add poly_scop_p field.
78         (POLY_SCOP_P): New.
79         * graphite-sese-to-poly.c (build_poly_scop): Set POLY_SCOP_P.
80         * graphite.c (graphite_transform_loops): Build the polyhedral
81         representation for each scop before code generation.
82         * sese.c (rename_variables_in_operand): Removed.
83         (rename_variables_in_expr): Return the renamed expression.
84         (rename_sese_parameters): New.
85         * sese.h (rename_sese_parameters): Declared.
86
87 2010-02-11  Richard Guenther  <rguenther@suse.de>
88
89         PR tree-optimization/42998
90         * tree-ssa-pre.c (create_expression_by_pieces): Treat
91         POINTER_PLUS_EXPR properly.
92
93 2010-02-11  Sebastian Pop  <sebastian.pop@amd.com>
94             Changpeng Fang  <changpeng.fang@amd.com>
95
96         PR middle-end/40886
97         * tree-ssa-loop-ivopts.c (determine_use_iv_cost_condition): Decrement
98         the cost of an IV candidate when the IV is used in a test against zero.
99
100         * gcc.dg/tree-ssa/ivopts-3.c: New.
101
102 2010-02-11  Richard Guenther  <rguenther@suse.de>
103
104         PR lto/41664
105         * tree-ssa-alias.c (refs_may_alias_p_1): Canonicalize
106         pointer-vs-decl case by swapping refs.  Handle some cases
107         of pointer-vs-decl disambiguations more conservatively.
108         * cfgexpand.c (gimple_expand_cfg): Set gimple_df->in_ssa_p
109         to false after expanding.
110
111 2010-02-11  Richard Guenther  <rguenther@suse.de>
112
113         PR driver/43021
114         * gcc.c (process_command): Handle LTO file@offset case more
115         appropriately.
116
117 2010-02-11  Jakub Jelinek  <jakub@redhat.com>
118
119         * reload1.c (eliminate_regs_1): If insn is DEBUG_INSN, avoid any
120         modifications outside of the DEBUG_INSN.  Accept CLOBBERs inside
121         of DEBUG_INSNs.
122         (eliminate_regs_in_insn): Eliminate regs even in DEBUG_INSNs.
123
124         * dwarf2out.c (mem_loc_descriptor) <case MEM>: Use DW_OP_deref_size
125         if MEM's mode size isn't DWARF2_ADDR_SIZE.
126         (mem_loc_descriptor) <do_scompare>: Allow also VOIDmode arguments.
127         Optimize eq/ne comparisons when both arguments are known to be
128         zero-extended.
129         (mem_loc_descriptor) <do_ucompare>: Allow also VOIDmode arguments.
130         Don't mask operands unnecessarily if they are known to be already
131         zero-extended.
132
133 2010-02-10  Vladimir Makarov  <vmakarov@redhat.com>
134
135         * ira-conflicts.c (add_insn_allocno_copies): Use find_reg_note
136         instead of loop.
137
138 2010-02-10  Richard Guenther  <rguenther@suse.de>
139
140         PR tree-optimization/43017
141         * tree-vrp.c (vrp_int_const_binop): Trust int_const_binop
142         for wrapping signed arithmetic.
143
144 2010-02-10  Jakub Jelinek  <jakub@redhat.com>
145
146         PR debug/43010
147         * dwarf2out.c (retry_incomplete_types): Don't call gen_type_die
148         if no debug info should be emitted for it.
149
150 2010-02-10  Kaz Kojima  <kkojima@gcc.gnu.org>
151
152         * config/sh/sh.c (find_barrier): Skip call insn with a REG_EH_REGION
153         note when flag_exceptions is set.
154
155 2010-02-10  Duncan Sands  <baldrick@free.fr>
156
157         * Makefile.in (PLUGIN_HEADERS): Add debug.h.
158
159 2010-02-10  Richard Guenther  <rguenther@suse.de>
160
161         PR c/43007
162         * tree.c (get_unwidened): Handle constants.
163         * convert.c (convert_to_integer): Handle TRUNC_DIV_EXPR.
164
165 2010-02-10  Martin Jambor  <mjambor@suse.cz>
166
167         PR lto/42985
168         * ipa-prop.c (ipa_update_after_lto_read): Count parameters and
169         check for variable argument counts independently.
170
171 2010-02-10  Christian Bruel  <christian.bruel@st.com>
172
173         PR target/42841
174         * config/sh/sh.c (find_barrier): Increase length for non delayed
175         conditional branches.
176         
177 2010-02-10  Christian Bruel  <christian.bruel@st.com>
178
179         * config/sh/sh.c (find_barrier): Don't emit a CP inside the GP setting.
180         
181 2010-02-10  Jakub Jelinek  <jakub@redhat.com>
182
183         * builtins.c (set_builtin_user_assembler_name): Also handle
184         ffs if int is smaller than word.
185
186 2010-02-09  Vladimir Makarov  <vmakarov@redhat.com>
187
188         PR middle-end/42973
189         * ira-conflicts.c (get_dup): Remove.
190         (process_reg_shuffles): Add new parameter.  Use it as an
191         additional guard for copy generation.
192         (add_insn_allocno_copies): Rewrite.
193
194 2010-02-09  Alexander Monakov  <amonakov@ispras.ru>
195
196         * common.opt (fsched2-use-traces): Preserved for backward
197         compatibility.
198         * doc/invoke.texi: Remove the documentation about option
199         -fsched2-use-traces.
200         * sched-rgn.c (rest_of_handle_sched2): Remove usage of
201         flag_sched2_use_traces.
202         * opts.c (common_handle_option): Add OPT_fsched2_use_traces to
203         the backward compatibility flag section.
204
205 2010-02-09  Richard Guenther  <rguenther@suse.de>
206
207         PR tree-optimization/43008
208         * tree-ssa-structalias.c (handle_lhs_call): Pass in the fndecl,
209         make HEAP variables initialized from global memory if they
210         are not known builtin functions.
211         (find_func_aliases): Adjust.
212
213 2010-02-09  Richard Guenther  <rguenther@suse.de>
214
215         PR tree-optimization/43000
216         * tree-vrp.c (vrp_int_const_binop): Only handle unsigned
217         arithmetic manually.
218
219 2010-02-08  Jakub Jelinek  <jakub@redhat.com>
220
221         PR tree-optimization/42931
222         * tree-loop-linear.c (try_interchange_loops): Don't call
223         double_int_mul if estimated_loop_iterations failed.
224
225 2010-02-08  Martin Jambor  <mjambor@suse.cz>
226
227         PR middle-end/42898
228         * tree-sra.c (build_accesses_from_assign): Do not mark in
229         should_scalarize_away_bitmap if stmt has volatile ops.
230         (sra_modify_assign): Do not process assigns piecemeal if if stmt
231         has volatile ops.
232
233 2010-02-08  Joern Rennecke  <joern.rennecke@embecosm.com>
234
235         * doc/tm.texi (TARGET_UNWIND_WORD_MODE): Document.
236
237 2010-02-07  Adam Nemet  <adambnmet@gmail.com>
238
239         * config/mips/mips.md (*<optab>_trunc<mode>_exts): Fix comment
240         before the pattern.
241
242 2010-02-07  Andrew Pinski  <pinskia@gmail.com>
243
244         PR middle-end/42946
245         * df-core.c (df_finish_pass): Change type of saved_flags to int.
246
247 2010-02-07  Sebastian Pop  <sebastian.pop@amd.com>
248
249         PR middle-end/42988
250         * graphite-dependences.c (dependence_polyhedron): Set PDDR_KIND
251         to unknown_dependence.
252         (graphite_legal_transform_dr): Handle the unknown_dependence.
253         (graphite_carried_dependence_level_k): Same.
254
255 2010-02-07  Sebastian Pop  <sebastian.pop@amd.com>
256
257         * ChangeLog.graphite: Remove testsuite/ or gcc/testsuite/.
258
259 2010-02-07  Richard Guenther  <rguenther@suse.de>
260
261         PR middle-end/42991
262         * expr.c (get_inner_reference): Always initialize *pbitsize.
263
264 2010-02-07  Richard Guenther  <rguenther@suse.de>
265
266         PR middle-end/42956
267         * gimplify.c (gimple_fold_indirect_ref): Avoid generating
268         new ARRAY_REFs on variable size element or minimal index arrays.
269         Complete.
270         * tree-ssa-loop-ivopts.c (find_interesting_uses_address): Use
271         gimple_fold_indirect_ref.
272
273 2010-02-06  Richard Earnshaw  <rearnsha@arm.com>
274
275         PR target/42957
276         * arm.c (arm_override_options): Just return if the user has specified
277         an invalid fpu name.
278
279 2010-02-03  Jason Merrill  <jason@redhat.com>
280
281         PR c++/42870
282         * config/i386/cygming.h (ASM_OUTPUT_DEF_FROM_DECLS): Call
283         i386_pe_maybe_record_exported_symbol.
284
285 2010-02-05  Steve Ellcey  <sje@cup.hp.com>
286
287         PR target/42924
288         * config/pa/pa.c (TARGET_DELEGITIMIZE_ADDRESS): Redefine.
289         (pa_delegitimize_address): New function.
290
291 2010-02-05  Ozkan Sezer  <sezeroz@gmail.com>
292
293         * config/i386/msformat-c.c (ms_printf_length_specs): Set the
294         scalar_identity_flag for the size_t/ptrdiff_t %Id and %Iu specs.
295
296 2010-02-05  Richard Guenther  <rguenther@suse.de>
297
298         PR lto/42762
299         * lto-streamer-in.c (get_resolution): Deal with references
300         to undefined functions.
301
302 2010-02-05  Richard Guenther  <rguenther@suse.de>
303
304         * tree-ssa-ccp.c (get_symbol_constant_value): Strip all
305         conversions.
306         (fold_const_aggregate_ref): Likewise.
307         (ccp_fold_stmt): Substitute loads.
308         (maybe_fold_reference): Verify types before substituting.
309         Unshare properly.
310         (fold_gimple_assign): Unshare properly.
311         (fold_stmt_1): Insert conversion if necessary before replacing
312         the RHS.
313
314 2010-02-05  Nathan Froyd  <froydnj@codesourcery.com>
315
316         * config/rs6000/rs6000.c (rs6000_override_options): Invert check
317         for rs6000_gen_cell_microcode.
318
319 2010-02-04  Richard Guenther  <rguenther@suse.de>
320
321         PR rtl-optimization/42952
322         * dse.c (const_or_frame_p): Remove MEM handling.
323
324 2010-02-04  Nick Clifton  <nickc@redhat.com>
325
326         * config/mn10300/mn10300.c (TARGET_ASM_OUTPUT_MI_THUNK): Define.
327         (TARGET_ASM_CAN_OUTPUT_MI_THUNK): Define.
328         (function_arg): Use NULL_RTX and FIRST_ARGUMENT_REGNUM.
329         (mn10300_asm_output_mi_thunk): New function.
330         (mn10300_can_output_mu_thunk): New function.
331         * config/mn10300/mn10300.h (FIRST_ARGUMENT_REGNUM): Define.
332         (FUNCTION_ARG_REGNO_P): Fix comment.  Accept d0 and d1.
333         (FUNCTION_ARG): Delete incorrect comment.
334
335 2010-02-03  Jason Merrill  <jason@redhat.com>
336
337         PR c++/40138
338         * fold-const.c (operand_equal_p): Handle erroneous types.
339
340 2010-02-03  Kaushik Phatak  <kaushik.phatak@kpitcummins.com>
341
342         * config/h8300/h8300.md (can_delay): Fix attibute condition.
343
344 2010-02-03  Vladimir Makarov  <vmakarov@redhat.com>
345
346         PR rtl-optimization/42941
347         * sched-deps.c (setup_insn_reg_pressure_info): Use xcalloc instead
348         of xmalloc.
349
350 2010-02-03  Jason Merrill  <jason@redhat.com>
351
352         PR c++/35652
353         * builtins.c (c_strlen): Use EXPR_LOCATION in diagnostics.
354
355 2010-02-03  Alexandre Oliva  <aoliva@redhat.com>
356
357         PR debug/42896
358         * cselib.h (struct cselib_val_struct): Add uid.  Rename value to
359         hash.
360         (cselib_reset_table): Renamed from...
361         (cselib_reset_table_with_next_value): ... this.
362         (cselib_get_next_uid): Renamed from...
363         (cselib_get_next_unknown_value): ... this.
364         * cselib.c (next_uid): Renamed from...
365         (next_unknown_value): ... this.
366         (cselib_clear_table): Adjust.
367         (cselib_reset_table): Adjust.  Renamed from...
368         (cselib_reset_table_with_next_value): ... this.
369         (cselib_get_next_uid): Adjust.  Renamed from...
370         (cselib_get_next_unknown_value): ... this.
371         (get_value_hash): Use hash.
372         (cselib_hash_rtx): Likewise.
373         (new_cselib_val): Adjust.  Set and dump uid.
374         (cselib_lookup_mem): Pass next_uid as hash.
375         (cselib_subst_to_values): Likewise.
376         (cselib_log_lookup): Dump uid.
377         (cselib_lookup): Pass next_uid as hash.  Adjust.
378         (cselib_process_insn): Adjust.
379         (cselib_init): Initialize next_uid.
380         (cselib_finish): Adjust.
381         (dump_cselib_table): Likewise.
382         * dse.c (canon_address): Dump value uid.
383         * print-rtl.c (print_rtx): Print value uid.
384         * var-tracking.c (VARIABLE_HASH_VAL): Dropped.
385         (dvuid): New type.
386         (dv_uid): New function, sort of renamed from...
387         (dv_htab_hash): ... this, reimplemented in terms of it and...
388         (dv_uid2hash): ... this.  New.
389         (variable_htab_eq): Drop excess assertions.
390         (tie_break_pointers): Removed.
391         (canon_value_cmp): Compare uids.
392         (variable_post_merge_New_vals): Print uids.
393         (vt_add_function_parameters): Adjust.
394         (vt_initialize): Reset table.  Adjust.
395
396 2010-02-03  Richard Guenther  <rguenther@suse.de>
397
398         PR tree-optimization/42944
399         * tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Handle
400         calloc.
401         (call_may_clobber_ref_p_1): Likewise.  Properly handle
402         malloc and calloc clobbering errno.
403
404 2010-02-03  Steven Bosscher  <steven@gcc.gnu.org>
405
406         * doc/invoke.texi: Fix name of sched1 dump.
407
408         * opts.c (decode_options): Set flag_tree_switch_conversion
409         only conditionally on optimize >= 2.
410
411         * gcse.c: Assorted comment fixes in pass description.
412
413 2010-02-03  Anthony Green  <green@moxielogic.com>
414
415         * config/moxie/moxie.c (moxie_asm_trampoline_template): Introduce
416         nop padding in order to maintain alignment of storage location of
417         target function address.
418         (moxie_trampoline_init): Store target function address at newly
419         aligned location.
420         * config/moxie/moxie.h (TRAMPOLINE_ALIGNMENT): Increase alignment
421         to 32.
422         (TRAMPOLINE_SIZE): Increase size by 2 bytes for alignment padding.
423
424 2010-02-03  Richard Guenther  <rguenther@suse.de>
425
426         PR middle-end/42927
427         * tree-cfg.c (verify_gimple_assign_binary): Fix shift verification.
428
429 2010-02-03  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
430
431         * config.gcc: Reenable check for obsolete targets.
432         Obsolete alpha*-dec-osf4*, alpha*-dec-osf5.0*, mips-sgi-irix5*,
433         mips-sgi-irix6.[0-4]*.
434
435 2010-02-02  Nick Clifton  <nickc@redhat.com>
436
437         * config/rx/rx.c (rx_is_legitimate_constant): Treat a maximum
438         constant size of 4 as being the same as 0.
439         * doc/invoke.texi (RX Options): Document that -mmax-constant-size
440         can take values in the range 0..4.
441
442 2010-02-02  Jack Howarth  <howarth@bromo.med.uc.edu>
443
444         PR java/41991
445         * unwind-dw2-fde-darwin.c: Re-export _Unwind_FindEnclosingFunction()
446         as _darwin10_Unwind_FindEnclosingFunction().
447         * libgcc-libsystem.ver: New.
448
449 2010-02-01  Vladimir Makarov  <vmakarov@redhat.com>
450
451         PR target/41399
452         * sched-deps.c (sched_analyze_insn): Ignore fixed registers for
453         implicitly set registers.
454
455 2010-02-01  Richard Earnshaw  <rearnsha@arm.com>
456
457         * arm.c (FL_FOR_ARCH_7A): is also a superset of ARMv6K.
458         (arm_override_options): Allow automatic selection of the thread
459         pointer register if thumb2.
460         (legitimize_pic_address): Improve code sequences for Thumb2.
461         (arm_call_tls_get_addr): Likewise.
462         (legitimize_tls_address): Likewise.
463         * arm.md (pic_load_addr_arm): Delete.  Replace with ...
464         (pic_load_addr_32bit): ... this.  New named pattern.
465         * thumb2.md (pic_load_addr_thumb2): Delete.
466         (pic_load_dot_plus_four): Delete.
467         (tls_load_dot_plus_four): New named pattern.
468
469 2010-02-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
470
471         PR libgomp/29986
472         * doc/install.texi (Specific): Add sparc-sun-solaris2.10 entry.
473         Document fix for TLS bug.
474
475 2010-01-31  Richard Guenther  <rguenther@suse.de>
476
477         * tree-sra.c (ptr_parm_has_direct_uses): Rewrite to be
478         conservatively correct.
479
480 2010-01-31  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
481
482         PR target/42850
483         Revert:
484         2010-01-02  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
485
486         * config/pa/t-slibgcc-dwarf-ver (SHLIB_SOVERSION): Bump by two.
487
488 2010-01-31  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
489
490         * doc/install.texi: Update recommended GMP/MPFR/MPC versions.
491
492 2010-01-31  Kai Tietz  <kai.tietz@onevision.com>
493
494         * config.gcc: Adjust order of makefile fragments for mingw targets.
495
496 2010-01-31  Richard Guenther  <rguenther@suse.de>
497
498         PR middle-end/42898
499         * gimplify.c (gimplify_init_constructor): For volatile LHS
500         initialize a temporary.
501
502 2010-01-31  Matthias Klose  <doko@ubuntu.com>
503
504         * configure.ac: Fix __stack_chk_fail check for cross builds configured
505         --with-headers
506         * configure: Regenerate.
507
508 2010-01-29  Eric Botcazou  <ebotcazou@adacore.com>
509
510         * tree-ssa-alias.c (same_type_for_tbaa): Return -1 if the types have
511         the same alias set and their sizes different constantness.
512         (aliasing_component_refs_p): Revert 2009-10-24 change.
513
514 2010-01-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
515
516         * config/sparc/sparc.c (sparc_elf_asm_named_section): Declare decl
517         unused.
518
519 2010-01-29  Richard Guenther  <rguenther@suse.de>
520
521         * tree-ssa-ccp.c (ccp_fold_stmt): Unshare values we substitute.
522         Assert we successfully updated the call.
523
524 2010-01-29  Jakub Jelinek  <jakub@redhat.com>
525
526         PR rtl-optimization/42889
527         * df.h (df_set_bb_dirty_nonlr): New prototype.
528         * df-core.c (df_set_bb_dirty_nonlr): New function.
529         * df-scan.c (df_insn_rescan): Call it instead of
530         df_set_bb_dirty for DEBUG_INSNs.
531
532 2010-01-29  Richard Guenther  <rguenther@suse.de>
533
534         PR middle-end/37448
535         * ipa-inline.c (cgraph_decide_inlining_incrementally): Avoid
536         quadratic behavior in most cases.
537
538 2010-01-28  Uros Bizjak  <ubizjak@gmail.com>
539
540         PR target/42891
541         * config/i386/i386.c (ix86_expand_int_movcc): Convert tmp to SImode
542         in the call to gen_x86_movsicc_0_m1.
543
544 2010-01-28  Richard Guenther  <rguenther@suse.de>
545
546         PR tree-optimization/42871
547         * tree-ssa-pre.c (phi_translate_set): Make sure to retain
548         leaders.
549
550 2010-01-28  Richard Guenther  <rguenther@suse.de>
551
552         * tree-ssa-ccp.c (ccp_fold_stmt): Fold calls and propagate
553         into call arguments.
554
555 2010-01-28  Richard Guenther  <rguenther@suse.de>
556
557         PR middle-end/42883
558         * tree-cfgcleanup.c (remove_forwarder_block): Do not remove
559         the forwarder if the destination is an EH landing pad.
560
561 2010-01-28  Razya Ladelsky  <razya@il.ibm.com>
562
563         * tree-parloops.c (transform_to_exit_first_loop): Update the basic
564         block list passed to gimple_duplicate_sese_tail.
565         (parallelize_loops): Avoid parallelization when the function
566         has_nonlocal_label.
567         Avoid parallelization when the preheader is IRREDUCIBLE.
568         Try to optimize when estimated_loop_iterations_int is unresolved.
569         Add the loop's location to the dump file.
570         * tree-cfg.c (add_phi_args_after_redirect): Remove.
571         (gimple_duplicate_sese_tail): Remove the check for the latch.
572         Redirect nexits to the exit block.
573         Remove handling of the incoming edges to the latch.
574         Redirect the backedge from the copied latch to the exit bb.
575
576 2010-01-28  Michael Matz  <matz@suse.de>
577
578         PR target/42881
579         * config/i386/i386.c (ix86_expand_vector_init_duplicate):
580         Wrap force_reg into a sequence, emit it before user.
581
582 2010-01-28  Stephen Thomas  <stephen.thomas@arm.com>
583
584         * config/arm/arm.md (bswapsi2): Add support for bswapsi2.
585         (arm_rev): New.
586         (arm_legacy_rev): Likewise.
587         (thumb_legacy_rev): Likewise.
588
589 2010-01-27  Jakub Jelinek  <jakub@redhat.com>
590
591         * dwarf2out.c (mem_loc_descriptor): Remove special casing of
592         CONSTANT_POOL_ADDRESS_P SYMBOL_REFs.  If for MEM recursive call
593         on MEM's address failed, try avoid_constant_pool_reference and
594         recurse if it returned something different.
595         (loc_descriptor): If for MEM mem_loc_descriptor failed on the
596         address, try avoid_constant_pool_reference and recurse if it
597         returned something different.
598         (dw_loc_list_1): If for MEM mem_loc_descriptor failed on the
599         address and avoid_constant_pool_reference returned something
600         different, don't set have_address.
601
602 2010-01-27  Alexandre Oliva  <aoliva@redhat.com>
603
604         PR debug/42861
605         * var-tracking.c (val_store): Add modified argument, obey it.
606         Adjust callers.
607         (count_uses): Move down logging of main.
608         (compute_bb_dataflow): Use val_store for MO_VAL_USEs that
609         don't need resolution.
610         (emit_notes_in_bb): Likewise.
611
612 2010-01-27  Richard Guenther  <rguenther@suse.de>
613
614         PR middle-end/42878
615         * tree-inline.c (remap_decl): Delay remapping of SSA name
616         default definitions until we need them.
617
618 2010-01-27  Jakub Jelinek  <jakub@redhat.com>
619
620         * config/rs6000/rs6000.c (TARGET_DELEGITIMIZE_ADDRESS): Redefine.
621         (rs6000_delegitimize_address): New function.
622
623         * config/s390/s390.c (s390_delegitimize_address): Call
624         delegitimize_mem_from_attrs.
625
626         PR middle-end/42874
627         * tree-inline.c (cannot_copy_type_1): Removed.
628         (copy_forbidden): Don't forbid copying of functions containing
629         records/unions with variable length fields.
630
631 2010-01-27  Christian Bruel  <christian.bruel@st.com>
632
633         Revert:
634         PR target/42841
635         * config/sh/sh.c (find_barrier): Increase length for non delayed
636         conditional branches.
637
638 2010-01-27  Matthias Klose  <doko@ubuntu.com>
639
640         * configure.ac (gnu-unique-object): Fix ldd version check.
641         * configure: Regenerate.
642
643 2010-01-26  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
644
645         * config/sparc/sparc.c (sparc_elf_asm_named_section): Test for
646         HAVE_GNU_AS value.
647         * config/sparc/sysv4.h [HAVE_GNU_AS] (TARGET_ASM_NAMED_SECTION):
648         Test for HAVE_GNU_AS value.
649
650 2010-01-26  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
651
652         * config.gcc (mips-sgi-irix[56]*): Set use_gcc_stdint.
653         * config/mips/iris.h (INT8_TYPE, INT16_TYPE, INT32_TYPE,
654         INT64_TYPE): Define.
655         (UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE): Define.
656         (INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE,
657         INT_LEAST64_TYPE): Define.
658         (UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE,
659         UINT_LEAST64_TYPE): Define.
660         (INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE)
661         INT_FAST64_TYPE): Define.
662         (UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE,
663         UINT_FAST64_TYPE): Define.
664         (INTMAX_TYPE, UINTMAX_TYPE): Define.
665         (INTPTR_TYPE, UINTPTR_TYPE): Define.
666         (SIG_ATOMIC_TYPE): Define.
667
668 2010-01-26  Richard Guenther  <rguenther@suse.de>
669
670         * df-scan.c (df_scan_set_bb_info): Remove assert.
671         (df_insn_rescan_debug_internal): Merge asserts.
672         (df_install_ref): Likewise.
673         (df_mark_reg): Use bitmap_set_range.
674         (df_hard_reg_used_p): Remove assert.
675         (df_hard_reg_used_count): Likewise.
676
677 2010-01-26  Richard Guenther  <rguenther@suse.de>
678
679         PR rtl-optimization/42685
680         * web.c (web_main): Ignore DEBUG_INSNs.
681
682 2010-01-26  Joern Rennecke  <amylaar@spamcop.net>
683
684         * doc/tm.texi (TARGET_HANDLE_C_OPTION): Explain arguments.
685
686         (TARGET_RESOLVE_OVERLOADED_BUILTIN): Add loc parameter.
687         Fix types of fndecl and arglist parameters.
688
689 2010-01-26  Richard Guenther  <rguenther@suse.de>
690
691         PR middle-end/42806
692         * tree-eh.c (unsplit_eh): Skip debug insns.
693
694 2010-01-26  Richard Guenther  <rguenther@suse.de>
695
696         PR tree-optimization/42250
697         * ipa-type-escape.c (type_escape_execute): Do not analyze clones.
698
699 2010-01-26  Jakub Jelinek  <jakub@redhat.com>
700
701         PR fortran/42866
702         * omp-low.c (expand_omp_sections): Only use single_pred if
703         l2_bb is single_pred_p.
704
705 2010-01-25  Christian Bruel  <christian.bruel@st.com>
706
707         PR target/42841
708         * config/sh/sh.c (find_barrier): Increase length for non delayed
709         conditional branches.
710         (sh_insn_length_adjustment): Use JUMP_TABLE_DATA_P.
711
712 2010-01-24  David S. Miller  <davem@davemloft.net>
713
714         * config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Only
715         define if not using GAS.
716         * config/sparc/sparc.c (sparc_elf_asm_named_section):
717         Likewise.  Delete SECTION_MERGE code, which is only applicable
718         when using GAS.
719
720 2010-01-24  Mark Mitchell  <mark@codesourcery.com>
721
722         PR c++/42748
723         * config/arm/arm.c (arm_mangle_type): Do not warn about changes to
724         mangling of va_list in system headers.
725
726 2010-01-23  Toon Moene  <toon@moene.org>
727
728         * tree-predcom.c (combine_chains): Return NULL, not false.
729
730 2010-01-23  Joern Rennecke  <amylaar@spamcop.net>
731
732         * tree-loop-distribution.c (distribute_loop): Fix declaration and
733         initialization of variable res to agree with return type.
734
735 2010-01-22  Steve Ellcey  <sje@cup.hp.com>
736
737         * Makefile.in (tree-sra.o): Add $(EXPR_H) dependency.
738         * tree-sra.c: Add include of expr.h.
739
740 2010-01-22  Jakub Jelinek  <jakub@redhat.com>
741
742         * tree-into-ssa.c (maybe_register_def): If stmt ends the bb,
743         insert the debug stmt on the single non-EH edge from the stmt.
744
745 2010-01-22  Richard Henderson  <rth@redhat.com>
746
747         PR tree-opt/42833
748         * tree-sra.c (sra_modify_assign): Delay re-gimplification of
749         the RHS until after generate_subtree_copies has insertted its
750         code before the current statement.
751
752 2010-01-22  Joern Rennecke  <amylaar@spamcop.net>
753
754         * doc/tm.texi (TARGET_MIN_DIVISIONS_FOR_RECIP_MUL): Fix return type.
755
756         * gcc-plugin.h (plugin_init): Use "C" likage for c++.
757
758 2010-01-21  Martin Jambor  <mjambor@suse.cz>
759
760         PR tree-optimization/42585
761         * tree-sra.c (struct access): New field grp_total_scalarization.
762         (dump_access): Dump the new field.
763         (should_scalarize_away_bitmap): New variable.
764         (cannot_scalarize_away_bitmap): Likewise.
765         (sra_initialize): Allocate new bitmaps.
766         (sra_deinitialize): Free new bitmaps.
767         (create_access_1): New function.
768         (create_access): Parts moved to create_access_1.
769         (type_consists_of_records_p): New function.
770         (completely_scalarize_record): Likewise.
771         (build_access_from_expr): Set bit in cannot_scalarize_away_bitmap.
772         (build_accesses_from_assign): Set bits in should_scalarize_away_bitmap.
773         (sort_and_splice_var_accesses): Hint groups with a total_scalarization
774         access.
775         (analyze_all_variable_accesses): Completely scalarize small eligible
776         records.
777
778 2010-01-21  Martin Jambor  <mjambor@suse.cz>
779
780         * tree-sra.c (build_ref_for_offset_1): Allow for zero size fields.
781
782 2010-01-21  Andrew Haley  <aph@redhat.com>
783
784         * gcc.c (process_command): Move lang_specific_driver before
785         setting cc_libexec_prefix.
786
787 2010-01-21  Richard Guenther  <rguenther@suse.de>
788
789         PR middle-end/19988
790         * fold-const.c (negate_expr_p): Pretend only negative
791         real constants are easily negatable.
792
793 2010-01-20  Janis Johnson  <janis187@us.ibm.com>
794             Jason Merrill  <jason@redhat.com>
795
796         * tree.h (TYPE_TRANSPARENT_UNION): Replace with ...
797         (TYPE_TRANSPARENT_AGGR): this, for union and record.
798         * calls.c (initialize argument_information): Handle it.
799         * c-common.c (handle_transparent_union_attribute): Use new name.
800         * c-decl.c (finish_struct): Ditto.
801         * c-typeck.c (type_lists_compatible_p): Ditto.
802         (convert_for_assignment): Use new name and also handle record.
803         * function.c (aggregate_value_p): Handle it.
804         (pass_by_reference): Ditto.
805         (assign_parm_data_types): Ditto.
806         * print-tree.c (print_node): Ditto.
807         * lto-streamer-in.c (unpack_ts_type_value_fields): Ditto.
808         * lto-streamer-out.c (pack_ts_type_value_fields): Ditto.
809         * tree.c (first_field): New fn.
810
811 2010-01-21  Dave Korn  <dave.korn.cygwin@gmail.com>
812
813         PR target/42818
814         * config/i386/cygwin.h (CXX_WRAP_SPEC_LIST): Always apply wrappers,
815         even when linking statically, for now.
816
817 2010-01-20  Alexandre Oliva  <aoliva@redhat.com>
818
819         PR debug/42715
820         * var-tracking.c (use_type): Choose MO_VAL_SET for REGs set
821         without a cselib val.
822         (count_uses): Accept MO_VAL_SET with no val on stores.
823         (add_stores): Likewise.
824
825 2010-01-20  Jakub Jelinek  <jakub@redhat.com>
826
827         * var-tracking.c (check_value_val): Add a compile time assertion.
828         (dv_is_decl_p): Simplify.
829         (dv_as_decl, dv_as_value, dv_from_decl, dv_from_value): Only use
830         gcc_assert if ENABLE_CHECKING.
831
832 2010-01-20  Alexandre Oliva  <aoliva@redhat.com>
833
834         PR debug/42782
835         * var-tracking.c: Include tree-flow.h.
836         (mem_dies_at_call): New.
837         (dataflow_set_preserve_mem_locs): Use it.
838         (dataflow_set_remove_mem_locs): Likewise.
839         (dump_var): Renamed from dump_variable.  Adjust all callers.
840         (dump_var_slot): Renamed from dump_variable_slot.  Likewise.
841         * Makefile.in (var-tracking.o): Adjust deps.
842
843 2010-01-20  Joern Rennecke  <amylaar@spamcop.net>
844
845         * doc/tm.texi (TARGET_SCHED_SET_SCHED_FLAGS): Fix argument list.
846
847 2010-01-20  Richard Guenther  <rguenther@suse.de>
848
849         PR tree-optimization/42717
850         * tree-ssa-dce.c (get_live_post_dom): Remove.
851         (forward_edge_to_pdom): Take an arbitrary edge to copy
852         degenerate PHI args from.
853         (remove_dead_stmt): Use the first post-dominator even if it
854         does not contain live statements as redirection destination.
855
856 2010-01-20  Richard Guenther  <rguenther@suse.de>
857
858         * tree-inline.c (estimate_num_insns): Handle EH builtins.
859
860 2010-01-20  Jakub Jelinek  <jakub@redhat.com>
861
862         * sel-sched.c (create_speculation_check): Remove set but not used
863         variable twin.
864         (try_transformation_cache): Remove set but not used variable ds.
865         (calculate_privileged_insns): Remove set but not used variables
866         cur_insn and min_spec_insn.
867         (find_best_expr): Remove set but not used variable avail_n.
868         * tree-predcom.c (base_names_in_chain_on): Remove set but not used
869         variable e.
870         * cgraphunit.c (assemble_thunk): Remove set but not used variable
871         false_label.
872         * haifa-sched.c (remove_notes): Remove set but not used variable prev.
873         * graphite-clast-to-gimple.c (gloog): Remove set but not used variable
874         new_scop_exit_edge.
875
876 2010-01-20  Felyza Wishbringer  <fwishbringer@gmail.com>
877
878         PR bootstrap/42786
879         * config.gcc (i[34567]86-*-*): Fix handling of athlon64 and athlon-fx
880         cpu types.  Add support for *-sse3 cpu types.
881         (x86_64-*-*): Ditto.
882
883 2010-01-20  Jakub Jelinek  <jakub@redhat.com>
884
885         PR middle-end/42803
886         * varasm.c (narrowing_initializer_constant_valid_p): Add CACHE
887         argument, call initializer_constant_valid_p_1 instead of
888         initializer_constant_valid_p, pass CACHE to it, return NULL
889         immediately if first call returns NULL.
890         (initializer_constant_valid_p_1): New function.
891         (initializer_constant_valid_p): Use it.
892
893 2010-01-20  Thomas Quinot  <quinot@adacore.com>
894
895         * tree.def (PLACEHOLDER_EXPR): Fix comment.
896
897 2010-01-20  Jakub Jelinek  <jakub@redhat.com>
898
899         * dwarf2out.c (mem_loc_descriptor): Use DW_OP_mod for UMOD instead
900         of MOD, handle MOD using DW_OP_{over,over,div,mul,minus}.
901         (loc_list_from_tree): Don't handle unsigned division.  Handle
902         signed modulo using DW_OP_{over,over,div,mul,minus}.
903         * unwind-dw2.c (execute_stack_op): Handle DW_OP_mod using unsigned
904         modulo instead of signed.
905
906 2010-01-20  DJ Delorie  <dj@redhat.com>
907
908         * config/h8300/h8300.c (F): Add "in_epilogue" flag.
909         (Fpa): Pass it
910         (h8300_emit_stack_adjustment): Propogate it.
911         (push): Pass it.
912         (h8300_expand_prologue): Likewise.
913         (h8300_expand_epilogue): Likewise.
914
915 2010-01-19  Michael Matz  <matz@suse.de>
916
917         PR tree-optimization/41783
918         * tree-data-ref.c (toplevel): Include flags.h.
919         (dump_data_dependence_relation):  Also dump the inputs if the
920         result will be unknown.
921         (split_constant_offset_1): Look through some conversions.
922         * tree-predcom.c (determine_roots_comp): Restart a new chain if
923         the offset from last element is too large.
924         (ref_at_iteration): Deal also with MISALIGNED_INDIRECT_REF.
925         (reassociate_to_the_same_stmt): Handle vector registers.
926         * tree-vect-data-refs.c (vect_equal_offsets): Handle unary operations
927         (e.g. conversions).
928         * tree-vect-loop-manip.c (vect_gen_niters_for_prolog_loop): Add
929         wide_prolog_niters argument, emit widening instructions.
930         (vect_do_peeling_for_alignment): Adjust caller, use widened
931         variant of the iteration cound.
932         * Makefile.in (tree-data-ref.o): Add $(FLAGS_H).
933
934 2010-01-19  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
935
936         PR target/38697
937         * config/arm/neon-testgen.m (emit_automatics): New parameter
938         features. Adjust for Fixed_return_reg feature.
939         (test_intrinsic): Call emit_automatics with new feature.
940         * config/arm/neon.ml: Update copyright years.
941         (features): New Fixed_return_reg feature.
942         (ops): Update feature for Vget_low.
943
944 2010-01-19  Jakub Jelinek  <jakub@redhat.com>
945
946         PR tree-optimization/42719
947         * tree-outof-ssa.c (trivially_conflicts_p): Don't consider debug
948         stmt uses.
949
950         PR debug/42728
951         * fwprop.c (all_uses_available_at): Return false if def_set dest
952         is a REG that is used in def_insn.
953
954 2010-01-19  Joern Rennecke  <amylaar@spamcop.net>
955
956         * doc/tm.texi (TARGET_FIXED_CONDITION_CODE_REGS): Add argument names.
957
958         (TARGET_CC_MODES_COMPATIBLE): Put return value in braces.
959         Add argument names.
960
961         (TARGET_SCHED_INIT_SCHED_CONTEXT): Clarify language.
962
963         * target.h (struct gcc_target) <secondary_reload>: Change type
964         of last argument to secondary_reload_info *.
965
966 2010-01-18  Uros Bizjak  <ubizjak@gmail.com>
967
968         PR target/42774
969         * config/alpha/predicates.md (aligned_memory_operand): Return 0 for
970         memory references with unaligned offsets.  Remove CQImode handling.
971         (unaligned_memory_operand): Return 1 for memory references with
972         unaligned offsets.  Remove CQImode handling.
973
974 2010-01-18  Richard Guenther  <rguenther@suse.de>
975
976         PR middle-end/39954
977         * cfgexpand.c (expand_call_stmt): TER pointer arguments in
978         builtin calls.
979
980 2010-01-18  Richard Guenther  <rguenther@suse.de>
981
982         PR tree-optimization/42781
983         * tree-ssa-structalias.c (find_what_var_points_to): Skip
984         restrict processing only if the original variable was
985         artificial.
986
987 2010-01-18  Joern Rennecke  <amylaar@spamcop.net>
988
989         * doc/tm.texi (TARGET_ASM_FUNCTION_EPILOGUE): Update text on where to
990         find number of popped argument bytes.
991
992         (TARGET_INVALID_WITHIN_DOLOOP): Put return value in braces.
993         Fix the text that describes the return value for invalid insns.
994
995         (TARGET_SCHED_NEEDS_BLOCK_P): Fix return type.  Fix argument list.
996
997         (TARGET_SCHED_IS_COSTLY_DEPENDENCE): Fix argument types.
998         Clarify what 'cost of the -dependence' is.  Fix quoting.
999
1000         * toplev.c (default_get_pch_validity): Rename argument to "sz".
1001         * doc/tm.texi (TARGET_GET_PCH_VALIDITY): Likewise.
1002
1003 2010-01-17  Jakub Jelinek  <jakub@redhat.com>
1004
1005         * dwarf2out.c (mem_loc_descriptor): Don't ICE on
1006         {S,U}S_{PLUS,MINUS,NEG,ABS,ASHIFT}.
1007
1008 2010-01-17  Richard Guenther  <rguenther@suse.de>
1009
1010         PR middle-end/42248
1011         * function.c (split_complex_args): Take a VEC to modify.
1012         (assign_parms_augmented_arg_list): Build a VEC instead of
1013         a chain of PARM_DECLs.
1014         (assign_parms_unsplit_complex): Take a VEC of arguments.
1015         Do not fixup unmodified parms.
1016         (assign_parms): Deal with the VEC.
1017         (gimplify_parameters): Likewise.
1018
1019 2010-01-17  Richard Guenther  <rguenther@suse.de>
1020
1021         * tree-ssa-uncprop.c (uncprop_into_successor_phis): Fix PHI
1022         node existence check.
1023         * tree-vect-loop.c (vect_analyze_loop_form): Likewise.
1024         * tree-cfgcleanup.c (merge_phi_nodes): Likewise.
1025         * tree-ssa-dce.c (forward_edge_to_pdom): Likewise.
1026         * tree-cfg.c (gimple_execute_on_growing_pred): Likewise.
1027         (gimple_execute_on_growing_pred): Likewise.
1028
1029 2010-01-17  Richard Guenther  <rguenther@suse.de>
1030
1031         PR tree-optimization/42773
1032         * tree-ssa-pre.c (phi_translate_set): Fix check for PHI node existence.
1033         (compute_antic_aux): Likewise.
1034         (compute_partial_antic_aux): Likewise.
1035
1036 2010-01-17  Jie Zhang  <jie.zhang@analog.com>
1037
1038         PR debug/42767
1039         * dwarf2out.c (mem_loc_descriptor): Handle SS_TRUNCATE
1040         and US_TRUNCATE.
1041
1042 2010-01-17  Joern Rennecke  <amylaar@spamcop.net>
1043
1044         * doc/tm.texi (TARGET_INIT_LIBFUNCS): Put @findex entries in order of
1045         appearance.
1046
1047         (TARGET_LEGITIMATE_ADDRESS_P): Add return type.
1048         Fix markup for strict argument.
1049
1050         (TARGET_SCHED_REORDER2): Fix argument types.
1051
1052         (TARGET_SCHED_DFA_PRE_CYCLE_INSN): Fix return type.
1053         (TARGET_SCHED_DFA_POST_CYCLE_INSN): Likewise.
1054
1055         (TARGET_SCHED_DFA_PRE_ADVANCE_CYCLE): Fix name.
1056         (TARGET_SCHED_DFA_POST_ADVANCE_CYCLE): Likewise.
1057
1058         (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD):
1059         Add argument name.
1060
1061         (TARGET_SCHED_ALLOC_SCHED_CONTEXT): Remove duplicate documentation.
1062         (TARGET_SCHED_INIT_SCHED_CONTEXT): Likewise.
1063         (TARGET_SCHED_SET_SCHED_CONTEXT): Likewise.
1064         (TARGET_SCHED_CLEAR_SCHED_CONTEXT): Likewise.
1065         (TARGET_SCHED_FREE_SCHED_CONTEXT): Likewise.
1066
1067         (TARGET_SCHED_SET_SCHED_CONTEXT): Fix typo.
1068
1069         (TARGET_SCHED_GEN_SPEC_CHECK): Fix name.
1070
1071         (TARGET_ASM_RELOC_RW_MASK): Add return type.
1072         (TARGET_MANGLE_DECL_ASSEMBLER_NAME): Fix return type.
1073
1074         (TARGET_STRIP_NAME_ENCODING): Fix markup of return type and parameter.
1075
1076         (TARGET_ASM_FILE_START): Put @findex before paragraph start.
1077         Use prototype.
1078
1079         (TARGET_ASM_NAMED_SECTION): Fix argument list.
1080
1081         (TARGET_HAVE_NAMED_SECTIONS): Use @deftypevr.
1082         (TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): Likewise.
1083
1084         (TARGET_ASM_RECORD_GCC_SWITCHES_SECTION): Use @deftypevr.
1085
1086         (TARGET_ASM_ASSEMBLE_VISIBILITY): Fix argument types.
1087
1088         (TARGET_ASM_MARK_DECL_PRESERVED): Fix argument and markup
1089         referring to it.  Fix language.
1090
1091         (TARGET_HAVE_CTORS_DTORS): Use @deftypevr.
1092
1093         (TARGET_ASM_FINAL_POSTSCAN_INSN): Adjust name of first argument.
1094
1095         (TARGET_ASM_EMIT_UNWIND_LABEL): Add argument types.
1096
1097         (TARGET_ASM_EMIT_EXCEPT_TABLE_LABEL): Add type to argument.
1098
1099         (TARGET_UNWIND_EMIT): Remove space between 'FILE *' and
1100         '@var{stream}.  Remove stray 'and'.
1101
1102         (TARGET_ARM_EABI_UNWINDER): Use @deftypevr.
1103
1104         (TARGET_ASM_OUTPUT_DWARF_DTPREL): Adjust name of first argument.
1105
1106         (TARGET_SET_DEFAULT_TYPE_ATTRIBUTES): Add missing article.
1107
1108         (TARGET_OPTION_VALID_ATTRIBUTE_P): Fix name, it was
1109         misspelled as TARGET_VALID_OPTION_ATTRIBUTE_P.
1110
1111         (TARGET_GET_PCH_VALIDITY): Put 'void *' in braces.
1112         Fix description of return value.
1113         Rename argument "sz" to "len."
1114
1115         (TARGET_CXX_GUARD_MASK_BIT): Add missing article.
1116         Clarify meaning of 'true' return value.
1117
1118         (TARGET_SHIFT_TRUNCATION_MASK): Fix return type.
1119
1120         (TARGET_MODE_REP_EXTENDED): Fix two inconsisent uses of
1121         rep_mode versus mode_rep.
1122
1123         (TARGET_HANDLE_PRAGMA_EXTERN_PREFIX): Document.
1124
1125         (TARGET_BUILTIN_DECL): Fix name.
1126
1127         (TARGET_COMMUTATIVE_P): Fix type of first argument.
1128
1129         (TARGET_SET_CURRENT_FUNCTION): Mention possibility of cfun being NULL.
1130
1131         (TARGET_BRANCH_TARGET_REGISTER_CLASS): Fix return type.
1132
1133         (TARGET_USE_LOCAL_THUNK_ALIAS_P): Document as macro instead of hook.
1134
1135         (TARGET_RELAXED_ORDERING): Use @deftypevr.
1136
1137         (TARGET_GET_DRAP_RTX): Note that this is a hook.
1138         Clarify language.
1139
1140         (TARGET_BUILTIN_RECIPROCAL): Fix argument types.
1141         Rename argument tm_fn to md_fn.
1142
1143         (TARGET_OPTION_PRINT): Fix argument list.
1144
1145 2010-01-16  Harsha Jagasia  <harsha.jagasia@amd.com>
1146
1147         PR target/42664
1148         * config/i386/i386.c (ix86_fixup_binary_operands):
1149         Revert FMA4 fixup of operands.
1150
1151 2010-01-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1152
1153         PR gcc/42525
1154         * Makefile.in (write_entries_to_file, install-plugin):
1155         Use \012 instead of \n with tr.
1156
1157 2010-01-16  Richard Sandiford  <r.sandiford@uk.ibm.com>
1158
1159         * configure.ac (HAVE_AS_REF): New C macro.
1160         * configure: Regenerate.
1161         * config.in: Likewise.
1162         * collect2.c (main): Only postpone SCAN_DWEH to the second pass
1163         if HAVE_AS_REF.
1164         * config/rs6000/aix.h (ASM_OUTPUT_DWARF_TABLE_REF): Only define
1165         if HAVE_AS_REF.
1166
1167 2010-01-16  Joern Rennecke  <amylaar@spamcop.net>
1168
1169         * doc/tm.texi (TARGET_USE_BLOCKS_FOR_CONSTANT_P): Fix argument types.
1170
1171         (TARGET_SUPPORT_VECTOR_MISALIGNMENT): Fix argument types.
1172
1173         (TARGET_USE_ANCHORS_FOR_SYMBOL_P): Fix argument types.
1174
1175         (TARGET_SCHED_ALLOC_SCHED_CONTEXT): Put 'void *' in braces.
1176
1177         (TARGET_IN_SMALL_DATA_P): Fix argument type.
1178
1179         (TARGET_BINDS_LOCAL_P): Fix argument type.
1180
1181         (TARGET_ASM_FILE_END): Use prototype.
1182
1183         (TARGET_ASM_RECORD_GCC_SWITCHES): Don't put 'int' in braces.
1184
1185         (TARGET_DWARF_CALLING_CONVENTION): Fix argument type.
1186
1187         (TARGET_COMP_TYPE_ATTRIBUTES): Fix argument types.
1188
1189         (TARGET_VALID_DLLIMPORT_ATTRIBUTE_P): Fix argument type.
1190
1191         (TARGET_EMUTLS_VAR_ALIGN_FIXED): Don't put 'bool' in braces.
1192         (TARGET_EMUTLS_DEBUG_FORM_TLS_ADDRESS): Likewise.
1193
1194         (TARGET_PCH_VALID_P): Put 'const char *' in braces.
1195         (TARGET_CHECK_PCH_TARGET_FLAGS): Likewise.
1196
1197         (TARGET_ADDR_SPACE_LEGITIMATE_ADDRESS_P): Don't put 'bool' in braces.
1198         (TARGET_ADDR_SPACE_SUBSET_P): Likewise.
1199         (TARGET_ADDR_SPACE_LEGITIMIZE_ADDRESS): Don't put 'rtx' in braces.
1200         (TARGET_ADDR_SPACE_CONVERT): Likewise.
1201
1202         (TARGET_CASE_VALUES_THRESHOLD): Put 'unsigned int' in braces.
1203
1204         (TARGET_MACHINE_DEPENDENT_REORG: Use prototype.
1205
1206         (TARGET_INIT_BUILTINS): Use prototype.
1207
1208         (TARGET_INVALID_ARG_FOR_UNPROTOTYPED_FN):
1209         Put 'const char *' in braces.  Fix parameter types.
1210         (TARGET_INVALID_CONVERSION): Fix parameter types.
1211         (TARGET_INVALID_UNARY_OP, TARGET_INVALID_BINARY_OP): Likewise.
1212         (TARGET_INVALID_PARAMETER_TYPE, TARGET_INVALID_RETURN_TYPE): Likewise.
1213
1214         (TARGET_PROMOTED_TYPE): Remove braces around 'tree'.
1215         Fix argument type.
1216
1217         (TARGET_CONVERT_TO_TYPE): Remove braces around 'tree'.
1218
1219         (TARGET_ALLOCATE_STACK_SLOTS_FOR_ARGS): Remove braces around 'bool'.
1220
1221 2010-01-15  Joern Rennecke  <amylaar@spamcop.net>
1222
1223         * doc/tm.texi (TARGET_HELP): Fix return type.
1224
1225         (TARGET_PROMOTE_FUNCTION_MODE): Put 'enum machine_mode'
1226         in braces.  Fix argument types.
1227
1228         (TARGET_LIBGCC_CMP_RETURN_MODE): Use prototype.
1229
1230         (TARGET_LIBGCC_SHIFT_COUNT_MODE): Use prototype.
1231
1232         (TARGET_MS_BITFIELD_LAYOUT_P): Fix argument type.
1233
1234         (TARGET_DECIMAL_FLOAT_SUPPORTED_P): Don't put 'bool' in braces.
1235         (TARGET_FIXED_POINT_SUPPORTED_P): Likewise.
1236
1237         (TARGET_MANGLE_TYPE): Fix argument types.
1238
1239         (TARGET_IRA_COVER_CLASSES): Use prototype.
1240
1241         (TARGET_BUILTIN_SETJMP_FRAME_VALUE): Fix return type.  Use prototype.
1242
1243         (TARGET_CAN_ELIMINATE): Use identifiers for argument names.
1244
1245         (TARGET_PROMOTE_PROTOTYPES): Fix argument type.
1246
1247         (TARGET_MUST_PASS_IN_STACK): Fix argument type.
1248
1249         (TARGET_CALLEE_COPIES): Fix argument types.
1250
1251         (TARGET_SPLIT_COMPLEX_ARG): Fix argument type.
1252
1253         (TARGET_GIMPLIFY_VA_ARG_EXPR): Fix argument types.
1254
1255         (TARGET_FUNCTION_VALUE): Fix argument types.
1256
1257         (TARGET_RETURN_IN_MSB): Fix argument type.
1258
1259         (TARGET_RETURN_IN_MEMORY): Fix argument types.
1260
1261         (TARGET_ASM_CAN_OUTPUT_MI_THUNK): Fix argument types.
1262
1263         (TARGET_EXTRA_LIVE_ON_ENTRY): Fix argument type.
1264
1265         (TARGET_STRICT_ARGUMENT_NAMING): Make literal in text
1266         agree with return type.
1267
1268         (TARGET_PRETEND_OUTGOING_VARARGS_NAMED): Add Prototype.
1269
1270 2010-01-15  Jing Yu  <jingyu@google.com>
1271
1272         PR rtl-optimization/42691
1273         * combine.c (try_combine): Set changed_i3_dest to 1 when I2 and I3 set
1274         a pseudo to a constant and are merged, and adjust comments.
1275
1276 2010-01-15  Eric Botcazou  <ebotcazou@adacore.com>
1277
1278         * config/i386/sse.md (avx_vperm2f128<mode>3): Fix typo.
1279
1280 2010-01-15  Richard Guenther  <rguenther@suse.de>
1281
1282         PR middle-end/42739
1283         * tree-cfgcleanup.c (remove_forwarder_block): Move destination
1284         labels of computed or non-local gotos to the destination.
1285         * tree-cfg.c (gimple_verify_flow_info): Verify that a EH
1286         landing pad label is the first label.
1287
1288 2010-01-15  Richard Guenther  <rguenther@suse.de>
1289
1290         * tree-ssa-loop-im.c (gen_lsm_tmp_name): Fix bogus fallthru.
1291
1292 2010-01-14  Michael Meissner  <meissner@linux.vnet.ibm.com>
1293
1294         PR target/42747
1295         * config/rs6000/rs6000.md (sqrtdf2): Split into expander and insn
1296         to allow generation of the xssqrtdp instruction on power7.
1297         (sqrtdf2_fpr): Ditto.
1298
1299 2010-01-14  Jakub Jelinek  <jakub@redhat.com>
1300
1301         PR middle-end/42674
1302         * c-decl.c (finish_function): Don't emit -Wreturn-type warnings in
1303         functions with noreturn attribute.
1304
1305         PR c++/42608
1306         * varasm.c (declare_weak): Add weak attribute to decl if it
1307         doesn't have one already.
1308         (assemble_external): Only add decls to weak_decls if they also
1309         have weak attribute.
1310
1311 2010-01-14  Alexandre Oliva  <aoliva@redhat.com>
1312
1313         * var-tracking.c (var_reg_delete): Don't delete the association
1314         between REGs and values or one-part variables if the register
1315         isn't clobbered.
1316
1317 2010-01-14  Jakub Jelinek  <jakub@redhat.com>
1318
1319         PR debug/42657
1320         * tree-inline.c (copy_debug_stmt): Don't reset debug stmt just
1321         because its first operand is a non-localized variable.
1322
1323 2010-01-14  Martin Jambor  <mjambor@suse.cz>
1324
1325         PR tree-optimization/42706
1326         * tree-sra.c (encountered_recursive_call): New variable.
1327         (encountered_unchangable_recursive_call): Likewise.
1328         (sra_initialize): Initialize both new variables.
1329         (callsite_has_enough_arguments_p): New function.
1330         (scan_function): Call decl and flags check only for IPA-SRA, check
1331         whether there is a recursive call and whether it has enough arguments.
1332         (all_callers_have_enough_arguments_p): New function.
1333         (convert_callers): Look for recursive calls only when
1334         encountered_recursive_call is set.
1335         (ipa_early_sra): Bail out either if
1336         !all_callers_have_enough_arguments_p or
1337         encountered_unchangable_recursive_call.
1338
1339 2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
1340
1341         * sel-sched.c: Add 2010 to copyright years.
1342         * sel-sched-ir.c: Likewise.
1343         * sel-sched-ir.h: Likewise.
1344
1345 2010-01-14  Martin Jambor  <mjambor@suse.cz>
1346
1347         PR tree-optimization/42714
1348         * tree-sra.c (sra_ipa_modify_assign): Handle incompatible-type
1349         constructors specially.
1350
1351 2010-01-14  Andi Kleen  <ak@linux.intel.com>
1352
1353         * config/i386/drivers-i386.c (detect_caches_intel):
1354         Add l2sizekb parameter and fill in.
1355         (host_detect_local_cpu): Add l2sizekb, fill in.
1356         Add Atom small cache heuristic.
1357
1358 2010-01-14  Andi Kleen  <ak@linux.intel.com>
1359
1360         * config/i386/drivers-i386.c (detect_caches_cpuid4):
1361         Add level3 parameter and fill in.
1362         (detect_caches_intel): Handle level3 cache.
1363
1364 2010-01-14  Andi Kleen  <ak@linux.intel.com>
1365
1366         * config/i386/drivers-i386.c (host_detect_local_cpu):
1367         Fix core duo detection.
1368
1369 2010-01-14  Andi Kleen  <ak@linux.intel.com>
1370
1371         * config/i386/drivers-i386.c (host_detect_local_cpu):
1372         Fix Atom detection.
1373
1374 2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
1375
1376         * config/rs6000/rs6000.c (rs6000_variable_issue): Rename to...
1377         (rs6000_variable_issue_1): this.  Use...
1378         (rs6000_variable_issue): here.  Reimplement.  Print debug info.
1379
1380 2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
1381
1382         * sel-sched-ir.c (sel_restore_other_notes): Rename to
1383         sel_restore_notes.  Update all callers.  Call reemit_notes
1384         for all insns.
1385
1386 2010-01-14  Andrey Belevantsev  <abel@ispras.ru>
1387
1388         PR rtl-optimization/42246
1389         * sel-sched-ir.h (get_all_loop_exits): Include exits from inner
1390         loops.
1391
1392 2010-01-14  Andrey Belevantsev  <abel@ispras.ru>
1393
1394         * sel-sched.c (compute_av_set_at_bb_end): Do not test that number of
1395         all successors is the same as number of successors in current region.
1396
1397 2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
1398
1399         * sel-sched.c (maybe_emit_renaming_copy): Exit early when expression
1400         to rename is not separable.  Otherwise check that its LHS is not NULL.
1401
1402 2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
1403
1404         * sel-sched.c (choose_best_reg_1):  Loop over all regs for mode.
1405
1406 2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
1407
1408         * sel-sched.c (mark_unavailable_hard_regs): Do not try to search
1409         available registers when failed to discover LHS register class.
1410         Fix indentation.  Update comment.
1411
1412 2010-01-14  Andrey Belevantsev  <abel@ispras.ru>
1413             Alexander Monakov  <amonakov@ispras.ru>
1414
1415         PR rtl-optimization/42389
1416         * sel-sched.c (advance_one_cycle): Set FENCE_ISSUE_MORE
1417         to can_issue_more.
1418         (advance_state_on_fence): Likewise.
1419         (sel_target_adjust_priority): Print debug output only when
1420         sched_verbose >= 4, not 2.
1421         (get_expr_cost): Do not issue all unique insns on the next cycle.
1422         (fill_insns): Initialize can_issue_more from the value saved
1423         with the fence.
1424         * sel-sched-ir.c (flist_add): New parameter issue_more.
1425         Init FENCE_ISSUE_MORE with it.
1426         (merge_fences): Likewise.
1427         (init_fences): Update call to flist_add.
1428         (add_to_fences, add_clean_fence_to_fences)
1429         (add_dirty_fence_to_fences): Likewise.
1430         (move_fence_to_fences): Update call to merge_fences.
1431         (invoke_reorder_hooks): Do not reset can_issue_more on insns from
1432         sched groups.
1433         * sel-sched-ir.h (struct _fence): New field issue_more.
1434         (FENCE_ISSUE_MORE): New accessor macro.
1435
1436 2010-01-14  Andrey Belevantsev  <abel@ispras.ru>
1437
1438         PR rtl-optimization/42388
1439         * sel-sched-ir.c (maybe_tidy_empty_bb): Do not delete empty blocks
1440         that have no predecessors nor successors.  Do not call move_bb_info
1441         for empty blocks outside of current region.
1442
1443 2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
1444
1445         PR rtl-optimization/42294
1446         * sel-sched-ir.h (struct _sel_insn_data): Update comment.
1447         * sel-sched.c (move_exprs_to_boundary): Transitively add all
1448         originators' originators.
1449
1450 2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
1451
1452         PR rtl-optimization/39453
1453         PR rtl-optimization/42246
1454         * sel-sched-ir.c (considered_for_pipelining_p): Do not test
1455         for pipelining_p.
1456         (sel_add_loop_preheaders): Add preheader to last_added_blocks.
1457
1458 2010-01-14  Andrey Belevantsev  <abel@ispras.ru>
1459             Alexander Monakov  <amonakov@ispras.ru>
1460
1461         PR middle-end/42245
1462         * sel-sched-ir.c (sel_recompute_toporder): New.  Use it...
1463         (maybe_tidy_empty_bb): ... here.  Make static.  Add new
1464         argument.  Update all callers.
1465         (tidy_control_flow): ... and here.  Recompute topological order
1466         of basic blocks in region if necessary.
1467         (sel_redirect_edge_and_branch): Change return type.  Return true
1468         if topological order might have been invalidated.
1469         (purge_empty_blocks): Export and move from...
1470         * sel-sched.c (purge_empty_blocks): ... here.
1471         * sel-sched-ir.h (sel_redirect_edge_and_branch): Update prototype.
1472         (maybe_tidy_empty_bb): Delete prototype.
1473         (purge_empty_blocks): Declare.
1474
1475 2010-01-14  Andrey Belevantsev <abel@ispras.ru>
1476
1477         PR rtl-optimization/42249
1478         * sel-sched.c (try_replace_dest_reg): When chosen register
1479         and original register is the same, do not bail out early, but
1480         still check all original insns for validity of replacing destination
1481         register.  Set EXPR_TARGET_AVAILABLE to 1 before leaving function
1482         in this case.
1483
1484 2010-01-14  Jakub Jelinek  <jakub@redhat.com>
1485
1486         PR c/42721
1487         Port from no-undefined-overflow branch:
1488         2009-03-09  Richard Guenther  <rguenther@suse.de>
1489
1490         * fold-const.c (add_double_with_sign): Fix unsigned overflow detection.
1491
1492 2010-01-14  Richard Guenther  <rguenther@suse.de>
1493
1494         PR lto/42665
1495         * gimple.c (iterative_hash_gimple_type): Avoid hashing
1496         error_mark_node.
1497
1498 2010-01-14  Ira Rosen  <irar@il.ibm.com>
1499
1500         PR tree-optimization/42709
1501         * tree-vect-slp.c (vect_get_constant_vectors): Use constant's type
1502         as scalar type in creation of constant vector operand.
1503
1504 2010-01-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1505
1506         PR testsuite/42414
1507         * Makefile.in ($(TESTSUITEDIR)/site.exp, check-%)
1508         (check-parallel-%): Match `testsuite' directory component only
1509         at the end.
1510
1511 2010-01-14  Shujing Zhao  <pearly.zhao@oracle.com>
1512
1513         PR translation/39521
1514         * gcc.c (do_spec_1): Wrapped the error and notice messages of specs
1515         strings with _().
1516
1517 2010-01-13  Richard Guenther  <rguenther@suse.de>
1518
1519         PR tree-optimization/42730
1520         * tree-ssa-ccp.c (maybe_fold_stmt_indirect): Add shortcut for
1521         offset zero.
1522
1523 2010-01-13  Steve Ellcey  <sje@cup.hp.com>
1524
1525         PR target/pr42542
1526         * config/ia64/ia64.c (ia64_expand_vecint_compare): Convert GTU to GT
1527         for V2SI by subtracting (-(INT MAX) - 1) from both operands to make
1528         them signed.
1529
1530 2010-01-13  Bernd Schmidt  <bernd.schmidt@analog.com>
1531
1532         * config/bfin/libgcc-bfin.ver: Regenerate based on current
1533         libgcc-std.ver.  Add entries for ___smulsi3_highpart and
1534         ___umulsi3_highpart.
1535
1536         * config/bfin/bfin.c (bfin_reorg): Call run_selective_scheduling
1537         rather than schedule_insns if the pass is enabled.
1538
1539 2010-01-13  Martin Jambor  <mjambor@suse.cz>
1540
1541         PR tree-optimization/42704
1542         * tree-sra.c (sra_modify_assign): Do not delete assignments to
1543         SSA_NAMEs.
1544
1545 2010-01-13  Martin Jambor  <mjambor@suse.cz>
1546
1547         PR tree-optimization/42703
1548         * tree-sra.c (analyze_access_subtree): Check that we can build a
1549         reference to the original data within the aggregate.
1550
1551 2010-01-13  Richard Guenther  <rguenther@suse.de>
1552
1553         PR tree-optimization/42705
1554         * tree-ssa-reassoc.c (build_and_add_sum): Insert stmts after
1555         labels.
1556
1557 2010-01-13  Richard Guenther  <rguenther@suse.de>
1558
1559         PR middle-end/42716
1560         * fold-const.c (fold_unary_loc): Fold INDIRECT_REFs.
1561
1562 2010-01-13  Jakub Jelinek  <jakub@redhat.com>
1563
1564         PR debug/41371
1565         * var-tracking.c (values_to_unmark): New variable.
1566         (find_loc_in_1pdv): Clear VALUE_RECURSED_INTO of values in
1567         values_to_unmark vector.  Moved body to...
1568         (find_loc_in_1pdv_1): ... this.  Don't clear VALUE_RECURSED_INTO,
1569         instead queue it into values_to_unmark vector.
1570         (vt_find_locations): Free values_to_unmark vector.
1571
1572 2010-01-13  Wolfgang Gellerich  <gellerich@de.ibm.com>
1573
1574         * config/s390/s390.c (override_options): Set
1575         default of max-pending-list-length to 256
1576
1577 2010-01-13  Richard Guenther  <rguenther@suse.de>
1578
1579         PR lto/42678
1580         * tree-pass.h (PROP_gimple_lcx): New.
1581         * cfgexpand.c (pass_expand): Require PROP_gimple_lcx.
1582         * passes.c (init_optimization_passes): Move pass_lower_complex_O0
1583         before the final cleanup_eh.
1584         (dump_properties): Dump PROP_gimple_lcx.
1585         * tree-complex.c (pass_lower_complex): Provide PROP_gimple_lcx.
1586         (tree_lower_complex_O0): Remove.
1587         (gate_no_optimization): Run if PROP_gimple_lcx is not set.
1588         (pass_lower_complex_O0): Provide PROP_gimple_lcx.  Run
1589         tree_lower_complex, schedule TODO_update_ssa.
1590         * lto-streamer-out.c (output_function): Stream the functions
1591         properties.
1592         * lto-streamer-in.c (input_function): Likewise.
1593         (lto_read_body): Do not override them here.
1594
1595 2010-01-12  Joseph Myers  <joseph@codesourcery.com>
1596
1597         PR c/42708
1598         * c-typeck.c (build_c_cast): Fold value cast to union type before
1599         wrapping it in a CONSTRUCTOR.
1600
1601 2010-01-12  Jakub Jelinek  <jakub@redhat.com>
1602
1603         PR rtl-optimization/42699
1604         * cse.c (cse_insn): Optimize lhs ZERO_EXTRACT if only CONST_INTs are
1605         involved.
1606
1607 2010-01-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1608
1609         * config/mips/iris6.h (SUBTARGET_DONT_WARN_UNUSED_SPEC,
1610         SUBTARGET_WARN_UNUSED_SPEC): Move ...
1611         config/mips/iris.h (SUBTARGET_DONT_WARN_UNUSED_SPEC,
1612         SUBTARGET_WARN_UNUSED_SPEC): ... here
1613         * config/mips/iris5.h (LIBGCC_SPEC): Define.
1614
1615 2010-01-12  Julian Brown  <julian@codesourcery.com>
1616
1617         * config/arm/neon-schedgen.ml (Utils): Don't try to
1618         open missing module.
1619         (find_with_result): New.
1620
1621 2010-01-12  Jakub Jelinek  <jakub@redhat.com>
1622
1623         PR debug/42662
1624         * simplify-rtx.c (simplify_relational_operation_1): Avoid invalid rtx
1625         sharing when canonicalizing ({lt,ge}u (plus a b) b).
1626
1627         PR tree-optimization/42645
1628         * tree-inline.c (processing_debug_stmt): Move earlier.  Make static.
1629         (remap_ssa_name): If processing_debug_stmt and name wasn't found in
1630         decl_map, set processing_debug_stmt to -1 and return name without
1631         any remapping.
1632
1633 2010-01-11  Dave Korn  <dave.korn.cygwin@gmail.com>
1634
1635         * doc/install.texi (Specific#x-x-cygwin): Document minimum required
1636         binutils version, and reword target configuration description.
1637
1638 2010-01-11  Andy Hutchinson  <hutchinsonandy@gcc.gnu.org>
1639
1640         * config/avr/avr.h (LINKER_NAME): Remove.
1641
1642 2010-01-11  Janis Johnson  <janis187@us.ibm.com>
1643
1644         PR target/42416
1645         * config/rs6000/rs6000.c (rs6000_override_options): On targets
1646         that support VSX, warn for -mno-altivec if vsx is not disabled,
1647         and disable vsx.
1648
1649 2010-01-11  Joseph Myers  <joseph@codesourcery.com>
1650             Shujing Zhao  <pearly.zhao@oracle.com>
1651
1652         PR translation/42469
1653         * common.opt (Wframe-larger-than=, fcompare-debug=, fdbg-cnt=,
1654         fira-verbose=, flto-compression-level=, fplugin-arg-): Use tab
1655         character between option name and help text.
1656         * c.opt (imultilib): Likewise.
1657
1658 2010-01-10  Rafael Avila de Espindola  <espindola@google.com>
1659
1660         * lto-streamer-out.c (output_unreferenced_globals): Output static
1661         variables.
1662
1663 2010-01-10  Steven Bosscher  <steven@gcc.gnu.org>
1664
1665         PR rtl-optimization/42621
1666         * bb-reorder.c (gate_duplicated_computed_gotos): Only run if not
1667         optimizing for size.
1668         (duplicate_computed_gotos): Remove now-redundant check.
1669
1670 2010-01-10  Steve Ellcey  <sje@cup.hp.com>
1671
1672         PR target/37454
1673         * configure.ac: Save and restore LDFLAGS and LIBS
1674         * configure: Regenerate.
1675
1676 2010-01-10  Richard Guenther  <rguenther@suse.de>
1677
1678         PR middle-end/42667
1679         * builtins.c (fold_builtin_strlen): Add type argument and
1680         convert the resulting length to it.
1681         (fold_builtin_1): Adjust.
1682
1683 2010-01-09  Jakub Jelinek  <jakub@redhat.com>
1684
1685         * config/rs6000/rs6000.c (rs6000_emit_set_long_const): Shorten
1686         sequence for DImode constants >= 0x80000000UL <= 0xFFFFFFFFUL by
1687         1 insn.
1688         (num_insns_constant_wide): Adjust for that change.
1689
1690 2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
1691
1692         PR debug/42631
1693         * web.c (union_defs): Add used argument, to combine uses of
1694         uninitialized regs.
1695         (entry_register): Adjust type and tests of used argument.
1696         (web_main): Widen used for new use.  Pass it to union_defs.
1697         * df.h (union_defs): Adjust prototype.
1698
1699 2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
1700
1701         PR debug/42630
1702         * loop-unroll.c (referenced_in_one_insn_in_loop_p): Count debug
1703         uses in new incoming argument.  Free body.
1704         (reset_debug_uses_in_loop): New.
1705         (analyze_insn_to_expand_var): Call the latter if the former found
1706         anything.  Fix whitespace.  Reject invalid dest overlaps before
1707         going through all insns in the loop.
1708
1709 2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
1710
1711         PR debug/42629
1712         * haifa-sched.c (dying_use_p): Debug insns don't count.
1713
1714 2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
1715
1716         PR middle-end/42363
1717         * gimplify.c (gimplify_modify_expr): Drop lhs on noreturn calls.
1718         * tree-cfg.c (is_ctrl_altering_stmt): Don't compute flags twice.
1719         (verify_gimple_call): Reject LHS in noreturn calls.
1720
1721 2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
1722
1723         PR debug/42604
1724         PR debug/42395
1725         * tree-vect-loop-manip.c (adjust_info): New type.
1726         (adjust_vec): New pointer to vector.
1727         (adjust_debug_stmts_now, adjust_vec_debug_stmts): New.
1728         (adjust_debug_stmts, adjust_phi_and_debug_stmts): New.
1729         (slpeel_update_phis_for_duplicate_loop): Use them.
1730         (slpeel_update_phi_nodes_for_guard1): Likewise.
1731         (slpeel_update_phi_nodes_for_guard2): Likewise.
1732         (slpeel_tree_peel_loop_to_edge): Likewise.
1733         (vect_update_ivs_after_vectorizer): Likewise.
1734
1735 2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
1736
1737         * vec.h (DEF_VEC_ALLOC_FUNC_O_STACK): Drop excess paren.
1738         (DEF_VEC_ALLOC_FUNC_I_STACK): Likewise.
1739
1740 2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
1741
1742         * config/i386/i386.c (ix86_vectorize_builtin_vec_perm): Silence
1743         bogus uninitialized warning.
1744
1745 2010-01-09  Richard Guenther  <rguenther@suse.de>
1746
1747         PR middle-end/42512
1748         * tree-scalar-evolution.c (interpret_loop_phi): Make sure
1749         the evolution is compatible with the initial condition.
1750
1751 2010-01-09  Jakub Jelinek  <jakub@redhat.com>
1752
1753         * gcc.c (process_command): Update copyright notice dates.
1754         * gcov.c (print_version): Likewise.
1755         * gcov-dump.c (print_version): Likewise.
1756         * mips-tfile.c (main): Likewise.
1757         * mips-tdump.c (main): Likewise.
1758
1759 2010-01-08  Andy Hutchinson  <hutchinsonandy@gcc.gnu.org>
1760
1761         PR target/41885
1762         * config/avr/avr.md (rotlqi3): Add CONST_INT_P check.
1763         (rotlhi3): Delete.
1764         (rotlhi3_8): Delete.
1765         (rotlsi3): Delete.
1766         (rotlsi3_8): Delete.
1767         (rotlsi3_16): Delete.
1768         (rotlsi3_24): Delete.
1769         (rotl<mode>3): New.
1770         (*rotw<mode>3): New.
1771         (*rotb<mode>3): New.
1772         * config/avr/avr.c (avr_rotate_bytes): New function.
1773         * config/avr/avr-proto.h (avr_rotate_bytes): New function.
1774
1775 2010-01-08  Steve Ellcey  <sje@cup.hp.com>
1776
1777         PR target/37454
1778         * configure.ac: Modify -rdynamic check.
1779         * configure: Regenerate.
1780
1781 2010-01-08  DJ Delorie  <dj@redhat.com>
1782
1783         * config/sh/sh.c (sh_expand_epilogue): Fix interrupt handler
1784         register popping order.
1785
1786 2010-01-08  Richard Guenther  <rguenther@suse.de>
1787
1788         PR lto/42528
1789         * c.opt (fsigned-char): Also let LTO handle this option.
1790         (funsigned-char): Likewise.
1791
1792 2010-01-07  Richard Guenther  <rguenther@suse.de>
1793
1794         * gimple.h (gss_for_code): Wrap gcc_assert in ENABLE_CHECKING.
1795         (gimple_op): Likewise.
1796         (gimple_op_ptr): Likewise.
1797         (gimple_assign_set_lhs): Remove gcc_assert.
1798         (gimple_assign_set_rhs1): Likewise.
1799         (gimple_assign_set_rhs2): Likewise.
1800         (gimple_call_set_lhs): Likewise.
1801         (gimple_call_set_fn): Likewise.
1802         (gimple_call_set_fndecl): Likewise.
1803         (gimple_call_fndecl): Likewise.
1804         (gimple_call_return_type): Likewise.
1805         (gimple_call_set_chain): Likewise.
1806         (gimple_call_num_args): Likewise.
1807         (gimple_call_set_arg): Likewise.
1808         (gimple_cond_set_code): Likewise.
1809         (gimple_cond_set_lhs): Likewise.
1810         (gimple_cond_set_rhs): Likewise.
1811         (gimple_cond_set_true_label): Likewise.
1812         (gimple_cond_set_false_label): Likewise.
1813         (gimple_label_set_label): Likewise.
1814         (gimple_goto_set_dest): Likewise.
1815         (gimple_debug_bind_get_var): Wrap gcc_assert in ENABLE_CHECKING.
1816         (gimple_debug_bind_get_value): Likewise.
1817         (gimple_debug_bind_get_value_ptr): Likewise.
1818         (gimple_debug_bind_set_var): Likewise.
1819         (gimple_debug_bind_set_value): Likewise.
1820         (gimple_debug_bind_reset_value): Likewise.
1821         (gimple_debug_bind_has_value_p): Likewise.
1822         (gimple_return_retval_ptr): Remove gcc_assert.
1823         (gimple_return_retval): Likewise.
1824         (gimple_return_set_retval): Likewise.
1825         * tree-flow.h (struct gimple_df): Remove nonlocal_all member.
1826         (safe_referenced_var_iterator): Remove.
1827         (FOR_EACH_REFERENCED_VAR_SAFE): Likewise.
1828         * tree-flow-inline.h (gimple_nonlocal_all): Remove.
1829         (fill_referenced_var_vec): Remove.
1830         (first_readonly_imm_use): Remove redundant gcc_assert.
1831         (phi_arg_index_from_use): Combine gcc_asserts.
1832         (move_use_after_head): Wrap gcc_assert in ENABLE_CHECKING.
1833         (first_imm_use_stmt): Remove redundant gcc_assert.
1834         * tree-cfg.c (verify_gimple_call): Verify function and chain
1835         operands.  Verify arguments.
1836         (verify_types_in_gimple_stmt): Verify condition code and labels.
1837
1838 2010-01-07  Richard Guenther  <rguenther@suse.de>
1839
1840         PR tree-optimization/42641
1841         * sese.c (rename_map_elt_info): Use the SSA name version, do
1842         not hash pointers.
1843
1844 2010-01-07  Jakub Jelinek  <jakub@redhat.com>
1845
1846         PR tree-optimization/42625
1847         * cgraph.c (cgraph_make_node_local): Clear DECL_COMDAT*,
1848         TREE_PUBLIC, DECL_WEAK and DECL_EXTERNAL also for same_body
1849         aliases.
1850
1851 2010-01-07  Duncan Sands  <baldrick@free.fr>
1852
1853         * Makefile.in (PLUGIN_HEADERS): Add version.h.
1854
1855 2010-01-07  Uros Bizjak  <ubizjak@gmail.com>
1856
1857         PR target/42511
1858         * ifcvt.c (dead_or_predicable): Also remove REG_EQUAL note when
1859         note itself is not function_invariant_p.
1860
1861 2009-01-07  Steven Bosscher  <steven@gcc.gnu.org>
1862
1863         * gcse.c (execute_rtl_cprop, execute_rtl_pre, execute_rtl_hoist):
1864         Do not add the DF_NOTE problem.
1865         * store-motion.c (execute_rtl_store_motion): Likewise.
1866
1867 2010-01-07  Martin Jambor  <mjambor@suse.cz>
1868
1869         PR tree-optimization/42157
1870         * tree-sra.c (compare_access_positions): Stabilize sort if both
1871         accesses have integer types, return zero immediately if they are the
1872         same.
1873
1874 2010-01-06  Richard Henderson  <rth@redhat.com>
1875
1876         PR middle-end/41883
1877         * haifa-sched.c (add_to_note_list): Merge into ...
1878         (concat_note_lists): ... here, and ...
1879         (unlink_other_notes, rm_other_notes): Merge into...
1880         (remove_notes): ... here.  Create REG_SAVE_NOTEs for
1881         NOTE_INSN_EPILOGUE_BEG.
1882
1883 2010-01-06  Richard Guenther  <rguenther@suse.de>
1884
1885         * ipa-inline.c (cgraph_decide_inlining_incrementally): Do
1886         not inline regular functions into always-inline functions.
1887
1888 2010-01-06  Nick Clifton  <nickc@redhat.com>
1889
1890         * config/rx/rx.h (enum rx_cpu_type): Add RX200.
1891         (CC1_SPEC): Issue an error message if -mcpu=rx200 and -fpu are
1892         used together.
1893         (OVERRIDE_OPTIONS): Delete.
1894         (OPTIMIZATION_OPTIONS): Define.
1895         (ALLOW_RX_FPU_INSNS): Define only in terms of -fpu option.
1896         * config/rx/rx.c (rx_handle_option): Issue an error message if
1897         -mcpu=rx200 and -fpu are used together.
1898         (rx_set_optimization_options): New function.  Issue an error
1899         message if an optimization attribute attempts to reset the FPU/
1900         math optimization pairing.
1901         * config/rx/rx-protos.h (rx_set_optimization_options): Prototype.
1902         * config/rx/rx.opt: Set the default to 32-bit doubles.
1903         * config/rx/t-rx: Add multilibs for -nofpu option.
1904         * doc/invoke.texi: Update documentation of RX options.
1905
1906 2010-01-06  Richard Guenther  <rguenther@suse.de>
1907
1908         * tree-ssa-pre.c (name_to_id): New global.
1909         (alloc_expression_id): Simplify SSA name handling.
1910         (lookup_expression_id): Likewise.
1911         (init_pre): Zero name_to_id.
1912         (fini_pre): Free it.
1913
1914 2010-01-06  Uros Bizjak  <ubizjak@gmail.com>
1915
1916         * ifcvt.c (if_convert): Output slim multiple dumps with TDF_SLIM.
1917
1918 2010-01-05  H.J. Lu  <hongjiu.lu@intel.com>
1919
1920         PR target/42542
1921         * config/i386/sse.md (smaxv2di3): New.
1922         (umaxv2di3): Likewise.
1923         (sminv2di3): Likewise.
1924         (uminv2di3): Likewise.
1925
1926 2010-01-05  Eric Botcazou  <ebotcazou@adacore.com>
1927
1928         PR target/42564
1929         * config/sparc/sparc.h (SPARC_SYMBOL_REF_TLS_P): Delete.
1930         * config/sparc/sparc-protos.h (legitimize_pic_address): Likewise.
1931         (legitimize_tls_address): Likewise.
1932         (sparc_tls_referenced_p): Likewise.
1933         * config/sparc/sparc.c (sparc_expand_move): Use legitimize_tls_address
1934         and adjust calls to legitimize_pic_address.
1935         (legitimate_constant_p) Use sparc_tls_referenced_p.
1936         (legitimate_pic_operand_p): Likewise.
1937         (sparc_legitimate_address_p): Do not use SPARC_SYMBOL_REF_TLS_P.
1938         (sparc_tls_symbol_ref_1): Delete.
1939         (sparc_tls_referenced_p): Make static, recognize specific patterns.
1940         (legitimize_tls_address): Make static, handle CONST patterns.
1941         (legitimize_pic_address): Make static, remove unused parameter and
1942         adjust recursive calls.
1943         (sparc_legitimize_address): Make static, use sparc_tls_referenced_p
1944         and adjust call to legitimize_pic_address.
1945         (sparc_output_mi_thunk): Likewise.
1946
1947 2010-01-05  Paolo Bonzini  <bonzini@gnu.rg>
1948             H.J. Lu  <hongjiu.lu@intel.com>
1949
1950         PR target/42542
1951         * config/i386/i386.c (ix86_expand_int_vcond): Convert GTU to GT
1952         for V4SI and V2DI by subtracting (-(INT MAX) - 1) from both
1953         operands to make them signed.
1954
1955         Revert:
1956         2010-01-04  H.J. Lu  <hongjiu.lu@intel.com>
1957
1958         PR target/42542
1959         * config/i386/i386.c (ix86_expand_int_vcond): Don't convert
1960         GTU to GT for V4SI and V2DI.
1961
1962         * config/i386/sse.md (umaxv4si3): Enabled for SSE4.1 and XOP.
1963         (umin<mode>3): Removed.
1964         (uminv8hi3): New.
1965         (uminv4si3): Likewise.
1966
1967 2010-01-05  Martin Jambor  <mjambor@suse.cz>
1968
1969         PR tree-optimization/42462
1970         * ipa-inline.c (compute_inline_parameters): Pass node->decl instead of
1971         current_function_decl to helper functions and macros.
1972
1973 2010-01-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1974
1975         PR bootstrap/41771
1976         * flags.h: Don't include real.h.
1977         (HONOR_NANS, HONOR_SNANS, HONOR_INFINITIES, HONOR_SIGNED_ZEROS,
1978         HONOR_SIGN_DEPENDENT_ROUNDING): Move ...
1979         * real.h (HONOR_NANS, HONOR_SNANS, HONOR_INFINITIES,
1980         HONOR_SIGNED_ZEROS, HONOR_SIGN_DEPENDENT_ROUNDING): ... here.
1981         * dominance.c: Update copyright.
1982         * gimple.c (walk_gimple_op): Remove inline.
1983         * tree-ssa-reassoc.c: Include real.h.
1984         * Makefile.in (FLAGS_H): Remove $(REAL_H).
1985         (tree-ssa-reassoc.o): Depend on $(REAL_H).
1986
1987 2010-01-05  Nick Clifton  <nickc@redhat.com>
1988
1989         * config/rx/rx.c (rx_get_stack_layout): Fix allocation of second
1990         register to push into the stack frame when the accumulator has to
1991         be saved during interrupts.
1992
1993 2010-01-05  Eric Fisher  <joefoxreal@gmail.com>
1994
1995         * doc/invoke.texi: Remove the documentation about option
1996         -Wunreachable-code.
1997         * common.opt (Wunreachable-code):  Preserved for backward
1998         compatibility.
1999         * tree-cfg.c: Remove the implementation of -Wunreachable-code.
2000         * opts.c (common_handle_option): Add OPT_Wunreachable_code to
2001         the backward compatibility flag section.
2002
2003 2010-01-05  Richard Guenther  <rguenther@suse.de>
2004
2005         * tree-ssa-pre.c (bitmap_value_insert_into_set): Optimize.
2006
2007 2010-01-05  Jakub Jelinek  <jakub@redhat.com>
2008
2009         PR other/42611
2010         * cfgexpand.c (expand_one_var): Diagnose too large variables.
2011
2012         PR tree-optimization/42508
2013         * tree-sra.c (convert_callers): Check for recursive call
2014         by comparing cgraph nodes instead of decls.
2015         (modify_function): Call ipa_modify_formal_parameters also
2016         on all same_body aliases.
2017
2018         * cgraphunit.c (cgraph_materialize_all_clones): Compare
2019         cgraph nodes when checking for same_body aliases.
2020
2021 2010-01-05  Richard Guenther  <rguenther@suse.de>
2022
2023         * tree-ssa-pre.c (get_or_alloc_expr_for_name): Avoid redundant
2024         allocation and lookup.
2025         (get_or_alloc_expr_for_constant): Likewise.
2026         (phi_translate): Sink allocation.
2027
2028 2010-01-04  Richard Guenther  <rguenther@suse.de>
2029
2030         * tree-ssa-sccvn.c (get_or_alloc_constant_value_id): Allocate
2031         a new entry only if needed.
2032         * tree-ssa-dom.c (lookup_avail_expr): Likewise.
2033         * tree-ssa-coalesce.c (find_coalesce_pair): Avoid one
2034         hashtable lookup.
2035         * tree-ssa-pre.c (sorted_array_from_bitmap_set): Pre-allocate
2036         the result array.
2037         (phi_translate): Handle CONSTANTs early.
2038
2039 2010-01-04  Martin Jambor  <mjambor@suse.cz>
2040
2041         PR tree-optimization/42398
2042         * tree-sra.c (struct access): Removed flag grp_different_types.
2043         (dump_access): Do not dump the removed flag.
2044         (sort_and_splice_var_accesses): Do not set the removed flag.
2045         (sra_modify_expr): Check for type compatibility directly.
2046
2047 2010-01-04  Martin Jambor  <mjambor@suse.cz>
2048
2049         PR tree-optimization/42366
2050         * ipa-cp.c (ipcp_init_stage): Always call ipa_compute_jump_functions on
2051         edges with variable number of parameters.
2052         * ipa-prop.c (ipa_write_node_info): Stream out uses_analysis_done
2053         flag instead of asserting it.
2054         (ipa_read_node_info): Read uses_analysis_done flag.
2055
2056 2010-01-04  Richard Guenther  <rguenther@suse.de>
2057
2058         * tree-ssa-sccvn.c (vn_reference_op_compute_hash): Use
2059         iterative_hash_* as intended.
2060         (vn_reference_compute_hash): Likewise.  Simplify hashing
2061         SSA names.
2062         (vn_reference_lookup_2): Likewise.
2063         (vn_nary_op_compute_hash): Likewise.
2064         (vn_phi_compute_hash): Likewise.
2065         (expressions_equal_p): Remove strange code.
2066         * tree-ssa-pre.c (pre_expr_eq): Use gcc_unreachable ().
2067         (pre_expr_hash): Likewise.  Simplify hashing SSA names.
2068         (bitmap_insert_into_set_1): Take value-id as parameter.
2069         (add_to_value): Pass it.
2070         (bitmap_insert_into_set): Likewise.
2071         (bitmap_value_insert_into_set): Likewise.  Remove redundant check.
2072
2073 2010-01-04  Jakub Jelinek  <jakub@redhat.com>
2074
2075         PR driver/42442
2076         * gcc.c (SWITCH_IGNORE_PERMANENTLY): Define.
2077         (do_self_spec): For switches with SWITCH_IGNORE set set also
2078         SWITCH_IGNORE_PERMANENTLY.
2079         (check_live_switch): Check SWITCH_IGNORE_PERMANENTLY instead
2080         of SWITCH_IGNORE.
2081
2082 2010-01-04  Rafael Avila de Espindola  <espindola@google.com>
2083
2084         * lto-streamer-out.c (output_unreferenced_globals): Output the full
2085         tree of an unreferenced global var.
2086
2087 2010-01-04  H.J. Lu  <hongjiu.lu@intel.com>
2088
2089         PR target/42542
2090         * config/i386/i386.c (ix86_expand_int_vcond): Don't convert
2091         GTU to GT for V4SI and V2DI.
2092
2093         * config/i386/sse.md (umaxv4si3): Enabled for SSE4.1 and XOP.
2094         (umin<mode>3): Removed.
2095         (uminv8hi3): New.
2096         (uminv4si3): Likewise.
2097
2098 2010-01-04  H.J. Lu  <hongjiu.lu@intel.com>
2099
2100         PR lto/42581
2101         * collect2.c (main): Turn on trace in collect2 if -v is passed
2102         to gcc with LTO.
2103
2104 2010-01-03  Jerry Quinn  <jlquinn@optonline.net>
2105
2106         * doc/c-tree.texi (RETURN_STMT): Change to RETURN_EXPR.  Update
2107         description of expression operand.
2108
2109 2010-01-03  Andrew Jenner  <andrew@codesourcery.com>
2110
2111         * configure.ac: Add install-html to target_list for Make-hooks.
2112         * configure: Regenerate.
2113         * fortran/Make-lang.in (F95_HTMLFILES): New.
2114         (fortran.html): Use it.
2115         (fortran.install-html): New.
2116         * Makefile.in (install-html): Add lang.install-html.
2117         * java/Make-lang.in (JAVA_HTMLFILES): New.
2118         (java.html): Use it.
2119         (java.install-html): New.
2120         * objc/Make-lang.in (objc.install-html): New.
2121         * objcp/Make-lang.in (obj-c++.install-html): New.
2122         * cp/Make-lang.in (c++.install-html): New.
2123         * ada/gcc-interface/Make-lang.in (ada.install-html): New.
2124         * lto/Make-lang.in (lto.install-html): New.
2125
2126 2010-01-03  H.J. Lu  <hongjiu.lu@intel.com>
2127
2128         PR lto/42520
2129         * gcc.c (LINK_COMMAND_SPEC): Pass -m* and -v to -plugin-opt.
2130
2131 2009-01-03  Steven Bosscher  <steven@gcc.gnu.org>
2132
2133         PR rtl-optimization/41862
2134         * store-motion.c (store_killed_in_insn, compute_store_table,
2135         remove_reachable_equiv_notes, replace_store_insn,
2136         build_store_vectors): Ignore all DEBUG_INSNs.
2137
2138 2010-01-03  H.J. Lu  <hongjiu.lu@intel.com>
2139
2140         PR lto/41564
2141         * common.opt: Add dumpdir.
2142
2143         * gcc.c (cc1_options): Add "-dumpbase %B" only if -dumpbase
2144         isn't specified.
2145         (option_map): Add --dumpdir.
2146
2147         * gcc.h (DEFAULT_WORD_SWITCH_TAKES_ARG): Add dumpdir.
2148
2149         * lto-wrapper.c (run_gcc): Add -dumpbase and -dumpdir for -o.
2150
2151         * opts.c (decode_options): Try dump_dir_name first if
2152         dump_base_name isn't an absolute path.
2153         (common_handle_option): Handle OPT_dumpdir.
2154
2155         * toplev.c (dump_dir_name): New.
2156         (print_switch_values): Also ignore -dumpdir.
2157
2158         * toplev.h (dump_dir_name): New.
2159
2160 2010-01-03  Richard Guenther  <rguenther@suse.de>
2161
2162         PR tree-optimization/42589
2163         * tree-ssa-math-opts.c (execute_optimize_bswap): Allow
2164         double-word expansion of bswap32.
2165
2166 2010-01-03  Steven Bosscher  <steven@gcc.gnu.org>
2167
2168         * postreload-gcse.c (insert_expr_in_table): Replace BLOCK_NUM
2169         with BLOCK_FOR_INSN.
2170         * auto-inc-dec.c (attempt_change, get_next_ref, find_inc): Likewise.
2171         * ifcvt.c (noce_get_alt_condition, noce_try_abs,
2172         noce_process_if_block): Likewise.
2173         * gcse.c (compute_local_properties, insert_expr_in_table,
2174         insert_set_in_table, canon_list_insert, find_avail_set,
2175         pre_insert_copy_insn): Likewise.
2176
2177         * basic-block.h (BLOCK_NUM): Move from here...
2178         * sched-int.h (BLOCK_NUM): ... to here to localize it in the scheduler.
2179
2180 2010-01-03  Richard Guenther  <rguenther@suse.de>
2181
2182         PR tree-optimization/42438
2183         * tree-ssa-pre.c (struct bb_bitmap_sets): Add
2184         contains_may_not_return_call flag.
2185         (BB_MAY_NOTRETURN): New.
2186         (valid_in_sets): Trapping nary operations are not valid
2187         in blocks that may not return.
2188         (insert_into_preds_of_block): Remove check for trapping
2189         expressions.
2190         (compute_avail): Compute also BB_MAY_NOTRETURN.
2191
2192 2010-01-03  Gerald Pfeifer  <gerald@pfeifer.com>
2193
2194         * doc/invoke.texi: Add 2010 to copyright years.
2195
2196 2010-01-03  Eric Botcazou  <ebotcazou@adacore.com>
2197
2198         * config/sparc/sparc.c: Fix formatting nits.
2199
2200 2010-01-02  Gerald Pfeifer  <gerald@pfeifer.com>
2201             Alexander Monakov  <amonakov@ispras.ru>
2202
2203         * doc/invoke.texi (Optimize Options): Reword introduction a bit.
2204
2205 2010-01-02  Richard Guenther  <rguenther@suse.de>
2206
2207         PR middle-end/42577
2208         * tree-vrp.c (check_all_array_refs): Skip non-excutable blocks.
2209         (simplify_switch_using_ranges): Mark to be removed edges
2210         as non-executable.
2211
2212 2010-01-02  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2213
2214         * config/pa/t-slibgcc-dwarf-ver (SHLIB_SOVERSION): Bump by two.
2215
2216         * collect2.c (scan_libraries): Add missing argument in call to
2217         scan_prog_file.
2218
2219 2010-01-02  Uros Bizjak  <ubizjak@gmail.com>
2220
2221         PR target/42448
2222         * config/alpha/predicates.md (aligned_memory_operand): Return false
2223         for CQImode.
2224         (unaligned_memory_operand): Return true for CQImode.
2225         * config/alpha/alpha.c (get_aligned_mem): Assert that location
2226         doesn not cross aligned SImode word boundary.
2227
2228 2010-01-02  Anatoly Sokolov  <aesok@post.ru>
2229
2230         * config/avr/avr.h (REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P, XEXP_):
2231         Remove.
2232         * config/avr/avr-protos.h (avr_init_once, avr_optimization_options,
2233         avr_change_section, avr_reg_class_from_letter) : Remove declaration.
2234
2235 2010-01-02  Richard Guenther  <rguenther@suse.de>
2236
2237         PR lto/41597
2238         * toplev.c (compile_file): Emit LTO marker properly.  Change
2239         it to __gnu_lto_v1.
2240         * collect2.c (scan_prog_file): Adjust for changed LTO marker.
2241
2242 2010-01-01  Richard Guenther  <rguenther@suse.de>
2243
2244         PR debug/42455
2245         * tree-sra.c (analyze_all_variable_accesses): Work in DECL_UID order.
2246
2247 2010-01-01  Richard Guenther  <rguenther@suse.de>
2248
2249         PR c/42570
2250         * c-decl.c (grokdeclarator): For zero-size arrays force
2251         structural equality checks as layout_type does.
2252
2253 2010-01-01  H.J. Lu  <hongjiu.lu@intel.com>
2254
2255         * builtins.c: Update copyright to 2010.
2256
2257 2010-01-01  H.J. Lu  <hongjiu.lu@intel.com>
2258
2259         PR lto/42531
2260         * lto-streamer-out.c (produce_asm): Revert the last change.
2261         (copy_function): Likewise.
2262
2263         * lto-streamer.c (lto_get_section_name): Skip any leading
2264         asterisk in name.
2265
2266 2010-01-01  Richard Guenther  <rguenther@suse.de>
2267
2268         PR middle-end/42559
2269         * builtins.c (get_object_alignment): Do not use DECL_ALIGN
2270         for LABEL_DECLs.
2271
2272 \f
2273 Copyright (C) 2010 Free Software Foundation, Inc.
2274
2275 Copying and distribution of this file, with or without modification,
2276 are permitted in any medium without royalty provided the copyright
2277 notice and this notice are preserved.