OSDN Git Service

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