OSDN Git Service

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