OSDN Git Service

* configure.ac: Replace all uses of changequote in macro arguments
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
1 2010-02-19  Andreas Schwab  <schwab@linux-m68k.org>
2
3         * configure.ac: Replace all uses of changequote in macro arguments
4         with proper quoting.
5
6 2010-02-19  Jakub Jelinek  <jakub@redhat.com>
7
8         PR middle-end/42233
9         * loop-doloop.c (add_test): Adjust do_compare_rtx_and_jump caller.
10
11 2010-02-19  Richard Guenther  <rguenther@suse.de>
12
13         PR tree-optimization/42944
14         * tree-ssa-alias.c (call_may_clobber_ref_p_1): Massage
15         test for aliasing with errno.
16
17 2010-02-19  Jakub Jelinek  <jakub@redhat.com>
18
19         PR middle-end/42233
20         * expr.h (jumpifnot, jumpifnot_1, jumpif, jumpif_1, do_jump,
21         do_jump_1, do_compare_rtx_and_jump): Add PROB argument.
22         * dojump.c: Include output.h.
23         (inv): New inline function.
24         (jumpifnot, jumpifnot_1, jumpif, jumpif_1, do_jump_1, do_jump,
25         do_jump_by_parts_greater_rtx, do_jump_by_parts_greater,
26         do_jump_by_parts_zero_rtx, do_jump_by_parts_equality_rtx,
27         do_jump_by_parts_equality, do_compare_and_jump): Add PROB
28         argument, pass it down to other calls.
29         (do_compare_rtx_and_jump): Likewise.  If PROB is not -1,
30         add REG_BR_PROB note to the conditional jump.
31         * cfgexpand.c (add_reg_br_prob_note): Removed.
32         (expand_gimple_cond): Don't call it, add the probability
33         as last argument to jumpif_1/jumpifnot_1.
34         * Makefile.in (dojump.o): Depend on output.h.
35         * builtins.c (expand_errno_check): Adjust do_compare_rtx_and_jump
36         callers.
37         * expmed.c (emit_store_flag_force, do_cmp_and_jump): Likewise.
38         * stmt.c (do_jump_if_equal): Likewise.
39         * cfgrtl.c (rtl_lv_add_condition_to_bb): Likewise.
40         * loop-unswitch.c (compare_and_jump_seq): Likewise.
41         * config/rs6000/rs6000.c (rs6000_aix_emit_builtin_unwind_init):
42         Likewise.
43         * optabs.c (expand_doubleword_shift, expand_abs): Likewise.
44         * expr.c (expand_expr_real_1): Adjust do_jump, jumpifnot and
45         jumpifnot_1 callers.
46         (expand_expr_real_2): Adjust jumpifnot_1 and do_compare_rtx_and_jump
47         callers.
48         (store_expr): Adjust jumpifnot caller.
49         (store_constructor): Adjust jumpif caller.
50
51         PR middle-end/42233
52         * gimplify.c (gimple_boolify): For __builtin_expect call
53         gimple_boolify also on its first argument.
54
55 2010-02-18  Uros Bizjak  <ubizjak@gmail.com>
56
57         * configure.ac (gnu-unique-object): Wrap regexps using [] in
58         changequote block.
59         (__stack_chk_fail): Ditto.  Remove quadrigraphs.
60         * configure: Regenerated.
61
62 2010-02-18  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
63
64         * config/spu/spu-c.c (spu_resolve_overloaded_builtin): Call
65         lang_hooks.types_compatible_p instead of comptypes.
66
67 2010-02-18  Sebastian Huber <sebastian.huber@embedded-brains.de>
68
69         * config/arm/lib1funcs.asm (__prefer_thumb__): New define.
70         (udivsi3, aeabi_uidivmod, divsi3, aeabi_idivmod): Use Thumb-1 variant
71         if __prefer_thumb__ is defined.
72
73 2010-02-18  Martin Jambor  <mjambor@suse.cz>
74
75         PR tree-optimization/43066
76         * tree-sra.c (build_ref_for_offset_1): Return false on encountering an
77         array with zero-sized element type.
78
79 2010-02-18  Jakub Jelinek  <jakub@redhat.com>
80
81         * dwarf2out.c (add_var_loc_to_decl): Change last argument to
82         rtx, allocate struct var_loc_node here and return it to the
83         caller, and only if it is actually needed.
84         (dwarf2out_var_location): Adjust add_var_loc_to_decl caller,
85         move it earlier and return immediately if it returns NULL.
86
87 2010-02-17  Mikael Pettersson  <mikpe@it.uu.se>
88
89         * config/sparc/gas.h: New file.  Restore
90         TARGET_ASM_NAMED_SECTION to its ELF default.
91         * config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Do not
92         check !HAVE_GNU_AS.
93         * config/sparc/sparc.c (sparc_elf_asm_named_section):
94         Likewise.  Add ATTRIBUTE_UNUSED to prototype.
95         * config.gcc (sparc*-*-linux*): Include sparc/gas.h
96         after sparc/sysv4.h.
97
98 2010-02-17  Dave Korn  <dave.korn.cygwin@gmail.com>
99
100         * config/i386/mingw32.h (LIBGCJ_SONAME): Fix cut'n'pasto in DLL name.
101
102 2010-02-17  Steven Bosscher  <steven@gcc.gnu.org>
103
104         * gensupport.c (process_one_cond_exec): Derive name for COND_EXEC
105         patterns from predicated pattern.
106
107 2010-02-17  Uros Bizjak  <ubizjak@gmail.com>
108
109         PR target/43103
110         * config/i386/sse.md (xop_vpermil2<mode>3): Use avxmodesuffixf2c
111         for insn mnemonic suffix.
112
113 2010-02-17  Richard Guenther  <rguenther@suse.de>
114
115         * tree-vrp.c (vrp_visit_phi_node): Restrict SCEV analysis
116         to loop PHI nodes.
117
118 2010-02-17  Jakub Jelinek  <jakub@redhat.com>
119
120         PR debug/42918
121         * caller-save.c (save_call_clobbered_regs): If BB ends with
122         a DEBUG_INSN, move any notes in between last real insn and the last
123         DEBUG_INSN after the last DEBUG_INSN.
124
125 2010-02-16  Joern Rennecke  <joern.rennecke@embecosm.com>
126
127         * tm.texi (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD_SPEC):
128         Fix return type.  Fix argument type.  Explain meaning of return value.
129
130 2010-02-16  Richard Guenther  <rguenther@suse.de>
131
132         PR tree-optimization/41043
133         * tree-vrp.c  (vrp_var_may_overflow): Only ask SCEV for real loops.
134         (vrp_visit_assignment_or_call): Do not ask SCEV for regular
135         statements ...
136         (vrp_visit_phi_node): ... but only for loop PHI nodes.
137
138 2010-02-16  Ira Rosen <irar@il.ibm.com>
139
140         PR tree-optimization/43074
141         * tree-vectorizer.h (VECTORIZABLE_CYCLE_DEF): New.
142         * tree-vect-loop.c (vect_analyze_loop_operations): Add
143         vectorizable cycles in hybrid SLP check.
144         * tree-vect-slp.c (vect_detect_hybrid_slp_stmts): Likewise.
145
146 2010-02-16  Richard Guenther  <rguenther@suse.de>
147
148         * alias.c (memrefs_conflict_p): Distinguish must-alias from don't know.
149         (true_dependence): If memrefs_conflict_p computes must-alias
150         trust it.  Move TBAA check after offset-based disambiguation.
151         (canon_true_dependence): Likewise.
152
153 2010-02-16  Alexandre Oliva  <aoliva@redhat.com>
154
155         * params.def (PARAM_MAX_VARTRACK_SIZE): New.
156         * doc/invoke.texi: Document it.
157         * var-tracking.c: Include toplev.h and params.h.
158         (vt_find_locations): Return bool indicating success.  Compute
159         hash sizes unconditionally.  Check new parameter, report.
160         (variable_tracking_main_1): Check vt_find_locations results and
161         retry.  Renamed from...
162         (variable_tracking_main): ... this.  New wrapper to preserve
163         flag_var_tracking_assignments.
164         * Makefile.in (var-tracking.o): Adjust dependencies.
165
166 2010-02-16  Jack Howarth <howarth@bromo.med.uc.edu>
167             Jakub Jelinek <jakub@redhat.com>
168
169         PR target/42854
170         * config/darwin.h (ASM_WEAKEN_DECL): Don't check weak attribute
171         if weak_import attribute is present.
172         * config/darwin.c (machopic_select_section): Likewise.
173
174 2010-02-15  Joern Rennecke  <joern.rennecke@embecosm.com>
175
176         * doc/tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST): Document.
177         (TARGET_VECTORIZE_VECTOR_ALIGNMENT_REACHABLE): Likewise.
178         (TARGET_VECTORIZE_BUILTIN_VEC_PERM): Likewise.
179         (TARGET_VECTORIZE_BUILTIN_VEC_PERM_OK): Likewise.
180
181         * doc/tm.texi (TARGET_VECTORIZE_BUILTIN_CONVERSION): Fix argument types.
182
183         * doc/tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION):
184         Fix argument types.
185
186         * doc/tm.texi (TARGET_SCHED_DFA_NEW_CYCLE): Add argument names.
187         Rewrite text to refer to the names.
188
189 2010-02-15  Sebastian Pop  <sebastian.pop@amd.com>
190
191         * config/i386/i386-builtin-types.def
192         (V2DF_FTYPE_V2DF_V2DF_V2DI_INT): Declared.
193         (V4DF_FTYPE_V4DF_V4DF_V4DI_INT): Declared.
194         (V4SF_FTYPE_V4SF_V4SF_V4SI_INT): Declared.
195         (V8SF_FTYPE_V8SF_V8SF_V8SI_INT): Declared.
196         * config/i386/i386.c (enum ix86_builtins): Add IX86_BUILTIN_VPERMIL2PD,
197         IX86_BUILTIN_VPERMIL2PS, IX86_BUILTIN_VPERMIL2PD256, and
198         IX86_BUILTIN_VPERMIL2PS256.
199         (MULTI_ARG_4_DF2_DI_I): Defined.
200         (MULTI_ARG_4_DF2_DI_I1): Defined.
201         (MULTI_ARG_4_SF2_SI_I): Defined.
202         (MULTI_ARG_4_SF2_SI_I1): Defined.
203         (bdesc_multi_arg): Add __builtin_ia32_vpermil2pd,
204         __builtin_ia32_vpermil2ps, __builtin_ia32_vpermil2pd256, and
205         __builtin_ia32_vpermil2ps256.
206         (ix86_expand_multi_arg_builtin): Handle MULTI_ARG_4_DF2_DI_I,
207         MULTI_ARG_4_DF2_DI_I1, MULTI_ARG_4_SF2_SI_I, and
208         MULTI_ARG_4_SF2_SI_I1.  Handle builtins with 4 arguments.
209         (ix86_expand_args_builtin): Handle MULTI_ARG_4_DF2_DI_I,
210         MULTI_ARG_4_DF2_DI_I1, MULTI_ARG_4_SF2_SI_I, and
211         MULTI_ARG_4_SF2_SI_I1.  Handle CODE_FOR_xop_vpermil2v2df3,
212         CODE_FOR_xop_vpermil2v4sf3, CODE_FOR_xop_vpermil2v4df3, and
213         CODE_FOR_xop_vpermil2v8sf3.
214         * config/i386/i386.md (UNSPEC_VPERMIL2): Declared.
215         * config/i386/sse.md (xop_vpermil2<mode>3): New insn pattern.
216         * config/i386/xopintrin.h (_mm_permute2_pd): New.
217         (_mm256_permute2_pd): New.
218         (_mm_permute2_ps): New.
219         (_mm256_permute2_ps): New.
220
221 2010-02-15  Nick Clifton  <nickc@redhat.com>
222
223         * config/h8300/h8300.c: (h8300_push_pop): Use bool type for
224         boolean parameters.  Use emit_jump_insn when emitting a pop
225         instruction containing a return insn.
226         (push): Use 'true' rather than '1' as second parameter to F.
227         (h8300_expand_prologue): Likewise.
228         Use 'true' and 'false' for boolean parameters to h8300_push_pop.
229         (h8300_expand_epilogue): Likewise.
230
231 2010-02-15  Richard Guenther  <rguenther@suse.de>
232
233         PR middle-end/43068
234         * cgraphunit.c (thunk_adjust): Skip adjusting by fixed_offset
235         if that is zero.
236
237 2010-02-15  Nick Clifton  <nickc@redhat.com>
238
239         * config/mn10300/mn10300.h (FUNCTION_ARG_REGNO_P): Revert previous
240         delta.
241
242 2010-02-14  Marco Poletti  <poletti.marco@gmail.com>
243
244         * intl.c (fake_ngettext): New function.
245         * intl.h (fake_ngettext): Declare.
246         (ngettext): Define macro.
247         * collect2.c (notice_translated): New function.
248         (main): Use notice_translated and ngettext.
249         * collect2.h (notice_translated): Declare.
250
251 2010-02-14  Steven Bosscher  <steven@gcc.gnu.org>
252
253         * reorg.c (delete_computation): Comment fixes.
254         * caller-save.c (setup_save_areas): Idem.
255         * sel-sched-dump.c (dump_lv_set): Idem.
256         * rtl.def: Idem.
257
258 2010-02-14  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
259
260         * config/s390/s390.c (s390_sched_init): New function.
261         (TARGET_SCHED_INIT): Target hook defined.
262
263 2010-02-12  Dave Korn  <dave.korn.cygwin@gmail.com>
264             Jack Howarth  <howarth@bromo.med.uc.edu>
265             Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
266
267         PR target/42982
268         Partial revert of unintended change in fix for PR41605.
269         * config/darwin.h: Fix typo.
270         * config/darwin9.h: Same.
271
272 2010-02-11  Jakub Jelinek  <jakub@redhat.com>
273
274         * c-pch.c (pch_init): Clear v.
275
276 2010-02-11  Sebastian Pop  <sebastian.pop@amd.com>
277
278         PR middle-end/42930
279         * graphite-scop-detection.c (graphite_can_represent_scev): Call
280         graphite_can_represent_init for MULT_EXPR.
281
282 2010-02-11  Sebastian Pop  <sebastian.pop@amd.com>
283
284         PR middle-end/42914
285         PR middle-end/42530
286         * graphite-sese-to-poly.c (remove_phi): New.
287         (translate_scalar_reduction_to_array): Call remove_phi.
288
289 2010-02-11  Sebastian Pop  <sebastian.pop@amd.com>
290
291         PR middle-end/42771
292         * graphite-clast-to-gimple.c (gloog): Call rename_sese_parameters.
293         * graphite-clast-to-gimple.h (gloog): Update declaration.
294         * graphite-poly.c (new_scop): Clear POLY_SCOP_P.
295         * graphite-poly.h (struct poly_bb): Add missing comments.
296         (struct scop): Add poly_scop_p field.
297         (POLY_SCOP_P): New.
298         * graphite-sese-to-poly.c (build_poly_scop): Set POLY_SCOP_P.
299         * graphite.c (graphite_transform_loops): Build the polyhedral
300         representation for each scop before code generation.
301         * sese.c (rename_variables_in_operand): Removed.
302         (rename_variables_in_expr): Return the renamed expression.
303         (rename_sese_parameters): New.
304         * sese.h (rename_sese_parameters): Declared.
305
306 2010-02-11  Richard Guenther  <rguenther@suse.de>
307
308         PR tree-optimization/42998
309         * tree-ssa-pre.c (create_expression_by_pieces): Treat
310         POINTER_PLUS_EXPR properly.
311
312 2010-02-11  Sebastian Pop  <sebastian.pop@amd.com>
313             Changpeng Fang  <changpeng.fang@amd.com>
314
315         PR middle-end/40886
316         * tree-ssa-loop-ivopts.c (determine_use_iv_cost_condition): Decrement
317         the cost of an IV candidate when the IV is used in a test against zero.
318
319         * gcc.dg/tree-ssa/ivopts-3.c: New.
320
321 2010-02-11  Richard Guenther  <rguenther@suse.de>
322
323         PR lto/41664
324         * tree-ssa-alias.c (refs_may_alias_p_1): Canonicalize
325         pointer-vs-decl case by swapping refs.  Handle some cases
326         of pointer-vs-decl disambiguations more conservatively.
327         * cfgexpand.c (gimple_expand_cfg): Set gimple_df->in_ssa_p
328         to false after expanding.
329
330 2010-02-11  Richard Guenther  <rguenther@suse.de>
331
332         PR driver/43021
333         * gcc.c (process_command): Handle LTO file@offset case more
334         appropriately.
335
336 2010-02-11  Jakub Jelinek  <jakub@redhat.com>
337
338         * reload1.c (eliminate_regs_1): If insn is DEBUG_INSN, avoid any
339         modifications outside of the DEBUG_INSN.  Accept CLOBBERs inside
340         of DEBUG_INSNs.
341         (eliminate_regs_in_insn): Eliminate regs even in DEBUG_INSNs.
342
343         * dwarf2out.c (mem_loc_descriptor) <case MEM>: Use DW_OP_deref_size
344         if MEM's mode size isn't DWARF2_ADDR_SIZE.
345         (mem_loc_descriptor) <do_scompare>: Allow also VOIDmode arguments.
346         Optimize eq/ne comparisons when both arguments are known to be
347         zero-extended.
348         (mem_loc_descriptor) <do_ucompare>: Allow also VOIDmode arguments.
349         Don't mask operands unnecessarily if they are known to be already
350         zero-extended.
351
352 2010-02-10  Vladimir Makarov  <vmakarov@redhat.com>
353
354         * ira-conflicts.c (add_insn_allocno_copies): Use find_reg_note
355         instead of loop.
356
357 2010-02-10  Richard Guenther  <rguenther@suse.de>
358
359         PR tree-optimization/43017
360         * tree-vrp.c (vrp_int_const_binop): Trust int_const_binop
361         for wrapping signed arithmetic.
362
363 2010-02-10  Jakub Jelinek  <jakub@redhat.com>
364
365         PR debug/43010
366         * dwarf2out.c (retry_incomplete_types): Don't call gen_type_die
367         if no debug info should be emitted for it.
368
369 2010-02-10  Kaz Kojima  <kkojima@gcc.gnu.org>
370
371         * config/sh/sh.c (find_barrier): Skip call insn with a REG_EH_REGION
372         note when flag_exceptions is set.
373
374 2010-02-10  Duncan Sands  <baldrick@free.fr>
375
376         * Makefile.in (PLUGIN_HEADERS): Add debug.h.
377
378 2010-02-10  Richard Guenther  <rguenther@suse.de>
379
380         PR c/43007
381         * tree.c (get_unwidened): Handle constants.
382         * convert.c (convert_to_integer): Handle TRUNC_DIV_EXPR.
383
384 2010-02-10  Martin Jambor  <mjambor@suse.cz>
385
386         PR lto/42985
387         * ipa-prop.c (ipa_update_after_lto_read): Count parameters and
388         check for variable argument counts independently.
389
390 2010-02-10  Christian Bruel  <christian.bruel@st.com>
391
392         PR target/42841
393         * config/sh/sh.c (find_barrier): Increase length for non delayed
394         conditional branches.
395
396 2010-02-10  Christian Bruel  <christian.bruel@st.com>
397
398         * config/sh/sh.c (find_barrier): Don't emit a CP inside the GP setting.
399
400 2010-02-10  Jakub Jelinek  <jakub@redhat.com>
401
402         * builtins.c (set_builtin_user_assembler_name): Also handle
403         ffs if int is smaller than word.
404
405 2010-02-09  Vladimir Makarov  <vmakarov@redhat.com>
406
407         PR middle-end/42973
408         * ira-conflicts.c (get_dup): Remove.
409         (process_reg_shuffles): Add new parameter.  Use it as an
410         additional guard for copy generation.
411         (add_insn_allocno_copies): Rewrite.
412
413 2010-02-09  Alexander Monakov  <amonakov@ispras.ru>
414
415         * common.opt (fsched2-use-traces): Preserved for backward
416         compatibility.
417         * doc/invoke.texi: Remove the documentation about option
418         -fsched2-use-traces.
419         * sched-rgn.c (rest_of_handle_sched2): Remove usage of
420         flag_sched2_use_traces.
421         * opts.c (common_handle_option): Add OPT_fsched2_use_traces to
422         the backward compatibility flag section.
423
424 2010-02-09  Richard Guenther  <rguenther@suse.de>
425
426         PR tree-optimization/43008
427         * tree-ssa-structalias.c (handle_lhs_call): Pass in the fndecl,
428         make HEAP variables initialized from global memory if they
429         are not known builtin functions.
430         (find_func_aliases): Adjust.
431
432 2010-02-09  Richard Guenther  <rguenther@suse.de>
433
434         PR tree-optimization/43000
435         * tree-vrp.c (vrp_int_const_binop): Only handle unsigned
436         arithmetic manually.
437
438 2010-02-08  Jakub Jelinek  <jakub@redhat.com>
439
440         PR tree-optimization/42931
441         * tree-loop-linear.c (try_interchange_loops): Don't call
442         double_int_mul if estimated_loop_iterations failed.
443
444 2010-02-08  Martin Jambor  <mjambor@suse.cz>
445
446         PR middle-end/42898
447         * tree-sra.c (build_accesses_from_assign): Do not mark in
448         should_scalarize_away_bitmap if stmt has volatile ops.
449         (sra_modify_assign): Do not process assigns piecemeal if if stmt
450         has volatile ops.
451
452 2010-02-08  Joern Rennecke  <joern.rennecke@embecosm.com>
453
454         * doc/tm.texi (TARGET_UNWIND_WORD_MODE): Document.
455
456 2010-02-07  Adam Nemet  <adambnmet@gmail.com>
457
458         * config/mips/mips.md (*<optab>_trunc<mode>_exts): Fix comment
459         before the pattern.
460
461 2010-02-07  Andrew Pinski  <pinskia@gmail.com>
462
463         PR middle-end/42946
464         * df-core.c (df_finish_pass): Change type of saved_flags to int.
465
466 2010-02-07  Sebastian Pop  <sebastian.pop@amd.com>
467
468         PR middle-end/42988
469         * graphite-dependences.c (dependence_polyhedron): Set PDDR_KIND
470         to unknown_dependence.
471         (graphite_legal_transform_dr): Handle the unknown_dependence.
472         (graphite_carried_dependence_level_k): Same.
473
474 2010-02-07  Sebastian Pop  <sebastian.pop@amd.com>
475
476         * ChangeLog.graphite: Remove testsuite/ or gcc/testsuite/.
477
478 2010-02-07  Richard Guenther  <rguenther@suse.de>
479
480         PR middle-end/42991
481         * expr.c (get_inner_reference): Always initialize *pbitsize.
482
483 2010-02-07  Richard Guenther  <rguenther@suse.de>
484
485         PR middle-end/42956
486         * gimplify.c (gimple_fold_indirect_ref): Avoid generating
487         new ARRAY_REFs on variable size element or minimal index arrays.
488         Complete.
489         * tree-ssa-loop-ivopts.c (find_interesting_uses_address): Use
490         gimple_fold_indirect_ref.
491
492 2010-02-06  Richard Earnshaw  <rearnsha@arm.com>
493
494         PR target/42957
495         * arm.c (arm_override_options): Just return if the user has specified
496         an invalid fpu name.
497
498 2010-02-03  Jason Merrill  <jason@redhat.com>
499
500         PR c++/42870
501         * config/i386/cygming.h (ASM_OUTPUT_DEF_FROM_DECLS): Call
502         i386_pe_maybe_record_exported_symbol.
503
504 2010-02-05  Steve Ellcey  <sje@cup.hp.com>
505
506         PR target/42924
507         * config/pa/pa.c (TARGET_DELEGITIMIZE_ADDRESS): Redefine.
508         (pa_delegitimize_address): New function.
509
510 2010-02-05  Ozkan Sezer  <sezeroz@gmail.com>
511
512         * config/i386/msformat-c.c (ms_printf_length_specs): Set the
513         scalar_identity_flag for the size_t/ptrdiff_t %Id and %Iu specs.
514
515 2010-02-05  Richard Guenther  <rguenther@suse.de>
516
517         PR lto/42762
518         * lto-streamer-in.c (get_resolution): Deal with references
519         to undefined functions.
520
521 2010-02-05  Richard Guenther  <rguenther@suse.de>
522
523         * tree-ssa-ccp.c (get_symbol_constant_value): Strip all conversions.
524         (fold_const_aggregate_ref): Likewise.
525         (ccp_fold_stmt): Substitute loads.
526         (maybe_fold_reference): Verify types before substituting.
527         Unshare properly.
528         (fold_gimple_assign): Unshare properly.
529         (fold_stmt_1): Insert conversion if necessary before replacing the RHS.
530
531 2010-02-05  Nathan Froyd  <froydnj@codesourcery.com>
532
533         * config/rs6000/rs6000.c (rs6000_override_options): Invert check
534         for rs6000_gen_cell_microcode.
535
536 2010-02-04  Richard Guenther  <rguenther@suse.de>
537
538         PR rtl-optimization/42952
539         * dse.c (const_or_frame_p): Remove MEM handling.
540
541 2010-02-04  Nick Clifton  <nickc@redhat.com>
542
543         * config/mn10300/mn10300.c (TARGET_ASM_OUTPUT_MI_THUNK): Define.
544         (TARGET_ASM_CAN_OUTPUT_MI_THUNK): Define.
545         (function_arg): Use NULL_RTX and FIRST_ARGUMENT_REGNUM.
546         (mn10300_asm_output_mi_thunk): New function.
547         (mn10300_can_output_mu_thunk): New function.
548         * config/mn10300/mn10300.h (FIRST_ARGUMENT_REGNUM): Define.
549         (FUNCTION_ARG_REGNO_P): Fix comment.  Accept d0 and d1.
550         (FUNCTION_ARG): Delete incorrect comment.
551
552 2010-02-03  Jason Merrill  <jason@redhat.com>
553
554         PR c++/40138
555         * fold-const.c (operand_equal_p): Handle erroneous types.
556
557 2010-02-03  Kaushik Phatak  <kaushik.phatak@kpitcummins.com>
558
559         * config/h8300/h8300.md (can_delay): Fix attibute condition.
560
561 2010-02-03  Vladimir Makarov  <vmakarov@redhat.com>
562
563         PR rtl-optimization/42941
564         * sched-deps.c (setup_insn_reg_pressure_info): Use xcalloc instead
565         of xmalloc.
566
567 2010-02-03  Jason Merrill  <jason@redhat.com>
568
569         PR c++/35652
570         * builtins.c (c_strlen): Use EXPR_LOCATION in diagnostics.
571
572 2010-02-03  Alexandre Oliva  <aoliva@redhat.com>
573
574         PR debug/42896
575         * cselib.h (struct cselib_val_struct): Add uid.  Rename value to
576         hash.
577         (cselib_reset_table): Renamed from...
578         (cselib_reset_table_with_next_value): ... this.
579         (cselib_get_next_uid): Renamed from...
580         (cselib_get_next_unknown_value): ... this.
581         * cselib.c (next_uid): Renamed from...
582         (next_unknown_value): ... this.
583         (cselib_clear_table): Adjust.
584         (cselib_reset_table): Adjust.  Renamed from...
585         (cselib_reset_table_with_next_value): ... this.
586         (cselib_get_next_uid): Adjust.  Renamed from...
587         (cselib_get_next_unknown_value): ... this.
588         (get_value_hash): Use hash.
589         (cselib_hash_rtx): Likewise.
590         (new_cselib_val): Adjust.  Set and dump uid.
591         (cselib_lookup_mem): Pass next_uid as hash.
592         (cselib_subst_to_values): Likewise.
593         (cselib_log_lookup): Dump uid.
594         (cselib_lookup): Pass next_uid as hash.  Adjust.
595         (cselib_process_insn): Adjust.
596         (cselib_init): Initialize next_uid.
597         (cselib_finish): Adjust.
598         (dump_cselib_table): Likewise.
599         * dse.c (canon_address): Dump value uid.
600         * print-rtl.c (print_rtx): Print value uid.
601         * var-tracking.c (VARIABLE_HASH_VAL): Dropped.
602         (dvuid): New type.
603         (dv_uid): New function, sort of renamed from...
604         (dv_htab_hash): ... this, reimplemented in terms of it and...
605         (dv_uid2hash): ... this.  New.
606         (variable_htab_eq): Drop excess assertions.
607         (tie_break_pointers): Removed.
608         (canon_value_cmp): Compare uids.
609         (variable_post_merge_New_vals): Print uids.
610         (vt_add_function_parameters): Adjust.
611         (vt_initialize): Reset table.  Adjust.
612
613 2010-02-03  Richard Guenther  <rguenther@suse.de>
614
615         PR tree-optimization/42944
616         * tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Handle calloc.
617         (call_may_clobber_ref_p_1): Likewise.  Properly handle
618         malloc and calloc clobbering errno.
619
620 2010-02-03  Steven Bosscher  <steven@gcc.gnu.org>
621
622         * doc/invoke.texi: Fix name of sched1 dump.
623
624         * opts.c (decode_options): Set flag_tree_switch_conversion
625         only conditionally on optimize >= 2.
626
627         * gcse.c: Assorted comment fixes in pass description.
628
629 2010-02-03  Anthony Green  <green@moxielogic.com>
630
631         * config/moxie/moxie.c (moxie_asm_trampoline_template): Introduce
632         nop padding in order to maintain alignment of storage location of
633         target function address.
634         (moxie_trampoline_init): Store target function address at newly
635         aligned location.
636         * config/moxie/moxie.h (TRAMPOLINE_ALIGNMENT): Increase alignment
637         to 32.
638         (TRAMPOLINE_SIZE): Increase size by 2 bytes for alignment padding.
639
640 2010-02-03  Richard Guenther  <rguenther@suse.de>
641
642         PR middle-end/42927
643         * tree-cfg.c (verify_gimple_assign_binary): Fix shift verification.
644
645 2010-02-03  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
646
647         * config.gcc: Reenable check for obsolete targets.
648         Obsolete alpha*-dec-osf4*, alpha*-dec-osf5.0*, mips-sgi-irix5*,
649         mips-sgi-irix6.[0-4]*.
650
651 2010-02-02  Nick Clifton  <nickc@redhat.com>
652
653         * config/rx/rx.c (rx_is_legitimate_constant): Treat a maximum
654         constant size of 4 as being the same as 0.
655         * doc/invoke.texi (RX Options): Document that -mmax-constant-size
656         can take values in the range 0..4.
657
658 2010-02-02  Jack Howarth  <howarth@bromo.med.uc.edu>
659
660         PR java/41991
661         * unwind-dw2-fde-darwin.c: Re-export _Unwind_FindEnclosingFunction()
662         as _darwin10_Unwind_FindEnclosingFunction().
663         * libgcc-libsystem.ver: New.
664
665 2010-02-01  Vladimir Makarov  <vmakarov@redhat.com>
666
667         PR target/41399
668         * sched-deps.c (sched_analyze_insn): Ignore fixed registers for
669         implicitly set registers.
670
671 2010-02-01  Richard Earnshaw  <rearnsha@arm.com>
672
673         * arm.c (FL_FOR_ARCH_7A): is also a superset of ARMv6K.
674         (arm_override_options): Allow automatic selection of the thread
675         pointer register if thumb2.
676         (legitimize_pic_address): Improve code sequences for Thumb2.
677         (arm_call_tls_get_addr): Likewise.
678         (legitimize_tls_address): Likewise.
679         * arm.md (pic_load_addr_arm): Delete.  Replace with ...
680         (pic_load_addr_32bit): ... this.  New named pattern.
681         * thumb2.md (pic_load_addr_thumb2): Delete.
682         (pic_load_dot_plus_four): Delete.
683         (tls_load_dot_plus_four): New named pattern.
684
685 2010-02-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
686
687         PR libgomp/29986
688         * doc/install.texi (Specific): Add sparc-sun-solaris2.10 entry.
689         Document fix for TLS bug.
690
691 2010-01-31  Richard Guenther  <rguenther@suse.de>
692
693         * tree-sra.c (ptr_parm_has_direct_uses): Rewrite to be
694         conservatively correct.
695
696 2010-01-31  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
697
698         PR target/42850
699         Revert:
700         2010-01-02  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
701
702         * config/pa/t-slibgcc-dwarf-ver (SHLIB_SOVERSION): Bump by two.
703
704 2010-01-31  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
705
706         * doc/install.texi: Update recommended GMP/MPFR/MPC versions.
707
708 2010-01-31  Kai Tietz  <kai.tietz@onevision.com>
709
710         * config.gcc: Adjust order of makefile fragments for mingw targets.
711
712 2010-01-31  Richard Guenther  <rguenther@suse.de>
713
714         PR middle-end/42898
715         * gimplify.c (gimplify_init_constructor): For volatile LHS
716         initialize a temporary.
717
718 2010-01-31  Matthias Klose  <doko@ubuntu.com>
719
720         * configure.ac: Fix __stack_chk_fail check for cross builds configured
721         --with-headers
722         * configure: Regenerate.
723
724 2010-01-29  Eric Botcazou  <ebotcazou@adacore.com>
725
726         * tree-ssa-alias.c (same_type_for_tbaa): Return -1 if the types have
727         the same alias set and their sizes different constantness.
728         (aliasing_component_refs_p): Revert 2009-10-24 change.
729
730 2010-01-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
731
732         * config/sparc/sparc.c (sparc_elf_asm_named_section): Declare decl
733         unused.
734
735 2010-01-29  Richard Guenther  <rguenther@suse.de>
736
737         * tree-ssa-ccp.c (ccp_fold_stmt): Unshare values we substitute.
738         Assert we successfully updated the call.
739
740 2010-01-29  Jakub Jelinek  <jakub@redhat.com>
741
742         PR rtl-optimization/42889
743         * df.h (df_set_bb_dirty_nonlr): New prototype.
744         * df-core.c (df_set_bb_dirty_nonlr): New function.
745         * df-scan.c (df_insn_rescan): Call it instead of
746         df_set_bb_dirty for DEBUG_INSNs.
747
748 2010-01-29  Richard Guenther  <rguenther@suse.de>
749
750         PR middle-end/37448
751         * ipa-inline.c (cgraph_decide_inlining_incrementally): Avoid
752         quadratic behavior in most cases.
753
754 2010-01-28  Uros Bizjak  <ubizjak@gmail.com>
755
756         PR target/42891
757         * config/i386/i386.c (ix86_expand_int_movcc): Convert tmp to SImode
758         in the call to gen_x86_movsicc_0_m1.
759
760 2010-01-28  Richard Guenther  <rguenther@suse.de>
761
762         PR tree-optimization/42871
763         * tree-ssa-pre.c (phi_translate_set): Make sure to retain leaders.
764
765 2010-01-28  Richard Guenther  <rguenther@suse.de>
766
767         * tree-ssa-ccp.c (ccp_fold_stmt): Fold calls and propagate
768         into call arguments.
769
770 2010-01-28  Richard Guenther  <rguenther@suse.de>
771
772         PR middle-end/42883
773         * tree-cfgcleanup.c (remove_forwarder_block): Do not remove
774         the forwarder if the destination is an EH landing pad.
775
776 2010-01-28  Razya Ladelsky  <razya@il.ibm.com>
777
778         * tree-parloops.c (transform_to_exit_first_loop): Update the basic
779         block list passed to gimple_duplicate_sese_tail.
780         (parallelize_loops): Avoid parallelization when the function
781         has_nonlocal_label.
782         Avoid parallelization when the preheader is IRREDUCIBLE.
783         Try to optimize when estimated_loop_iterations_int is unresolved.
784         Add the loop's location to the dump file.
785         * tree-cfg.c (add_phi_args_after_redirect): Remove.
786         (gimple_duplicate_sese_tail): Remove the check for the latch.
787         Redirect nexits to the exit block.
788         Remove handling of the incoming edges to the latch.
789         Redirect the backedge from the copied latch to the exit bb.
790
791 2010-01-28  Michael Matz  <matz@suse.de>
792
793         PR target/42881
794         * config/i386/i386.c (ix86_expand_vector_init_duplicate):
795         Wrap force_reg into a sequence, emit it before user.
796
797 2010-01-28  Stephen Thomas  <stephen.thomas@arm.com>
798
799         * config/arm/arm.md (bswapsi2): Add support for bswapsi2.
800         (arm_rev): New.
801         (arm_legacy_rev): Likewise.
802         (thumb_legacy_rev): Likewise.
803
804 2010-01-27  Jakub Jelinek  <jakub@redhat.com>
805
806         * dwarf2out.c (mem_loc_descriptor): Remove special casing of
807         CONSTANT_POOL_ADDRESS_P SYMBOL_REFs.  If for MEM recursive call
808         on MEM's address failed, try avoid_constant_pool_reference and
809         recurse if it returned something different.
810         (loc_descriptor): If for MEM mem_loc_descriptor failed on the
811         address, try avoid_constant_pool_reference and recurse if it
812         returned something different.
813         (dw_loc_list_1): If for MEM mem_loc_descriptor failed on the
814         address and avoid_constant_pool_reference returned something
815         different, don't set have_address.
816
817 2010-01-27  Alexandre Oliva  <aoliva@redhat.com>
818
819         PR debug/42861
820         * var-tracking.c (val_store): Add modified argument, obey it.
821         Adjust callers.
822         (count_uses): Move down logging of main.
823         (compute_bb_dataflow): Use val_store for MO_VAL_USEs that
824         don't need resolution.
825         (emit_notes_in_bb): Likewise.
826
827 2010-01-27  Richard Guenther  <rguenther@suse.de>
828
829         PR middle-end/42878
830         * tree-inline.c (remap_decl): Delay remapping of SSA name
831         default definitions until we need them.
832
833 2010-01-27  Jakub Jelinek  <jakub@redhat.com>
834
835         * config/rs6000/rs6000.c (TARGET_DELEGITIMIZE_ADDRESS): Redefine.
836         (rs6000_delegitimize_address): New function.
837
838         * config/s390/s390.c (s390_delegitimize_address): Call
839         delegitimize_mem_from_attrs.
840
841         PR middle-end/42874
842         * tree-inline.c (cannot_copy_type_1): Removed.
843         (copy_forbidden): Don't forbid copying of functions containing
844         records/unions with variable length fields.
845
846 2010-01-27  Christian Bruel  <christian.bruel@st.com>
847
848         Revert:
849         PR target/42841
850         * config/sh/sh.c (find_barrier): Increase length for non delayed
851         conditional branches.
852
853 2010-01-27  Matthias Klose  <doko@ubuntu.com>
854
855         * configure.ac (gnu-unique-object): Fix ldd version check.
856         * configure: Regenerate.
857
858 2010-01-26  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
859
860         * config/sparc/sparc.c (sparc_elf_asm_named_section): Test for
861         HAVE_GNU_AS value.
862         * config/sparc/sysv4.h [HAVE_GNU_AS] (TARGET_ASM_NAMED_SECTION):
863         Test for HAVE_GNU_AS value.
864
865 2010-01-26  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
866
867         * config.gcc (mips-sgi-irix[56]*): Set use_gcc_stdint.
868         * config/mips/iris.h (INT8_TYPE, INT16_TYPE, INT32_TYPE,
869         INT64_TYPE): Define.
870         (UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE): Define.
871         (INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE,
872         INT_LEAST64_TYPE): Define.
873         (UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE,
874         UINT_LEAST64_TYPE): Define.
875         (INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE)
876         INT_FAST64_TYPE): Define.
877         (UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE,
878         UINT_FAST64_TYPE): Define.
879         (INTMAX_TYPE, UINTMAX_TYPE): Define.
880         (INTPTR_TYPE, UINTPTR_TYPE): Define.
881         (SIG_ATOMIC_TYPE): Define.
882
883 2010-01-26  Richard Guenther  <rguenther@suse.de>
884
885         * df-scan.c (df_scan_set_bb_info): Remove assert.
886         (df_insn_rescan_debug_internal): Merge asserts.
887         (df_install_ref): Likewise.
888         (df_mark_reg): Use bitmap_set_range.
889         (df_hard_reg_used_p): Remove assert.
890         (df_hard_reg_used_count): Likewise.
891
892 2010-01-26  Richard Guenther  <rguenther@suse.de>
893
894         PR rtl-optimization/42685
895         * web.c (web_main): Ignore DEBUG_INSNs.
896
897 2010-01-26  Joern Rennecke  <amylaar@spamcop.net>
898
899         * doc/tm.texi (TARGET_HANDLE_C_OPTION): Explain arguments.
900
901         (TARGET_RESOLVE_OVERLOADED_BUILTIN): Add loc parameter.
902         Fix types of fndecl and arglist parameters.
903
904 2010-01-26  Richard Guenther  <rguenther@suse.de>
905
906         PR middle-end/42806
907         * tree-eh.c (unsplit_eh): Skip debug insns.
908
909 2010-01-26  Richard Guenther  <rguenther@suse.de>
910
911         PR tree-optimization/42250
912         * ipa-type-escape.c (type_escape_execute): Do not analyze clones.
913
914 2010-01-26  Jakub Jelinek  <jakub@redhat.com>
915
916         PR fortran/42866
917         * omp-low.c (expand_omp_sections): Only use single_pred if
918         l2_bb is single_pred_p.
919
920 2010-01-25  Christian Bruel  <christian.bruel@st.com>
921
922         PR target/42841
923         * config/sh/sh.c (find_barrier): Increase length for non delayed
924         conditional branches.
925         (sh_insn_length_adjustment): Use JUMP_TABLE_DATA_P.
926
927 2010-01-24  David S. Miller  <davem@davemloft.net>
928
929         * config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Only
930         define if not using GAS.
931         * config/sparc/sparc.c (sparc_elf_asm_named_section):
932         Likewise.  Delete SECTION_MERGE code, which is only applicable
933         when using GAS.
934
935 2010-01-24  Mark Mitchell  <mark@codesourcery.com>
936
937         PR c++/42748
938         * config/arm/arm.c (arm_mangle_type): Do not warn about changes to
939         mangling of va_list in system headers.
940
941 2010-01-23  Toon Moene  <toon@moene.org>
942
943         * tree-predcom.c (combine_chains): Return NULL, not false.
944
945 2010-01-23  Joern Rennecke  <amylaar@spamcop.net>
946
947         * tree-loop-distribution.c (distribute_loop): Fix declaration and
948         initialization of variable res to agree with return type.
949
950 2010-01-22  Steve Ellcey  <sje@cup.hp.com>
951
952         * Makefile.in (tree-sra.o): Add $(EXPR_H) dependency.
953         * tree-sra.c: Add include of expr.h.
954
955 2010-01-22  Jakub Jelinek  <jakub@redhat.com>
956
957         * tree-into-ssa.c (maybe_register_def): If stmt ends the bb,
958         insert the debug stmt on the single non-EH edge from the stmt.
959
960 2010-01-22  Richard Henderson  <rth@redhat.com>
961
962         PR tree-opt/42833
963         * tree-sra.c (sra_modify_assign): Delay re-gimplification of
964         the RHS until after generate_subtree_copies has insertted its
965         code before the current statement.
966
967 2010-01-22  Joern Rennecke  <amylaar@spamcop.net>
968
969         * doc/tm.texi (TARGET_MIN_DIVISIONS_FOR_RECIP_MUL): Fix return type.
970
971         * gcc-plugin.h (plugin_init): Use "C" likage for c++.
972
973 2010-01-21  Martin Jambor  <mjambor@suse.cz>
974
975         PR tree-optimization/42585
976         * tree-sra.c (struct access): New field grp_total_scalarization.
977         (dump_access): Dump the new field.
978         (should_scalarize_away_bitmap): New variable.
979         (cannot_scalarize_away_bitmap): Likewise.
980         (sra_initialize): Allocate new bitmaps.
981         (sra_deinitialize): Free new bitmaps.
982         (create_access_1): New function.
983         (create_access): Parts moved to create_access_1.
984         (type_consists_of_records_p): New function.
985         (completely_scalarize_record): Likewise.
986         (build_access_from_expr): Set bit in cannot_scalarize_away_bitmap.
987         (build_accesses_from_assign): Set bits in should_scalarize_away_bitmap.
988         (sort_and_splice_var_accesses): Hint groups with a total_scalarization
989         access.
990         (analyze_all_variable_accesses): Completely scalarize small eligible
991         records.
992
993 2010-01-21  Martin Jambor  <mjambor@suse.cz>
994
995         * tree-sra.c (build_ref_for_offset_1): Allow for zero size fields.
996
997 2010-01-21  Andrew Haley  <aph@redhat.com>
998
999         * gcc.c (process_command): Move lang_specific_driver before
1000         setting cc_libexec_prefix.
1001
1002 2010-01-21  Richard Guenther  <rguenther@suse.de>
1003
1004         PR middle-end/19988
1005         * fold-const.c (negate_expr_p): Pretend only negative
1006         real constants are easily negatable.
1007
1008 2010-01-20  Janis Johnson  <janis187@us.ibm.com>
1009             Jason Merrill  <jason@redhat.com>
1010
1011         * tree.h (TYPE_TRANSPARENT_UNION): Replace with ...
1012         (TYPE_TRANSPARENT_AGGR): this, for union and record.
1013         * calls.c (initialize argument_information): Handle it.
1014         * c-common.c (handle_transparent_union_attribute): Use new name.
1015         * c-decl.c (finish_struct): Ditto.
1016         * c-typeck.c (type_lists_compatible_p): Ditto.
1017         (convert_for_assignment): Use new name and also handle record.
1018         * function.c (aggregate_value_p): Handle it.
1019         (pass_by_reference): Ditto.
1020         (assign_parm_data_types): Ditto.
1021         * print-tree.c (print_node): Ditto.
1022         * lto-streamer-in.c (unpack_ts_type_value_fields): Ditto.
1023         * lto-streamer-out.c (pack_ts_type_value_fields): Ditto.
1024         * tree.c (first_field): New fn.
1025
1026 2010-01-21  Dave Korn  <dave.korn.cygwin@gmail.com>
1027
1028         PR target/42818
1029         * config/i386/cygwin.h (CXX_WRAP_SPEC_LIST): Always apply wrappers,
1030         even when linking statically, for now.
1031
1032 2010-01-20  Alexandre Oliva  <aoliva@redhat.com>
1033
1034         PR debug/42715
1035         * var-tracking.c (use_type): Choose MO_VAL_SET for REGs set
1036         without a cselib val.
1037         (count_uses): Accept MO_VAL_SET with no val on stores.
1038         (add_stores): Likewise.
1039
1040 2010-01-20  Jakub Jelinek  <jakub@redhat.com>
1041
1042         * var-tracking.c (check_value_val): Add a compile time assertion.
1043         (dv_is_decl_p): Simplify.
1044         (dv_as_decl, dv_as_value, dv_from_decl, dv_from_value): Only use
1045         gcc_assert if ENABLE_CHECKING.
1046
1047 2010-01-20  Alexandre Oliva  <aoliva@redhat.com>
1048
1049         PR debug/42782
1050         * var-tracking.c: Include tree-flow.h.
1051         (mem_dies_at_call): New.
1052         (dataflow_set_preserve_mem_locs): Use it.
1053         (dataflow_set_remove_mem_locs): Likewise.
1054         (dump_var): Renamed from dump_variable.  Adjust all callers.
1055         (dump_var_slot): Renamed from dump_variable_slot.  Likewise.
1056         * Makefile.in (var-tracking.o): Adjust deps.
1057
1058 2010-01-20  Joern Rennecke  <amylaar@spamcop.net>
1059
1060         * doc/tm.texi (TARGET_SCHED_SET_SCHED_FLAGS): Fix argument list.
1061
1062 2010-01-20  Richard Guenther  <rguenther@suse.de>
1063
1064         PR tree-optimization/42717
1065         * tree-ssa-dce.c (get_live_post_dom): Remove.
1066         (forward_edge_to_pdom): Take an arbitrary edge to copy
1067         degenerate PHI args from.
1068         (remove_dead_stmt): Use the first post-dominator even if it
1069         does not contain live statements as redirection destination.
1070
1071 2010-01-20  Richard Guenther  <rguenther@suse.de>
1072
1073         * tree-inline.c (estimate_num_insns): Handle EH builtins.
1074
1075 2010-01-20  Jakub Jelinek  <jakub@redhat.com>
1076
1077         * sel-sched.c (create_speculation_check): Remove set but not used
1078         variable twin.
1079         (try_transformation_cache): Remove set but not used variable ds.
1080         (calculate_privileged_insns): Remove set but not used variables
1081         cur_insn and min_spec_insn.
1082         (find_best_expr): Remove set but not used variable avail_n.
1083         * tree-predcom.c (base_names_in_chain_on): Remove set but not used
1084         variable e.
1085         * cgraphunit.c (assemble_thunk): Remove set but not used variable
1086         false_label.
1087         * haifa-sched.c (remove_notes): Remove set but not used variable prev.
1088         * graphite-clast-to-gimple.c (gloog): Remove set but not used variable
1089         new_scop_exit_edge.
1090
1091 2010-01-20  Felyza Wishbringer  <fwishbringer@gmail.com>
1092
1093         PR bootstrap/42786
1094         * config.gcc (i[34567]86-*-*): Fix handling of athlon64 and athlon-fx
1095         cpu types.  Add support for *-sse3 cpu types.
1096         (x86_64-*-*): Ditto.
1097
1098 2010-01-20  Jakub Jelinek  <jakub@redhat.com>
1099
1100         PR middle-end/42803
1101         * varasm.c (narrowing_initializer_constant_valid_p): Add CACHE
1102         argument, call initializer_constant_valid_p_1 instead of
1103         initializer_constant_valid_p, pass CACHE to it, return NULL
1104         immediately if first call returns NULL.
1105         (initializer_constant_valid_p_1): New function.
1106         (initializer_constant_valid_p): Use it.
1107
1108 2010-01-20  Thomas Quinot  <quinot@adacore.com>
1109
1110         * tree.def (PLACEHOLDER_EXPR): Fix comment.
1111
1112 2010-01-20  Jakub Jelinek  <jakub@redhat.com>
1113
1114         * dwarf2out.c (mem_loc_descriptor): Use DW_OP_mod for UMOD instead
1115         of MOD, handle MOD using DW_OP_{over,over,div,mul,minus}.
1116         (loc_list_from_tree): Don't handle unsigned division.  Handle
1117         signed modulo using DW_OP_{over,over,div,mul,minus}.
1118         * unwind-dw2.c (execute_stack_op): Handle DW_OP_mod using unsigned
1119         modulo instead of signed.
1120
1121 2010-01-20  DJ Delorie  <dj@redhat.com>
1122
1123         * config/h8300/h8300.c (F): Add "in_epilogue" flag.
1124         (Fpa): Pass it
1125         (h8300_emit_stack_adjustment): Propogate it.
1126         (push): Pass it.
1127         (h8300_expand_prologue): Likewise.
1128         (h8300_expand_epilogue): Likewise.
1129
1130 2010-01-19  Michael Matz  <matz@suse.de>
1131
1132         PR tree-optimization/41783
1133         * tree-data-ref.c (toplevel): Include flags.h.
1134         (dump_data_dependence_relation):  Also dump the inputs if the
1135         result will be unknown.
1136         (split_constant_offset_1): Look through some conversions.
1137         * tree-predcom.c (determine_roots_comp): Restart a new chain if
1138         the offset from last element is too large.
1139         (ref_at_iteration): Deal also with MISALIGNED_INDIRECT_REF.
1140         (reassociate_to_the_same_stmt): Handle vector registers.
1141         * tree-vect-data-refs.c (vect_equal_offsets): Handle unary operations
1142         (e.g. conversions).
1143         * tree-vect-loop-manip.c (vect_gen_niters_for_prolog_loop): Add
1144         wide_prolog_niters argument, emit widening instructions.
1145         (vect_do_peeling_for_alignment): Adjust caller, use widened
1146         variant of the iteration cound.
1147         * Makefile.in (tree-data-ref.o): Add $(FLAGS_H).
1148
1149 2010-01-19  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
1150
1151         PR target/38697
1152         * config/arm/neon-testgen.m (emit_automatics): New parameter
1153         features. Adjust for Fixed_return_reg feature.
1154         (test_intrinsic): Call emit_automatics with new feature.
1155         * config/arm/neon.ml: Update copyright years.
1156         (features): New Fixed_return_reg feature.
1157         (ops): Update feature for Vget_low.
1158
1159 2010-01-19  Jakub Jelinek  <jakub@redhat.com>
1160
1161         PR tree-optimization/42719
1162         * tree-outof-ssa.c (trivially_conflicts_p): Don't consider debug
1163         stmt uses.
1164
1165         PR debug/42728
1166         * fwprop.c (all_uses_available_at): Return false if def_set dest
1167         is a REG that is used in def_insn.
1168
1169 2010-01-19  Joern Rennecke  <amylaar@spamcop.net>
1170
1171         * doc/tm.texi (TARGET_FIXED_CONDITION_CODE_REGS): Add argument names.
1172
1173         (TARGET_CC_MODES_COMPATIBLE): Put return value in braces.
1174         Add argument names.
1175
1176         (TARGET_SCHED_INIT_SCHED_CONTEXT): Clarify language.
1177
1178         * target.h (struct gcc_target) <secondary_reload>: Change type
1179         of last argument to secondary_reload_info *.
1180
1181 2010-01-18  Uros Bizjak  <ubizjak@gmail.com>
1182
1183         PR target/42774
1184         * config/alpha/predicates.md (aligned_memory_operand): Return 0 for
1185         memory references with unaligned offsets.  Remove CQImode handling.
1186         (unaligned_memory_operand): Return 1 for memory references with
1187         unaligned offsets.  Remove CQImode handling.
1188
1189 2010-01-18  Richard Guenther  <rguenther@suse.de>
1190
1191         PR middle-end/39954
1192         * cfgexpand.c (expand_call_stmt): TER pointer arguments in
1193         builtin calls.
1194
1195 2010-01-18  Richard Guenther  <rguenther@suse.de>
1196
1197         PR tree-optimization/42781
1198         * tree-ssa-structalias.c (find_what_var_points_to): Skip
1199         restrict processing only if the original variable was artificial.
1200
1201 2010-01-18  Joern Rennecke  <amylaar@spamcop.net>
1202
1203         * doc/tm.texi (TARGET_ASM_FUNCTION_EPILOGUE): Update text on where to
1204         find number of popped argument bytes.
1205
1206         (TARGET_INVALID_WITHIN_DOLOOP): Put return value in braces.
1207         Fix the text that describes the return value for invalid insns.
1208
1209         (TARGET_SCHED_NEEDS_BLOCK_P): Fix return type.  Fix argument list.
1210
1211         (TARGET_SCHED_IS_COSTLY_DEPENDENCE): Fix argument types.
1212         Clarify what 'cost of the -dependence' is.  Fix quoting.
1213
1214         * toplev.c (default_get_pch_validity): Rename argument to "sz".
1215         * doc/tm.texi (TARGET_GET_PCH_VALIDITY): Likewise.
1216
1217 2010-01-17  Jakub Jelinek  <jakub@redhat.com>
1218
1219         * dwarf2out.c (mem_loc_descriptor): Don't ICE on
1220         {S,U}S_{PLUS,MINUS,NEG,ABS,ASHIFT}.
1221
1222 2010-01-17  Richard Guenther  <rguenther@suse.de>
1223
1224         PR middle-end/42248
1225         * function.c (split_complex_args): Take a VEC to modify.
1226         (assign_parms_augmented_arg_list): Build a VEC instead of
1227         a chain of PARM_DECLs.
1228         (assign_parms_unsplit_complex): Take a VEC of arguments.
1229         Do not fixup unmodified parms.
1230         (assign_parms): Deal with the VEC.
1231         (gimplify_parameters): Likewise.
1232
1233 2010-01-17  Richard Guenther  <rguenther@suse.de>
1234
1235         * tree-ssa-uncprop.c (uncprop_into_successor_phis): Fix PHI
1236         node existence check.
1237         * tree-vect-loop.c (vect_analyze_loop_form): Likewise.
1238         * tree-cfgcleanup.c (merge_phi_nodes): Likewise.
1239         * tree-ssa-dce.c (forward_edge_to_pdom): Likewise.
1240         * tree-cfg.c (gimple_execute_on_growing_pred): Likewise.
1241         (gimple_execute_on_growing_pred): Likewise.
1242
1243 2010-01-17  Richard Guenther  <rguenther@suse.de>
1244
1245         PR tree-optimization/42773
1246         * tree-ssa-pre.c (phi_translate_set): Fix check for PHI node existence.
1247         (compute_antic_aux): Likewise.
1248         (compute_partial_antic_aux): Likewise.
1249
1250 2010-01-17  Jie Zhang  <jie.zhang@analog.com>
1251
1252         PR debug/42767
1253         * dwarf2out.c (mem_loc_descriptor): Handle SS_TRUNCATE
1254         and US_TRUNCATE.
1255
1256 2010-01-17  Joern Rennecke  <amylaar@spamcop.net>
1257
1258         * doc/tm.texi (TARGET_INIT_LIBFUNCS): Put @findex entries in order of
1259         appearance.
1260
1261         (TARGET_LEGITIMATE_ADDRESS_P): Add return type.
1262         Fix markup for strict argument.
1263
1264         (TARGET_SCHED_REORDER2): Fix argument types.
1265
1266         (TARGET_SCHED_DFA_PRE_CYCLE_INSN): Fix return type.
1267         (TARGET_SCHED_DFA_POST_CYCLE_INSN): Likewise.
1268
1269         (TARGET_SCHED_DFA_PRE_ADVANCE_CYCLE): Fix name.
1270         (TARGET_SCHED_DFA_POST_ADVANCE_CYCLE): Likewise.
1271
1272         (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD):
1273         Add argument name.
1274
1275         (TARGET_SCHED_ALLOC_SCHED_CONTEXT): Remove duplicate documentation.
1276         (TARGET_SCHED_INIT_SCHED_CONTEXT): Likewise.
1277         (TARGET_SCHED_SET_SCHED_CONTEXT): Likewise.
1278         (TARGET_SCHED_CLEAR_SCHED_CONTEXT): Likewise.
1279         (TARGET_SCHED_FREE_SCHED_CONTEXT): Likewise.
1280
1281         (TARGET_SCHED_SET_SCHED_CONTEXT): Fix typo.
1282
1283         (TARGET_SCHED_GEN_SPEC_CHECK): Fix name.
1284
1285         (TARGET_ASM_RELOC_RW_MASK): Add return type.
1286         (TARGET_MANGLE_DECL_ASSEMBLER_NAME): Fix return type.
1287
1288         (TARGET_STRIP_NAME_ENCODING): Fix markup of return type and parameter.
1289
1290         (TARGET_ASM_FILE_START): Put @findex before paragraph start.
1291         Use prototype.
1292
1293         (TARGET_ASM_NAMED_SECTION): Fix argument list.
1294
1295         (TARGET_HAVE_NAMED_SECTIONS): Use @deftypevr.
1296         (TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): Likewise.
1297
1298         (TARGET_ASM_RECORD_GCC_SWITCHES_SECTION): Use @deftypevr.
1299
1300         (TARGET_ASM_ASSEMBLE_VISIBILITY): Fix argument types.
1301
1302         (TARGET_ASM_MARK_DECL_PRESERVED): Fix argument and markup
1303         referring to it.  Fix language.
1304
1305         (TARGET_HAVE_CTORS_DTORS): Use @deftypevr.
1306
1307         (TARGET_ASM_FINAL_POSTSCAN_INSN): Adjust name of first argument.
1308
1309         (TARGET_ASM_EMIT_UNWIND_LABEL): Add argument types.
1310
1311         (TARGET_ASM_EMIT_EXCEPT_TABLE_LABEL): Add type to argument.
1312
1313         (TARGET_UNWIND_EMIT): Remove space between 'FILE *' and
1314         '@var{stream}.  Remove stray 'and'.
1315
1316         (TARGET_ARM_EABI_UNWINDER): Use @deftypevr.
1317
1318         (TARGET_ASM_OUTPUT_DWARF_DTPREL): Adjust name of first argument.
1319
1320         (TARGET_SET_DEFAULT_TYPE_ATTRIBUTES): Add missing article.
1321
1322         (TARGET_OPTION_VALID_ATTRIBUTE_P): Fix name, it was
1323         misspelled as TARGET_VALID_OPTION_ATTRIBUTE_P.
1324
1325         (TARGET_GET_PCH_VALIDITY): Put 'void *' in braces.
1326         Fix description of return value.
1327         Rename argument "sz" to "len."
1328
1329         (TARGET_CXX_GUARD_MASK_BIT): Add missing article.
1330         Clarify meaning of 'true' return value.
1331
1332         (TARGET_SHIFT_TRUNCATION_MASK): Fix return type.
1333
1334         (TARGET_MODE_REP_EXTENDED): Fix two inconsisent uses of
1335         rep_mode versus mode_rep.
1336
1337         (TARGET_HANDLE_PRAGMA_EXTERN_PREFIX): Document.
1338
1339         (TARGET_BUILTIN_DECL): Fix name.
1340
1341         (TARGET_COMMUTATIVE_P): Fix type of first argument.
1342
1343         (TARGET_SET_CURRENT_FUNCTION): Mention possibility of cfun being NULL.
1344
1345         (TARGET_BRANCH_TARGET_REGISTER_CLASS): Fix return type.
1346
1347         (TARGET_USE_LOCAL_THUNK_ALIAS_P): Document as macro instead of hook.
1348
1349         (TARGET_RELAXED_ORDERING): Use @deftypevr.
1350
1351         (TARGET_GET_DRAP_RTX): Note that this is a hook.
1352         Clarify language.
1353
1354         (TARGET_BUILTIN_RECIPROCAL): Fix argument types.
1355         Rename argument tm_fn to md_fn.
1356
1357         (TARGET_OPTION_PRINT): Fix argument list.
1358
1359 2010-01-16  Harsha Jagasia  <harsha.jagasia@amd.com>
1360
1361         PR target/42664
1362         * config/i386/i386.c (ix86_fixup_binary_operands):
1363         Revert FMA4 fixup of operands.
1364
1365 2010-01-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1366
1367         PR gcc/42525
1368         * Makefile.in (write_entries_to_file, install-plugin):
1369         Use \012 instead of \n with tr.
1370
1371 2010-01-16  Richard Sandiford  <r.sandiford@uk.ibm.com>
1372
1373         * configure.ac (HAVE_AS_REF): New C macro.
1374         * configure: Regenerate.
1375         * config.in: Likewise.
1376         * collect2.c (main): Only postpone SCAN_DWEH to the second pass
1377         if HAVE_AS_REF.
1378         * config/rs6000/aix.h (ASM_OUTPUT_DWARF_TABLE_REF): Only define
1379         if HAVE_AS_REF.
1380
1381 2010-01-16  Joern Rennecke  <amylaar@spamcop.net>
1382
1383         * doc/tm.texi (TARGET_USE_BLOCKS_FOR_CONSTANT_P): Fix argument types.
1384
1385         (TARGET_SUPPORT_VECTOR_MISALIGNMENT): Fix argument types.
1386
1387         (TARGET_USE_ANCHORS_FOR_SYMBOL_P): Fix argument types.
1388
1389         (TARGET_SCHED_ALLOC_SCHED_CONTEXT): Put 'void *' in braces.
1390
1391         (TARGET_IN_SMALL_DATA_P): Fix argument type.
1392
1393         (TARGET_BINDS_LOCAL_P): Fix argument type.
1394
1395         (TARGET_ASM_FILE_END): Use prototype.
1396
1397         (TARGET_ASM_RECORD_GCC_SWITCHES): Don't put 'int' in braces.
1398
1399         (TARGET_DWARF_CALLING_CONVENTION): Fix argument type.
1400
1401         (TARGET_COMP_TYPE_ATTRIBUTES): Fix argument types.
1402
1403         (TARGET_VALID_DLLIMPORT_ATTRIBUTE_P): Fix argument type.
1404
1405         (TARGET_EMUTLS_VAR_ALIGN_FIXED): Don't put 'bool' in braces.
1406         (TARGET_EMUTLS_DEBUG_FORM_TLS_ADDRESS): Likewise.
1407
1408         (TARGET_PCH_VALID_P): Put 'const char *' in braces.
1409         (TARGET_CHECK_PCH_TARGET_FLAGS): Likewise.
1410
1411         (TARGET_ADDR_SPACE_LEGITIMATE_ADDRESS_P): Don't put 'bool' in braces.
1412         (TARGET_ADDR_SPACE_SUBSET_P): Likewise.
1413         (TARGET_ADDR_SPACE_LEGITIMIZE_ADDRESS): Don't put 'rtx' in braces.
1414         (TARGET_ADDR_SPACE_CONVERT): Likewise.
1415
1416         (TARGET_CASE_VALUES_THRESHOLD): Put 'unsigned int' in braces.
1417
1418         (TARGET_MACHINE_DEPENDENT_REORG: Use prototype.
1419
1420         (TARGET_INIT_BUILTINS): Use prototype.
1421
1422         (TARGET_INVALID_ARG_FOR_UNPROTOTYPED_FN):
1423         Put 'const char *' in braces.  Fix parameter types.
1424         (TARGET_INVALID_CONVERSION): Fix parameter types.
1425         (TARGET_INVALID_UNARY_OP, TARGET_INVALID_BINARY_OP): Likewise.
1426         (TARGET_INVALID_PARAMETER_TYPE, TARGET_INVALID_RETURN_TYPE): Likewise.
1427
1428         (TARGET_PROMOTED_TYPE): Remove braces around 'tree'.
1429         Fix argument type.
1430
1431         (TARGET_CONVERT_TO_TYPE): Remove braces around 'tree'.
1432
1433         (TARGET_ALLOCATE_STACK_SLOTS_FOR_ARGS): Remove braces around 'bool'.
1434
1435 2010-01-15  Joern Rennecke  <amylaar@spamcop.net>
1436
1437         * doc/tm.texi (TARGET_HELP): Fix return type.
1438
1439         (TARGET_PROMOTE_FUNCTION_MODE): Put 'enum machine_mode'
1440         in braces.  Fix argument types.
1441
1442         (TARGET_LIBGCC_CMP_RETURN_MODE): Use prototype.
1443
1444         (TARGET_LIBGCC_SHIFT_COUNT_MODE): Use prototype.
1445
1446         (TARGET_MS_BITFIELD_LAYOUT_P): Fix argument type.
1447
1448         (TARGET_DECIMAL_FLOAT_SUPPORTED_P): Don't put 'bool' in braces.
1449         (TARGET_FIXED_POINT_SUPPORTED_P): Likewise.
1450
1451         (TARGET_MANGLE_TYPE): Fix argument types.
1452
1453         (TARGET_IRA_COVER_CLASSES): Use prototype.
1454
1455         (TARGET_BUILTIN_SETJMP_FRAME_VALUE): Fix return type.  Use prototype.
1456
1457         (TARGET_CAN_ELIMINATE): Use identifiers for argument names.
1458
1459         (TARGET_PROMOTE_PROTOTYPES): Fix argument type.
1460
1461         (TARGET_MUST_PASS_IN_STACK): Fix argument type.
1462
1463         (TARGET_CALLEE_COPIES): Fix argument types.
1464
1465         (TARGET_SPLIT_COMPLEX_ARG): Fix argument type.
1466
1467         (TARGET_GIMPLIFY_VA_ARG_EXPR): Fix argument types.
1468
1469         (TARGET_FUNCTION_VALUE): Fix argument types.
1470
1471         (TARGET_RETURN_IN_MSB): Fix argument type.
1472
1473         (TARGET_RETURN_IN_MEMORY): Fix argument types.
1474
1475         (TARGET_ASM_CAN_OUTPUT_MI_THUNK): Fix argument types.
1476
1477         (TARGET_EXTRA_LIVE_ON_ENTRY): Fix argument type.
1478
1479         (TARGET_STRICT_ARGUMENT_NAMING): Make literal in text
1480         agree with return type.
1481
1482         (TARGET_PRETEND_OUTGOING_VARARGS_NAMED): Add Prototype.
1483
1484 2010-01-15  Jing Yu  <jingyu@google.com>
1485
1486         PR rtl-optimization/42691
1487         * combine.c (try_combine): Set changed_i3_dest to 1 when I2 and I3 set
1488         a pseudo to a constant and are merged, and adjust comments.
1489
1490 2010-01-15  Eric Botcazou  <ebotcazou@adacore.com>
1491
1492         * config/i386/sse.md (avx_vperm2f128<mode>3): Fix typo.
1493
1494 2010-01-15  Richard Guenther  <rguenther@suse.de>
1495
1496         PR middle-end/42739
1497         * tree-cfgcleanup.c (remove_forwarder_block): Move destination
1498         labels of computed or non-local gotos to the destination.
1499         * tree-cfg.c (gimple_verify_flow_info): Verify that a EH
1500         landing pad label is the first label.
1501
1502 2010-01-15  Richard Guenther  <rguenther@suse.de>
1503
1504         * tree-ssa-loop-im.c (gen_lsm_tmp_name): Fix bogus fallthru.
1505
1506 2010-01-14  Michael Meissner  <meissner@linux.vnet.ibm.com>
1507
1508         PR target/42747
1509         * config/rs6000/rs6000.md (sqrtdf2): Split into expander and insn
1510         to allow generation of the xssqrtdp instruction on power7.
1511         (sqrtdf2_fpr): Ditto.
1512
1513 2010-01-14  Jakub Jelinek  <jakub@redhat.com>
1514
1515         PR middle-end/42674
1516         * c-decl.c (finish_function): Don't emit -Wreturn-type warnings in
1517         functions with noreturn attribute.
1518
1519         PR c++/42608
1520         * varasm.c (declare_weak): Add weak attribute to decl if it
1521         doesn't have one already.
1522         (assemble_external): Only add decls to weak_decls if they also
1523         have weak attribute.
1524
1525 2010-01-14  Alexandre Oliva  <aoliva@redhat.com>
1526
1527         * var-tracking.c (var_reg_delete): Don't delete the association
1528         between REGs and values or one-part variables if the register
1529         isn't clobbered.
1530
1531 2010-01-14  Jakub Jelinek  <jakub@redhat.com>
1532
1533         PR debug/42657
1534         * tree-inline.c (copy_debug_stmt): Don't reset debug stmt just
1535         because its first operand is a non-localized variable.
1536
1537 2010-01-14  Martin Jambor  <mjambor@suse.cz>
1538
1539         PR tree-optimization/42706
1540         * tree-sra.c (encountered_recursive_call): New variable.
1541         (encountered_unchangable_recursive_call): Likewise.
1542         (sra_initialize): Initialize both new variables.
1543         (callsite_has_enough_arguments_p): New function.
1544         (scan_function): Call decl and flags check only for IPA-SRA, check
1545         whether there is a recursive call and whether it has enough arguments.
1546         (all_callers_have_enough_arguments_p): New function.
1547         (convert_callers): Look for recursive calls only when
1548         encountered_recursive_call is set.
1549         (ipa_early_sra): Bail out either if
1550         !all_callers_have_enough_arguments_p or
1551         encountered_unchangable_recursive_call.
1552
1553 2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
1554
1555         * sel-sched.c: Add 2010 to copyright years.
1556         * sel-sched-ir.c: Likewise.
1557         * sel-sched-ir.h: Likewise.
1558
1559 2010-01-14  Martin Jambor  <mjambor@suse.cz>
1560
1561         PR tree-optimization/42714
1562         * tree-sra.c (sra_ipa_modify_assign): Handle incompatible-type
1563         constructors specially.
1564
1565 2010-01-14  Andi Kleen  <ak@linux.intel.com>
1566
1567         * config/i386/drivers-i386.c (detect_caches_intel):
1568         Add l2sizekb parameter and fill in.
1569         (host_detect_local_cpu): Add l2sizekb, fill in.
1570         Add Atom small cache heuristic.
1571
1572 2010-01-14  Andi Kleen  <ak@linux.intel.com>
1573
1574         * config/i386/drivers-i386.c (detect_caches_cpuid4):
1575         Add level3 parameter and fill in.
1576         (detect_caches_intel): Handle level3 cache.
1577
1578 2010-01-14  Andi Kleen  <ak@linux.intel.com>
1579
1580         * config/i386/drivers-i386.c (host_detect_local_cpu):
1581         Fix core duo detection.
1582
1583 2010-01-14  Andi Kleen  <ak@linux.intel.com>
1584
1585         * config/i386/drivers-i386.c (host_detect_local_cpu):
1586         Fix Atom detection.
1587
1588 2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
1589
1590         * config/rs6000/rs6000.c (rs6000_variable_issue): Rename to...
1591         (rs6000_variable_issue_1): this.  Use...
1592         (rs6000_variable_issue): here.  Reimplement.  Print debug info.
1593
1594 2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
1595
1596         * sel-sched-ir.c (sel_restore_other_notes): Rename to
1597         sel_restore_notes.  Update all callers.  Call reemit_notes
1598         for all insns.
1599
1600 2010-01-14  Andrey Belevantsev  <abel@ispras.ru>
1601
1602         PR rtl-optimization/42246
1603         * sel-sched-ir.h (get_all_loop_exits): Include exits from inner
1604         loops.
1605
1606 2010-01-14  Andrey Belevantsev  <abel@ispras.ru>
1607
1608         * sel-sched.c (compute_av_set_at_bb_end): Do not test that number of
1609         all successors is the same as number of successors in current region.
1610
1611 2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
1612
1613         * sel-sched.c (maybe_emit_renaming_copy): Exit early when expression
1614         to rename is not separable.  Otherwise check that its LHS is not NULL.
1615
1616 2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
1617
1618         * sel-sched.c (choose_best_reg_1):  Loop over all regs for mode.
1619
1620 2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
1621
1622         * sel-sched.c (mark_unavailable_hard_regs): Do not try to search
1623         available registers when failed to discover LHS register class.
1624         Fix indentation.  Update comment.
1625
1626 2010-01-14  Andrey Belevantsev  <abel@ispras.ru>
1627             Alexander Monakov  <amonakov@ispras.ru>
1628
1629         PR rtl-optimization/42389
1630         * sel-sched.c (advance_one_cycle): Set FENCE_ISSUE_MORE
1631         to can_issue_more.
1632         (advance_state_on_fence): Likewise.
1633         (sel_target_adjust_priority): Print debug output only when
1634         sched_verbose >= 4, not 2.
1635         (get_expr_cost): Do not issue all unique insns on the next cycle.
1636         (fill_insns): Initialize can_issue_more from the value saved
1637         with the fence.
1638         * sel-sched-ir.c (flist_add): New parameter issue_more.
1639         Init FENCE_ISSUE_MORE with it.
1640         (merge_fences): Likewise.
1641         (init_fences): Update call to flist_add.
1642         (add_to_fences, add_clean_fence_to_fences)
1643         (add_dirty_fence_to_fences): Likewise.
1644         (move_fence_to_fences): Update call to merge_fences.
1645         (invoke_reorder_hooks): Do not reset can_issue_more on insns from
1646         sched groups.
1647         * sel-sched-ir.h (struct _fence): New field issue_more.
1648         (FENCE_ISSUE_MORE): New accessor macro.
1649
1650 2010-01-14  Andrey Belevantsev  <abel@ispras.ru>
1651
1652         PR rtl-optimization/42388
1653         * sel-sched-ir.c (maybe_tidy_empty_bb): Do not delete empty blocks
1654         that have no predecessors nor successors.  Do not call move_bb_info
1655         for empty blocks outside of current region.
1656
1657 2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
1658
1659         PR rtl-optimization/42294
1660         * sel-sched-ir.h (struct _sel_insn_data): Update comment.
1661         * sel-sched.c (move_exprs_to_boundary): Transitively add all
1662         originators' originators.
1663
1664 2010-01-14  Alexander Monakov  <amonakov@ispras.ru>
1665
1666         PR rtl-optimization/39453
1667         PR rtl-optimization/42246
1668         * sel-sched-ir.c (considered_for_pipelining_p): Do not test
1669         for pipelining_p.
1670         (sel_add_loop_preheaders): Add preheader to last_added_blocks.
1671
1672 2010-01-14  Andrey Belevantsev  <abel@ispras.ru>
1673             Alexander Monakov  <amonakov@ispras.ru>
1674
1675         PR middle-end/42245
1676         * sel-sched-ir.c (sel_recompute_toporder): New.  Use it...
1677         (maybe_tidy_empty_bb): ... here.  Make static.  Add new
1678         argument.  Update all callers.
1679         (tidy_control_flow): ... and here.  Recompute topological order
1680         of basic blocks in region if necessary.
1681         (sel_redirect_edge_and_branch): Change return type.  Return true
1682         if topological order might have been invalidated.
1683         (purge_empty_blocks): Export and move from...
1684         * sel-sched.c (purge_empty_blocks): ... here.
1685         * sel-sched-ir.h (sel_redirect_edge_and_branch): Update prototype.
1686         (maybe_tidy_empty_bb): Delete prototype.
1687         (purge_empty_blocks): Declare.
1688
1689 2010-01-14  Andrey Belevantsev <abel@ispras.ru>
1690
1691         PR rtl-optimization/42249
1692         * sel-sched.c (try_replace_dest_reg): When chosen register
1693         and original register is the same, do not bail out early, but
1694         still check all original insns for validity of replacing destination
1695         register.  Set EXPR_TARGET_AVAILABLE to 1 before leaving function
1696         in this case.
1697
1698 2010-01-14  Jakub Jelinek  <jakub@redhat.com>
1699
1700         PR c/42721
1701         Port from no-undefined-overflow branch:
1702         2009-03-09  Richard Guenther  <rguenther@suse.de>
1703
1704         * fold-const.c (add_double_with_sign): Fix unsigned overflow detection.
1705
1706 2010-01-14  Richard Guenther  <rguenther@suse.de>
1707
1708         PR lto/42665
1709         * gimple.c (iterative_hash_gimple_type): Avoid hashing error_mark_node.
1710
1711 2010-01-14  Ira Rosen  <irar@il.ibm.com>
1712
1713         PR tree-optimization/42709
1714         * tree-vect-slp.c (vect_get_constant_vectors): Use constant's type
1715         as scalar type in creation of constant vector operand.
1716
1717 2010-01-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1718
1719         PR testsuite/42414
1720         * Makefile.in ($(TESTSUITEDIR)/site.exp, check-%)
1721         (check-parallel-%): Match `testsuite' directory component only
1722         at the end.
1723
1724 2010-01-14  Shujing Zhao  <pearly.zhao@oracle.com>
1725
1726         PR translation/39521
1727         * gcc.c (do_spec_1): Wrapped the error and notice messages of specs
1728         strings with _().
1729
1730 2010-01-13  Richard Guenther  <rguenther@suse.de>
1731
1732         PR tree-optimization/42730
1733         * tree-ssa-ccp.c (maybe_fold_stmt_indirect): Add shortcut for
1734         offset zero.
1735
1736 2010-01-13  Steve Ellcey  <sje@cup.hp.com>
1737
1738         PR target/pr42542
1739         * config/ia64/ia64.c (ia64_expand_vecint_compare): Convert GTU to GT
1740         for V2SI by subtracting (-(INT MAX) - 1) from both operands to make
1741         them signed.
1742
1743 2010-01-13  Bernd Schmidt  <bernd.schmidt@analog.com>
1744
1745         * config/bfin/libgcc-bfin.ver: Regenerate based on current
1746         libgcc-std.ver.  Add entries for ___smulsi3_highpart and
1747         ___umulsi3_highpart.
1748
1749         * config/bfin/bfin.c (bfin_reorg): Call run_selective_scheduling
1750         rather than schedule_insns if the pass is enabled.
1751
1752 2010-01-13  Martin Jambor  <mjambor@suse.cz>
1753
1754         PR tree-optimization/42704
1755         * tree-sra.c (sra_modify_assign): Do not delete assignments to
1756         SSA_NAMEs.
1757
1758 2010-01-13  Martin Jambor  <mjambor@suse.cz>
1759
1760         PR tree-optimization/42703
1761         * tree-sra.c (analyze_access_subtree): Check that we can build a
1762         reference to the original data within the aggregate.
1763
1764 2010-01-13  Richard Guenther  <rguenther@suse.de>
1765
1766         PR tree-optimization/42705
1767         * tree-ssa-reassoc.c (build_and_add_sum): Insert stmts after labels.
1768
1769 2010-01-13  Richard Guenther  <rguenther@suse.de>
1770
1771         PR middle-end/42716
1772         * fold-const.c (fold_unary_loc): Fold INDIRECT_REFs.
1773
1774 2010-01-13  Jakub Jelinek  <jakub@redhat.com>
1775
1776         PR debug/41371
1777         * var-tracking.c (values_to_unmark): New variable.
1778         (find_loc_in_1pdv): Clear VALUE_RECURSED_INTO of values in
1779         values_to_unmark vector.  Moved body to...
1780         (find_loc_in_1pdv_1): ... this.  Don't clear VALUE_RECURSED_INTO,
1781         instead queue it into values_to_unmark vector.
1782         (vt_find_locations): Free values_to_unmark vector.
1783
1784 2010-01-13  Wolfgang Gellerich  <gellerich@de.ibm.com>
1785
1786         * config/s390/s390.c (override_options): Set
1787         default of max-pending-list-length to 256
1788
1789 2010-01-13  Richard Guenther  <rguenther@suse.de>
1790
1791         PR lto/42678
1792         * tree-pass.h (PROP_gimple_lcx): New.
1793         * cfgexpand.c (pass_expand): Require PROP_gimple_lcx.
1794         * passes.c (init_optimization_passes): Move pass_lower_complex_O0
1795         before the final cleanup_eh.
1796         (dump_properties): Dump PROP_gimple_lcx.
1797         * tree-complex.c (pass_lower_complex): Provide PROP_gimple_lcx.
1798         (tree_lower_complex_O0): Remove.
1799         (gate_no_optimization): Run if PROP_gimple_lcx is not set.
1800         (pass_lower_complex_O0): Provide PROP_gimple_lcx.  Run
1801         tree_lower_complex, schedule TODO_update_ssa.
1802         * lto-streamer-out.c (output_function): Stream the functions
1803         properties.
1804         * lto-streamer-in.c (input_function): Likewise.
1805         (lto_read_body): Do not override them here.
1806
1807 2010-01-12  Joseph Myers  <joseph@codesourcery.com>
1808
1809         PR c/42708
1810         * c-typeck.c (build_c_cast): Fold value cast to union type before
1811         wrapping it in a CONSTRUCTOR.
1812
1813 2010-01-12  Jakub Jelinek  <jakub@redhat.com>
1814
1815         PR rtl-optimization/42699
1816         * cse.c (cse_insn): Optimize lhs ZERO_EXTRACT if only CONST_INTs are
1817         involved.
1818
1819 2010-01-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1820
1821         * config/mips/iris6.h (SUBTARGET_DONT_WARN_UNUSED_SPEC,
1822         SUBTARGET_WARN_UNUSED_SPEC): Move ...
1823         config/mips/iris.h (SUBTARGET_DONT_WARN_UNUSED_SPEC,
1824         SUBTARGET_WARN_UNUSED_SPEC): ... here
1825         * config/mips/iris5.h (LIBGCC_SPEC): Define.
1826
1827 2010-01-12  Julian Brown  <julian@codesourcery.com>
1828
1829         * config/arm/neon-schedgen.ml (Utils): Don't try to
1830         open missing module.
1831         (find_with_result): New.
1832
1833 2010-01-12  Jakub Jelinek  <jakub@redhat.com>
1834
1835         PR debug/42662
1836         * simplify-rtx.c (simplify_relational_operation_1): Avoid invalid rtx
1837         sharing when canonicalizing ({lt,ge}u (plus a b) b).
1838
1839         PR tree-optimization/42645
1840         * tree-inline.c (processing_debug_stmt): Move earlier.  Make static.
1841         (remap_ssa_name): If processing_debug_stmt and name wasn't found in
1842         decl_map, set processing_debug_stmt to -1 and return name without
1843         any remapping.
1844
1845 2010-01-11  Dave Korn  <dave.korn.cygwin@gmail.com>
1846
1847         * doc/install.texi (Specific#x-x-cygwin): Document minimum required
1848         binutils version, and reword target configuration description.
1849
1850 2010-01-11  Andy Hutchinson  <hutchinsonandy@gcc.gnu.org>
1851
1852         * config/avr/avr.h (LINKER_NAME): Remove.
1853
1854 2010-01-11  Janis Johnson  <janis187@us.ibm.com>
1855
1856         PR target/42416
1857         * config/rs6000/rs6000.c (rs6000_override_options): On targets
1858         that support VSX, warn for -mno-altivec if vsx is not disabled,
1859         and disable vsx.
1860
1861 2010-01-11  Joseph Myers  <joseph@codesourcery.com>
1862             Shujing Zhao  <pearly.zhao@oracle.com>
1863
1864         PR translation/42469
1865         * common.opt (Wframe-larger-than=, fcompare-debug=, fdbg-cnt=,
1866         fira-verbose=, flto-compression-level=, fplugin-arg-): Use tab
1867         character between option name and help text.
1868         * c.opt (imultilib): Likewise.
1869
1870 2010-01-10  Rafael Avila de Espindola  <espindola@google.com>
1871
1872         * lto-streamer-out.c (output_unreferenced_globals): Output static
1873         variables.
1874
1875 2010-01-10  Steven Bosscher  <steven@gcc.gnu.org>
1876
1877         PR rtl-optimization/42621
1878         * bb-reorder.c (gate_duplicated_computed_gotos): Only run if not
1879         optimizing for size.
1880         (duplicate_computed_gotos): Remove now-redundant check.
1881
1882 2010-01-10  Steve Ellcey  <sje@cup.hp.com>
1883
1884         PR target/37454
1885         * configure.ac: Save and restore LDFLAGS and LIBS
1886         * configure: Regenerate.
1887
1888 2010-01-10  Richard Guenther  <rguenther@suse.de>
1889
1890         PR middle-end/42667
1891         * builtins.c (fold_builtin_strlen): Add type argument and
1892         convert the resulting length to it.
1893         (fold_builtin_1): Adjust.
1894
1895 2010-01-09  Jakub Jelinek  <jakub@redhat.com>
1896
1897         * config/rs6000/rs6000.c (rs6000_emit_set_long_const): Shorten
1898         sequence for DImode constants >= 0x80000000UL <= 0xFFFFFFFFUL by
1899         1 insn.
1900         (num_insns_constant_wide): Adjust for that change.
1901
1902 2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
1903
1904         PR debug/42631
1905         * web.c (union_defs): Add used argument, to combine uses of
1906         uninitialized regs.
1907         (entry_register): Adjust type and tests of used argument.
1908         (web_main): Widen used for new use.  Pass it to union_defs.
1909         * df.h (union_defs): Adjust prototype.
1910
1911 2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
1912
1913         PR debug/42630
1914         * loop-unroll.c (referenced_in_one_insn_in_loop_p): Count debug
1915         uses in new incoming argument.  Free body.
1916         (reset_debug_uses_in_loop): New.
1917         (analyze_insn_to_expand_var): Call the latter if the former found
1918         anything.  Fix whitespace.  Reject invalid dest overlaps before
1919         going through all insns in the loop.
1920
1921 2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
1922
1923         PR debug/42629
1924         * haifa-sched.c (dying_use_p): Debug insns don't count.
1925
1926 2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
1927
1928         PR middle-end/42363
1929         * gimplify.c (gimplify_modify_expr): Drop lhs on noreturn calls.
1930         * tree-cfg.c (is_ctrl_altering_stmt): Don't compute flags twice.
1931         (verify_gimple_call): Reject LHS in noreturn calls.
1932
1933 2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
1934
1935         PR debug/42604
1936         PR debug/42395
1937         * tree-vect-loop-manip.c (adjust_info): New type.
1938         (adjust_vec): New pointer to vector.
1939         (adjust_debug_stmts_now, adjust_vec_debug_stmts): New.
1940         (adjust_debug_stmts, adjust_phi_and_debug_stmts): New.
1941         (slpeel_update_phis_for_duplicate_loop): Use them.
1942         (slpeel_update_phi_nodes_for_guard1): Likewise.
1943         (slpeel_update_phi_nodes_for_guard2): Likewise.
1944         (slpeel_tree_peel_loop_to_edge): Likewise.
1945         (vect_update_ivs_after_vectorizer): Likewise.
1946
1947 2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
1948
1949         * vec.h (DEF_VEC_ALLOC_FUNC_O_STACK): Drop excess paren.
1950         (DEF_VEC_ALLOC_FUNC_I_STACK): Likewise.
1951
1952 2010-01-09  Alexandre Oliva  <aoliva@redhat.com>
1953
1954         * config/i386/i386.c (ix86_vectorize_builtin_vec_perm): Silence
1955         bogus uninitialized warning.
1956
1957 2010-01-09  Richard Guenther  <rguenther@suse.de>
1958
1959         PR middle-end/42512
1960         * tree-scalar-evolution.c (interpret_loop_phi): Make sure
1961         the evolution is compatible with the initial condition.
1962
1963 2010-01-09  Jakub Jelinek  <jakub@redhat.com>
1964
1965         * gcc.c (process_command): Update copyright notice dates.
1966         * gcov.c (print_version): Likewise.
1967         * gcov-dump.c (print_version): Likewise.
1968         * mips-tfile.c (main): Likewise.
1969         * mips-tdump.c (main): Likewise.
1970
1971 2010-01-08  Andy Hutchinson  <hutchinsonandy@gcc.gnu.org>
1972
1973         PR target/41885
1974         * config/avr/avr.md (rotlqi3): Add CONST_INT_P check.
1975         (rotlhi3): Delete.
1976         (rotlhi3_8): Delete.
1977         (rotlsi3): Delete.
1978         (rotlsi3_8): Delete.
1979         (rotlsi3_16): Delete.
1980         (rotlsi3_24): Delete.
1981         (rotl<mode>3): New.
1982         (*rotw<mode>3): New.
1983         (*rotb<mode>3): New.
1984         * config/avr/avr.c (avr_rotate_bytes): New function.
1985         * config/avr/avr-proto.h (avr_rotate_bytes): New function.
1986
1987 2010-01-08  Steve Ellcey  <sje@cup.hp.com>
1988
1989         PR target/37454
1990         * configure.ac: Modify -rdynamic check.
1991         * configure: Regenerate.
1992
1993 2010-01-08  DJ Delorie  <dj@redhat.com>
1994
1995         * config/sh/sh.c (sh_expand_epilogue): Fix interrupt handler
1996         register popping order.
1997
1998 2010-01-08  Richard Guenther  <rguenther@suse.de>
1999
2000         PR lto/42528
2001         * c.opt (fsigned-char): Also let LTO handle this option.
2002         (funsigned-char): Likewise.
2003
2004 2010-01-07  Richard Guenther  <rguenther@suse.de>
2005
2006         * gimple.h (gss_for_code): Wrap gcc_assert in ENABLE_CHECKING.
2007         (gimple_op): Likewise.
2008         (gimple_op_ptr): Likewise.
2009         (gimple_assign_set_lhs): Remove gcc_assert.
2010         (gimple_assign_set_rhs1): Likewise.
2011         (gimple_assign_set_rhs2): Likewise.
2012         (gimple_call_set_lhs): Likewise.
2013         (gimple_call_set_fn): Likewise.
2014         (gimple_call_set_fndecl): Likewise.
2015         (gimple_call_fndecl): Likewise.
2016         (gimple_call_return_type): Likewise.
2017         (gimple_call_set_chain): Likewise.
2018         (gimple_call_num_args): Likewise.
2019         (gimple_call_set_arg): Likewise.
2020         (gimple_cond_set_code): Likewise.
2021         (gimple_cond_set_lhs): Likewise.
2022         (gimple_cond_set_rhs): Likewise.
2023         (gimple_cond_set_true_label): Likewise.
2024         (gimple_cond_set_false_label): Likewise.
2025         (gimple_label_set_label): Likewise.
2026         (gimple_goto_set_dest): Likewise.
2027         (gimple_debug_bind_get_var): Wrap gcc_assert in ENABLE_CHECKING.
2028         (gimple_debug_bind_get_value): Likewise.
2029         (gimple_debug_bind_get_value_ptr): Likewise.
2030         (gimple_debug_bind_set_var): Likewise.
2031         (gimple_debug_bind_set_value): Likewise.
2032         (gimple_debug_bind_reset_value): Likewise.
2033         (gimple_debug_bind_has_value_p): Likewise.
2034         (gimple_return_retval_ptr): Remove gcc_assert.
2035         (gimple_return_retval): Likewise.
2036         (gimple_return_set_retval): Likewise.
2037         * tree-flow.h (struct gimple_df): Remove nonlocal_all member.
2038         (safe_referenced_var_iterator): Remove.
2039         (FOR_EACH_REFERENCED_VAR_SAFE): Likewise.
2040         * tree-flow-inline.h (gimple_nonlocal_all): Remove.
2041         (fill_referenced_var_vec): Remove.
2042         (first_readonly_imm_use): Remove redundant gcc_assert.
2043         (phi_arg_index_from_use): Combine gcc_asserts.
2044         (move_use_after_head): Wrap gcc_assert in ENABLE_CHECKING.
2045         (first_imm_use_stmt): Remove redundant gcc_assert.
2046         * tree-cfg.c (verify_gimple_call): Verify function and chain
2047         operands.  Verify arguments.
2048         (verify_types_in_gimple_stmt): Verify condition code and labels.
2049
2050 2010-01-07  Richard Guenther  <rguenther@suse.de>
2051
2052         PR tree-optimization/42641
2053         * sese.c (rename_map_elt_info): Use the SSA name version, do
2054         not hash pointers.
2055
2056 2010-01-07  Jakub Jelinek  <jakub@redhat.com>
2057
2058         PR tree-optimization/42625
2059         * cgraph.c (cgraph_make_node_local): Clear DECL_COMDAT*,
2060         TREE_PUBLIC, DECL_WEAK and DECL_EXTERNAL also for same_body aliases.
2061
2062 2010-01-07  Duncan Sands  <baldrick@free.fr>
2063
2064         * Makefile.in (PLUGIN_HEADERS): Add version.h.
2065
2066 2010-01-07  Uros Bizjak  <ubizjak@gmail.com>
2067
2068         PR target/42511
2069         * ifcvt.c (dead_or_predicable): Also remove REG_EQUAL note when
2070         note itself is not function_invariant_p.
2071
2072 2009-01-07  Steven Bosscher  <steven@gcc.gnu.org>
2073
2074         * gcse.c (execute_rtl_cprop, execute_rtl_pre, execute_rtl_hoist):
2075         Do not add the DF_NOTE problem.
2076         * store-motion.c (execute_rtl_store_motion): Likewise.
2077
2078 2010-01-07  Martin Jambor  <mjambor@suse.cz>
2079
2080         PR tree-optimization/42157
2081         * tree-sra.c (compare_access_positions): Stabilize sort if both
2082         accesses have integer types, return zero immediately if they are the
2083         same.
2084
2085 2010-01-06  Richard Henderson  <rth@redhat.com>
2086
2087         PR middle-end/41883
2088         * haifa-sched.c (add_to_note_list): Merge into ...
2089         (concat_note_lists): ... here, and ...
2090         (unlink_other_notes, rm_other_notes): Merge into...
2091         (remove_notes): ... here.  Create REG_SAVE_NOTEs for
2092         NOTE_INSN_EPILOGUE_BEG.
2093
2094 2010-01-06  Richard Guenther  <rguenther@suse.de>
2095
2096         * ipa-inline.c (cgraph_decide_inlining_incrementally): Do
2097         not inline regular functions into always-inline functions.
2098
2099 2010-01-06  Nick Clifton  <nickc@redhat.com>
2100
2101         * config/rx/rx.h (enum rx_cpu_type): Add RX200.
2102         (CC1_SPEC): Issue an error message if -mcpu=rx200 and -fpu are
2103         used together.
2104         (OVERRIDE_OPTIONS): Delete.
2105         (OPTIMIZATION_OPTIONS): Define.
2106         (ALLOW_RX_FPU_INSNS): Define only in terms of -fpu option.
2107         * config/rx/rx.c (rx_handle_option): Issue an error message if
2108         -mcpu=rx200 and -fpu are used together.
2109         (rx_set_optimization_options): New function.  Issue an error
2110         message if an optimization attribute attempts to reset the FPU/
2111         math optimization pairing.
2112         * config/rx/rx-protos.h (rx_set_optimization_options): Prototype.
2113         * config/rx/rx.opt: Set the default to 32-bit doubles.
2114         * config/rx/t-rx: Add multilibs for -nofpu option.
2115         * doc/invoke.texi: Update documentation of RX options.
2116
2117 2010-01-06  Richard Guenther  <rguenther@suse.de>
2118
2119         * tree-ssa-pre.c (name_to_id): New global.
2120         (alloc_expression_id): Simplify SSA name handling.
2121         (lookup_expression_id): Likewise.
2122         (init_pre): Zero name_to_id.
2123         (fini_pre): Free it.
2124
2125 2010-01-06  Uros Bizjak  <ubizjak@gmail.com>
2126
2127         * ifcvt.c (if_convert): Output slim multiple dumps with TDF_SLIM.
2128
2129 2010-01-05  H.J. Lu  <hongjiu.lu@intel.com>
2130
2131         PR target/42542
2132         * config/i386/sse.md (smaxv2di3): New.
2133         (umaxv2di3): Likewise.
2134         (sminv2di3): Likewise.
2135         (uminv2di3): Likewise.
2136
2137 2010-01-05  Eric Botcazou  <ebotcazou@adacore.com>
2138
2139         PR target/42564
2140         * config/sparc/sparc.h (SPARC_SYMBOL_REF_TLS_P): Delete.
2141         * config/sparc/sparc-protos.h (legitimize_pic_address): Likewise.
2142         (legitimize_tls_address): Likewise.
2143         (sparc_tls_referenced_p): Likewise.
2144         * config/sparc/sparc.c (sparc_expand_move): Use legitimize_tls_address
2145         and adjust calls to legitimize_pic_address.
2146         (legitimate_constant_p) Use sparc_tls_referenced_p.
2147         (legitimate_pic_operand_p): Likewise.
2148         (sparc_legitimate_address_p): Do not use SPARC_SYMBOL_REF_TLS_P.
2149         (sparc_tls_symbol_ref_1): Delete.
2150         (sparc_tls_referenced_p): Make static, recognize specific patterns.
2151         (legitimize_tls_address): Make static, handle CONST patterns.
2152         (legitimize_pic_address): Make static, remove unused parameter and
2153         adjust recursive calls.
2154         (sparc_legitimize_address): Make static, use sparc_tls_referenced_p
2155         and adjust call to legitimize_pic_address.
2156         (sparc_output_mi_thunk): Likewise.
2157
2158 2010-01-05  Paolo Bonzini  <bonzini@gnu.rg>
2159             H.J. Lu  <hongjiu.lu@intel.com>
2160
2161         PR target/42542
2162         * config/i386/i386.c (ix86_expand_int_vcond): Convert GTU to GT
2163         for V4SI and V2DI by subtracting (-(INT MAX) - 1) from both
2164         operands to make them signed.
2165
2166         Revert:
2167         2010-01-04  H.J. Lu  <hongjiu.lu@intel.com>
2168
2169         PR target/42542
2170         * config/i386/i386.c (ix86_expand_int_vcond): Don't convert
2171         GTU to GT for V4SI and V2DI.
2172
2173         * config/i386/sse.md (umaxv4si3): Enabled for SSE4.1 and XOP.
2174         (umin<mode>3): Removed.
2175         (uminv8hi3): New.
2176         (uminv4si3): Likewise.
2177
2178 2010-01-05  Martin Jambor  <mjambor@suse.cz>
2179
2180         PR tree-optimization/42462
2181         * ipa-inline.c (compute_inline_parameters): Pass node->decl instead of
2182         current_function_decl to helper functions and macros.
2183
2184 2010-01-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2185
2186         PR bootstrap/41771
2187         * flags.h: Don't include real.h.
2188         (HONOR_NANS, HONOR_SNANS, HONOR_INFINITIES, HONOR_SIGNED_ZEROS,
2189         HONOR_SIGN_DEPENDENT_ROUNDING): Move ...
2190         * real.h (HONOR_NANS, HONOR_SNANS, HONOR_INFINITIES,
2191         HONOR_SIGNED_ZEROS, HONOR_SIGN_DEPENDENT_ROUNDING): ... here.
2192         * dominance.c: Update copyright.
2193         * gimple.c (walk_gimple_op): Remove inline.
2194         * tree-ssa-reassoc.c: Include real.h.
2195         * Makefile.in (FLAGS_H): Remove $(REAL_H).
2196         (tree-ssa-reassoc.o): Depend on $(REAL_H).
2197
2198 2010-01-05  Nick Clifton  <nickc@redhat.com>
2199
2200         * config/rx/rx.c (rx_get_stack_layout): Fix allocation of second
2201         register to push into the stack frame when the accumulator has to
2202         be saved during interrupts.
2203
2204 2010-01-05  Eric Fisher  <joefoxreal@gmail.com>
2205
2206         * doc/invoke.texi: Remove the documentation about option
2207         -Wunreachable-code.
2208         * common.opt (Wunreachable-code):  Preserved for backward
2209         compatibility.
2210         * tree-cfg.c: Remove the implementation of -Wunreachable-code.
2211         * opts.c (common_handle_option): Add OPT_Wunreachable_code to
2212         the backward compatibility flag section.
2213
2214 2010-01-05  Richard Guenther  <rguenther@suse.de>
2215
2216         * tree-ssa-pre.c (bitmap_value_insert_into_set): Optimize.
2217
2218 2010-01-05  Jakub Jelinek  <jakub@redhat.com>
2219
2220         PR other/42611
2221         * cfgexpand.c (expand_one_var): Diagnose too large variables.
2222
2223         PR tree-optimization/42508
2224         * tree-sra.c (convert_callers): Check for recursive call
2225         by comparing cgraph nodes instead of decls.
2226         (modify_function): Call ipa_modify_formal_parameters also
2227         on all same_body aliases.
2228
2229         * cgraphunit.c (cgraph_materialize_all_clones): Compare
2230         cgraph nodes when checking for same_body aliases.
2231
2232 2010-01-05  Richard Guenther  <rguenther@suse.de>
2233
2234         * tree-ssa-pre.c (get_or_alloc_expr_for_name): Avoid redundant
2235         allocation and lookup.
2236         (get_or_alloc_expr_for_constant): Likewise.
2237         (phi_translate): Sink allocation.
2238
2239 2010-01-04  Richard Guenther  <rguenther@suse.de>
2240
2241         * tree-ssa-sccvn.c (get_or_alloc_constant_value_id): Allocate
2242         a new entry only if needed.
2243         * tree-ssa-dom.c (lookup_avail_expr): Likewise.
2244         * tree-ssa-coalesce.c (find_coalesce_pair): Avoid one
2245         hashtable lookup.
2246         * tree-ssa-pre.c (sorted_array_from_bitmap_set): Pre-allocate
2247         the result array.
2248         (phi_translate): Handle CONSTANTs early.
2249
2250 2010-01-04  Martin Jambor  <mjambor@suse.cz>
2251
2252         PR tree-optimization/42398
2253         * tree-sra.c (struct access): Removed flag grp_different_types.
2254         (dump_access): Do not dump the removed flag.
2255         (sort_and_splice_var_accesses): Do not set the removed flag.
2256         (sra_modify_expr): Check for type compatibility directly.
2257
2258 2010-01-04  Martin Jambor  <mjambor@suse.cz>
2259
2260         PR tree-optimization/42366
2261         * ipa-cp.c (ipcp_init_stage): Always call ipa_compute_jump_functions on
2262         edges with variable number of parameters.
2263         * ipa-prop.c (ipa_write_node_info): Stream out uses_analysis_done
2264         flag instead of asserting it.
2265         (ipa_read_node_info): Read uses_analysis_done flag.
2266
2267 2010-01-04  Richard Guenther  <rguenther@suse.de>
2268
2269         * tree-ssa-sccvn.c (vn_reference_op_compute_hash): Use
2270         iterative_hash_* as intended.
2271         (vn_reference_compute_hash): Likewise.  Simplify hashing
2272         SSA names.
2273         (vn_reference_lookup_2): Likewise.
2274         (vn_nary_op_compute_hash): Likewise.
2275         (vn_phi_compute_hash): Likewise.
2276         (expressions_equal_p): Remove strange code.
2277         * tree-ssa-pre.c (pre_expr_eq): Use gcc_unreachable ().
2278         (pre_expr_hash): Likewise.  Simplify hashing SSA names.
2279         (bitmap_insert_into_set_1): Take value-id as parameter.
2280         (add_to_value): Pass it.
2281         (bitmap_insert_into_set): Likewise.
2282         (bitmap_value_insert_into_set): Likewise.  Remove redundant check.
2283
2284 2010-01-04  Jakub Jelinek  <jakub@redhat.com>
2285
2286         PR driver/42442
2287         * gcc.c (SWITCH_IGNORE_PERMANENTLY): Define.
2288         (do_self_spec): For switches with SWITCH_IGNORE set set also
2289         SWITCH_IGNORE_PERMANENTLY.
2290         (check_live_switch): Check SWITCH_IGNORE_PERMANENTLY instead
2291         of SWITCH_IGNORE.
2292
2293 2010-01-04  Rafael Avila de Espindola  <espindola@google.com>
2294
2295         * lto-streamer-out.c (output_unreferenced_globals): Output the full
2296         tree of an unreferenced global var.
2297
2298 2010-01-04  H.J. Lu  <hongjiu.lu@intel.com>
2299
2300         PR target/42542
2301         * config/i386/i386.c (ix86_expand_int_vcond): Don't convert
2302         GTU to GT for V4SI and V2DI.
2303
2304         * config/i386/sse.md (umaxv4si3): Enabled for SSE4.1 and XOP.
2305         (umin<mode>3): Removed.
2306         (uminv8hi3): New.
2307         (uminv4si3): Likewise.
2308
2309 2010-01-04  H.J. Lu  <hongjiu.lu@intel.com>
2310
2311         PR lto/42581
2312         * collect2.c (main): Turn on trace in collect2 if -v is passed
2313         to gcc with LTO.
2314
2315 2010-01-03  Jerry Quinn  <jlquinn@optonline.net>
2316
2317         * doc/c-tree.texi (RETURN_STMT): Change to RETURN_EXPR.  Update
2318         description of expression operand.
2319
2320 2010-01-03  Andrew Jenner  <andrew@codesourcery.com>
2321
2322         * configure.ac: Add install-html to target_list for Make-hooks.
2323         * configure: Regenerate.
2324         * fortran/Make-lang.in (F95_HTMLFILES): New.
2325         (fortran.html): Use it.
2326         (fortran.install-html): New.
2327         * Makefile.in (install-html): Add lang.install-html.
2328         * java/Make-lang.in (JAVA_HTMLFILES): New.
2329         (java.html): Use it.
2330         (java.install-html): New.
2331         * objc/Make-lang.in (objc.install-html): New.
2332         * objcp/Make-lang.in (obj-c++.install-html): New.
2333         * cp/Make-lang.in (c++.install-html): New.
2334         * ada/gcc-interface/Make-lang.in (ada.install-html): New.
2335         * lto/Make-lang.in (lto.install-html): New.
2336
2337 2010-01-03  H.J. Lu  <hongjiu.lu@intel.com>
2338
2339         PR lto/42520
2340         * gcc.c (LINK_COMMAND_SPEC): Pass -m* and -v to -plugin-opt.
2341
2342 2009-01-03  Steven Bosscher  <steven@gcc.gnu.org>
2343
2344         PR rtl-optimization/41862
2345         * store-motion.c (store_killed_in_insn, compute_store_table,
2346         remove_reachable_equiv_notes, replace_store_insn,
2347         build_store_vectors): Ignore all DEBUG_INSNs.
2348
2349 2010-01-03  H.J. Lu  <hongjiu.lu@intel.com>
2350
2351         PR lto/41564
2352         * common.opt: Add dumpdir.
2353
2354         * gcc.c (cc1_options): Add "-dumpbase %B" only if -dumpbase
2355         isn't specified.
2356         (option_map): Add --dumpdir.
2357
2358         * gcc.h (DEFAULT_WORD_SWITCH_TAKES_ARG): Add dumpdir.
2359
2360         * lto-wrapper.c (run_gcc): Add -dumpbase and -dumpdir for -o.
2361
2362         * opts.c (decode_options): Try dump_dir_name first if
2363         dump_base_name isn't an absolute path.
2364         (common_handle_option): Handle OPT_dumpdir.
2365
2366         * toplev.c (dump_dir_name): New.
2367         (print_switch_values): Also ignore -dumpdir.
2368
2369         * toplev.h (dump_dir_name): New.
2370
2371 2010-01-03  Richard Guenther  <rguenther@suse.de>
2372
2373         PR tree-optimization/42589
2374         * tree-ssa-math-opts.c (execute_optimize_bswap): Allow
2375         double-word expansion of bswap32.
2376
2377 2010-01-03  Steven Bosscher  <steven@gcc.gnu.org>
2378
2379         * postreload-gcse.c (insert_expr_in_table): Replace BLOCK_NUM
2380         with BLOCK_FOR_INSN.
2381         * auto-inc-dec.c (attempt_change, get_next_ref, find_inc): Likewise.
2382         * ifcvt.c (noce_get_alt_condition, noce_try_abs,
2383         noce_process_if_block): Likewise.
2384         * gcse.c (compute_local_properties, insert_expr_in_table,
2385         insert_set_in_table, canon_list_insert, find_avail_set,
2386         pre_insert_copy_insn): Likewise.
2387
2388         * basic-block.h (BLOCK_NUM): Move from here...
2389         * sched-int.h (BLOCK_NUM): ... to here to localize it in the scheduler.
2390
2391 2010-01-03  Richard Guenther  <rguenther@suse.de>
2392
2393         PR tree-optimization/42438
2394         * tree-ssa-pre.c (struct bb_bitmap_sets): Add
2395         contains_may_not_return_call flag.
2396         (BB_MAY_NOTRETURN): New.
2397         (valid_in_sets): Trapping nary operations are not valid
2398         in blocks that may not return.
2399         (insert_into_preds_of_block): Remove check for trapping expressions.
2400         (compute_avail): Compute also BB_MAY_NOTRETURN.
2401
2402 2010-01-03  Gerald Pfeifer  <gerald@pfeifer.com>
2403
2404         * doc/invoke.texi: Add 2010 to copyright years.
2405
2406 2010-01-03  Eric Botcazou  <ebotcazou@adacore.com>
2407
2408         * config/sparc/sparc.c: Fix formatting nits.
2409
2410 2010-01-02  Gerald Pfeifer  <gerald@pfeifer.com>
2411             Alexander Monakov  <amonakov@ispras.ru>
2412
2413         * doc/invoke.texi (Optimize Options): Reword introduction a bit.
2414
2415 2010-01-02  Richard Guenther  <rguenther@suse.de>
2416
2417         PR middle-end/42577
2418         * tree-vrp.c (check_all_array_refs): Skip non-excutable blocks.
2419         (simplify_switch_using_ranges): Mark to be removed edges
2420         as non-executable.
2421
2422 2010-01-02  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2423
2424         * config/pa/t-slibgcc-dwarf-ver (SHLIB_SOVERSION): Bump by two.
2425
2426         * collect2.c (scan_libraries): Add missing argument in call to
2427         scan_prog_file.
2428
2429 2010-01-02  Uros Bizjak  <ubizjak@gmail.com>
2430
2431         PR target/42448
2432         * config/alpha/predicates.md (aligned_memory_operand): Return false
2433         for CQImode.
2434         (unaligned_memory_operand): Return true for CQImode.
2435         * config/alpha/alpha.c (get_aligned_mem): Assert that location
2436         doesn not cross aligned SImode word boundary.
2437
2438 2010-01-02  Anatoly Sokolov  <aesok@post.ru>
2439
2440         * config/avr/avr.h (REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P, XEXP_):
2441         Remove.
2442         * config/avr/avr-protos.h (avr_init_once, avr_optimization_options,
2443         avr_change_section, avr_reg_class_from_letter) : Remove declaration.
2444
2445 2010-01-02  Richard Guenther  <rguenther@suse.de>
2446
2447         PR lto/41597
2448         * toplev.c (compile_file): Emit LTO marker properly.  Change
2449         it to __gnu_lto_v1.
2450         * collect2.c (scan_prog_file): Adjust for changed LTO marker.
2451
2452 2010-01-01  Richard Guenther  <rguenther@suse.de>
2453
2454         PR debug/42455
2455         * tree-sra.c (analyze_all_variable_accesses): Work in DECL_UID order.
2456
2457 2010-01-01  Richard Guenther  <rguenther@suse.de>
2458
2459         PR c/42570
2460         * c-decl.c (grokdeclarator): For zero-size arrays force
2461         structural equality checks as layout_type does.
2462
2463 2010-01-01  H.J. Lu  <hongjiu.lu@intel.com>
2464
2465         * builtins.c: Update copyright to 2010.
2466
2467 2010-01-01  H.J. Lu  <hongjiu.lu@intel.com>
2468
2469         PR lto/42531
2470         * lto-streamer-out.c (produce_asm): Revert the last change.
2471         (copy_function): Likewise.
2472
2473         * lto-streamer.c (lto_get_section_name): Skip any leading
2474         asterisk in name.
2475
2476 2010-01-01  Richard Guenther  <rguenther@suse.de>
2477
2478         PR middle-end/42559
2479         * builtins.c (get_object_alignment): Do not use DECL_ALIGN
2480         for LABEL_DECLs.
2481
2482 \f
2483 Copyright (C) 2010 Free Software Foundation, Inc.
2484
2485 Copying and distribution of this file, with or without modification,
2486 are permitted in any medium without royalty provided the copyright
2487 notice and this notice are preserved.