OSDN Git Service

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