OSDN Git Service

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