OSDN Git Service

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