OSDN Git Service

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