OSDN Git Service

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