OSDN Git Service

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