OSDN Git Service

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