OSDN Git Service

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