OSDN Git Service

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