OSDN Git Service

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