OSDN Git Service

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