OSDN Git Service

PR bootstrap/35218
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
1 2008-02-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2
3         PR bootstrap/35218
4         * Makefile.in (build_file_translate): New.
5         (gcc-vers.texi): Use it for translating $(abs_srcdir).
6         * config.build (build_file_translate): Set to `CMD //c' on MinGW.
7         * configure.ac (build_file_translate): Substitute it.
8         * configure: Regenerate.
9
10 2008-02-19  Jan Hubicka  <jh@suse.cz>
11
12         PR rtl-optimization/34408
13         * see.c (see_def_extension_not_merged): Copy subreg so we don't have invalid sharing.
14
15 2008-02-19  Jan Hubicka  <jh@suse.cz>
16
17         PR middle-end/28779
18         * tree-inline.c (estimate_num_insns_1): Fix counting of cost of call_expr.
19
20 2008-02-19  H.J. Lu  <hongjiu.lu@intel.com>
21
22         PR Ada/35186
23         * config/i386/i386-modes.def: Revert the last DI alignment
24         change until Ada people can look into it.
25
26 2008-02-19  Nick Clifton  <nickc@redhat.com>
27
28         * opts.c (print_specific_help): Fix typo in --help text.
29
30 2008-02-19  Jakub Jelinek  <jakub@redhat.com>
31
32         PR target/35239
33         * config/i386/cpuid.h (__cpuid, __get_cpuid_max): Use special
34         32-bit inline asm without asm alternatives for host GCC < 3.0.
35
36 2008-02-19  Richard Guenther  <rguenther@suse.de>
37
38         PR tree-optimization/34989
39         * tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Re-structure.
40         Allow propagation to INDIRECT_REF if we can simplify only.
41
42 2008-02-19  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
43
44         * c-common.c (warn_for_collisions_1): Use appropriate option when
45         warning.
46
47 2008-02-19  Nick Clifton  <nickc@redhat.com>
48
49         PR other/31349
50         * opts.c (undocumented_msg): Leave blank unless checking is
51         enabled.
52         (handle_options): Fix indentation.
53         (print_filtered_help): If no language-specific options were
54         displayed tell the user how to list all the options supported by
55         the language's front-end.
56         (print_specific_help): Fix indentation and remove duplicate line.
57         (common_handle_option): Handle the -v option.
58         For --help enable the display of undocumented options if the -v
59         switch has been included on the command line.
60         For --help= check for overlaps in the arguments between the option
61         classes and the language names and issue a warning when they
62         cannot be disambiguated.
63         * c.opt (v): Pass on to the common option handler.
64
65 2008-02-19  Revital Eres  <eres@il.ibm.com> 
66
67         * modulo-sched.c (sms_schedule): Change dump message when
68         create_ddg function fails.
69         (try_scheduling_node_in_cycle): Rename row to cycle.
70         (print_partial_schedule): Rename CYCLE to ROW.
71
72 2008-02-19  Christian Bruel  <christian.bruel@st.com>
73             Zdenek Dvorak  <ook@ucw.cz>
74         
75         * tree-ssa-loop-ivopts.c (may_be_unaligned_p): Check step alignment.
76         
77 2008-02-19  Uros Bizjak  <ubizjak@gmail.com>
78
79         PR target/33555
80         * config/i386/i386.md (*x86_movsicc_0_m1_se): New insn pattern.
81         (*x86_movdicc_0_m1_se): Ditto.
82
83 2008-02-19  Uros Bizjak  <ubizjak@gmail.com>
84
85         * config/i386/sfp-machine.h (__gcc_CMPtype): New typedef.
86         (CMPtype): Define as __gcc_CMPtype.
87         * config/rs6000/sfp-machine.h (__gcc_CMPtype): New typedef.
88         (CMPtype): Define as __gcc_CMPtype.
89
90 2008-02-19  Hans-Peter Nilsson  <hp@axis.com>
91
92         Support valgrind 3.3 for --enable-checking=valgrind.
93         * system.h: Consolidate ENABLE_VALGRIND_CHECKING-dependent defines
94         here.
95         [!VALGRIND_MAKE_MEM_NOACCESS]: Define as VALGRIND_MAKE_NOACCESS.
96         [!VALGRIND_MAKE_MEM_DEFINED]: Define as VALGRIND_MAKE_READABLE.
97         [!VALGRIND_MAKE_MEM_UNDEFINED]: Define as VALGRIND_MAKE_WRITABLE.
98         * ggc-common.c: Remove ENABLE_VALGRIND_CHECKING-dependent defines.
99         Replace use of VALGRIND_MAKE_READABLE, VALGRIND_MAKE_WRITABLE, and
100         VALGRIND_MAKE_NOACCESS with VALGRIND_MAKE_MEM_DEFINED,
101         VALGRIND_MAKE_MEM_UNDEFINED, and VALGRIND_MAKE_MEM_NOACCESS
102         respectively.
103         * ggc-zone.c: Similar.
104         * ggc-page.c: Similar.
105
106 2008-02-19  Paul Brook  <paul@codesourcery.com>
107
108         PR target/35071
109         * config/arm/ieee754-df.S: Fix do_it typo.
110         * config/arm/ieee754-sf.S: Fix do_it typo.
111
112 2008-02-18  H.J. Lu  <hongjiu.lu@intel.com>
113
114         PR target/35189
115         * config/i386/i386.c (OPTION_MASK_ISA_MMX_SET): New.
116         (OPTION_MASK_ISA_3DNOW_SET): Likewise.
117         (OPTION_MASK_ISA_SSE_SET): Likewise.
118         (OPTION_MASK_ISA_SSE2_SET): Likewise.
119         (OPTION_MASK_ISA_SSE3_SET): Likewise.
120         (OPTION_MASK_ISA_SSSE3_SET): Likewise.
121         (OPTION_MASK_ISA_SSE4_1_SET): Likewise.
122         (OPTION_MASK_ISA_SSE4_2_SET): Likewise.
123         (OPTION_MASK_ISA_SSE4_SET): Likewise.
124         (OPTION_MASK_ISA_SSE4A_SET): Likewise.
125         (OPTION_MASK_ISA_SSE5_SET): Likewise.
126         (OPTION_MASK_ISA_3DNOW_A_UNSET): Likewise.
127         (OPTION_MASK_ISA_MMX_UNSET): Updated.
128         (OPTION_MASK_ISA_3DNOW_UNSET): Updated.
129         (OPTION_MASK_ISA_SSE_UNSET): Likewise.
130         (OPTION_MASK_ISA_SSE3_UNSET): Likewise.
131         (OPTION_MASK_ISA_SSSE3_UNSET): Likewise.
132         (OPTION_MASK_ISA_SSE4_1_UNSET): Likewise.
133         (OPTION_MASK_ISA_SSE4_2_UNSET): Likewise.
134         (OPTION_MASK_ISA_SSE4A_UNSET): Likewise.
135         (OPTION_MASK_ISA_SSE5_UNSET): Likewise.
136         (OPTION_MASK_ISA_SSE4): Removed.
137         (ix86_handle_option): Turn on bits in ix86_isa_flags and
138         ix86_isa_flags_explicit with OPTION_MASK_ISA_XXX_SET for
139         -mXXX.
140         (override_options): Don't turn on implied SSE/MMX bits in
141         ix86_isa_flags.
142
143 2008-02-18  H.J. Lu  <hongjiu.lu@intel.com>
144
145         * config/i386/i386-modes.def: Use 4 byte alignment on DI for
146         32bit host.
147
148 2008-02-18  Joey Ye  <joey.ye@intel.com>
149
150         PR middle-end/34921
151         * tree-nested.c (insert_field_into_struct): Set type alignment
152         to field alignment if the former is less than the latter.
153
154 2008-02-18  Jakub Jelinek  <jakub@redhat.com>
155
156         * BASE-VER: Set to 4.4.0.
157
158 2008-02-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
159
160         * doc/c-tree.texi: Use @dots{} and @enddots{} where appropriate.
161         * doc/cfg.texi: Likewise.
162         * doc/extend.texi: Likewise.
163         * doc/gty.texi: Likewise.
164         * doc/invoke.texi: Likewise.
165         * doc/loop.texi: Likewise.
166         * doc/md.texi: Likewise.
167         * doc/passes.texi: Likewise.
168         * doc/rtl.texi: Likewise.
169         * doc/sourcebuild.texi: Likewise.
170         * doc/tm.texi: Likewise.
171         * doc/tree-ssa.texi: Likewise.
172
173 2008-02-17  Richard Guenther  <rguenther@suse.de>
174
175         PR middle-end/35227
176         * tree-complex.c (init_parameter_lattice_values): Handle parameters
177         without default definition.
178
179 2008-02-17  Richard Guenther  <rguenther@suse.de>
180
181         PR tree-optimization/35231
182         * tree-vrp.c (register_edge_assert_for): Do not assume A == 0
183         if A | B != 1.
184
185 2008-02-17  Uros Bizjak  <ubizjak@gmail.com>
186
187         Revert:
188
189         2008-02-15  Uros Bizjak  <ubizjak@gmail.com>    
190         * config/i386/sfp-machine.h (CMPtype): Define as typedef using
191         libgcc_cmp_return mode.
192
193 2008-02-16  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
194
195         PR c/28368
196         * doc/invoke.texi (-std): Clarify description of -std= and -ansi.
197
198 2008-02-16  Ralf Corsepius  <ralf.corsepius@rtems.org>
199
200         * config/m68k/t-rtems (M68K_MLIB_CPU): Add 5208, 5307, 5407, 5475
201         multilibs.
202
203 2008-02-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
204
205         * doc/c-tree.texi: Use `@.' where appropriate.
206         * doc/extend.texi: Likewise.
207         * doc/install.texi: Likewise.
208         * doc/invoke.texi: Likewise.
209         * doc/loop.texi: Likewise.
210         * doc/makefile.texi: Likewise.
211         * doc/md.texi: Likewise.
212         * doc/passes.texi: Likewise.
213         * doc/standards.texi: Likewise.
214         * doc/tm.texi: Likewise.
215
216 2008-02-15  Jakub Jelinek  <jakub@redhat.com>
217
218         PR middle-end/35196
219         * omp-low.c (expand_omp_for_generic): Don't initialize fd->v
220         in entry_bb.
221         (expand_omp_for_static_nochunk): Initialize fd->v in seq_start_bb
222         rather than in entry_bb.
223
224 2008-02-15  Uros Bizjak  <ubizjak@gmail.com>
225
226         * config/i386/sfp-machine.h (CMPtype): Define as typedef using
227         libgcc_cmp_return mode.
228
229 2008-02-15  Jakub Jelinek  <jakub@redhat.com>
230
231         PR middle-end/35130
232         * tree-nested.c (convert_call_expr): Put FRAME.* vars into
233         OMP_CLAUSE_SHARED rather than OMP_CLAUSE_FIRSTPRIVATE clause.
234
235 2008-02-15  Richard Guenther  <rguenther@suse.de>
236             Zdenek Dvorak  <ook@ucw.cz>
237
238         PR tree-optimization/35164
239         * tree-flow.h (stmt_references_abnormal_ssa_name): Declare.
240         * tree-dfa.c (stmt_references_abnormal_ssa_name): New function.
241         * tree-ssa-forwprop.c (tree_ssa_forward_propagate_single_use_vars):
242         Only propagate addresses which do not have abnormal SSA_NAMEs
243         in their operands.
244
245 2008-02-15  Joseph Myers  <joseph@codesourcery.com>
246
247         PR target/35088
248         * config/m68k/m68k.h (DWARF_CIE_DATA_ALIGNMENT): Define.
249
250 2008-02-15  Jan Hubicka  <jh@suse.cz>
251
252         PR middle-end/35149
253         * ipa.c (cgraph_remove_unreachable_nodes): Clear local.inlinable flag.
254
255 2008-02-15  Uros Bizjak  <ubizjak@gmail.com>
256
257         PR middle-end/34621
258         * function.c (pad_to_arg_alignment): Remove test for STACK_BOUNDARY
259         when calculating alignment_pad.
260
261 2008-02-15  Uros Bizjak  <ubizjak@gmail.com>
262
263         * config/i386/i386.h (CLEAR_RATIO): Use MIN macro.
264         (WIDEST_HARDWARE_FP_SIZE): Use LONG_DOUBLE_TYPE_SIZE define.
265         * config/i386/darwin.h (PREFERRED_STACK_BOUNDARY): Use MAX macro
266         and STACK_BOUNDARY define.
267
268 2008-02-14  Danny Smith  <dannysmith@users.sourceforge.net>
269
270         PR preprocessor/35061
271         * c-pragma.c (handle_pragma_pop_macro): Check that
272         pushed_macro_table has been allocated.
273
274 2008-02-14  Eric Botcazou  <ebotcazou@adacore.com>
275
276         PR middle-end/35136
277         * gimplify.c (force_gimple_operand_bsi): Revert 2008-02-12 change.
278         (force_gimple_operand): Likewise.
279         * tree-ssa-loop-ivopts.c (may_be_nonaddressable_p): Add new cases
280         for TARGET_MEM_REF and CONVERT_EXPR/NON_LVALUE_EXPR/NOP_EXPR.
281         Also recurse on the operand for regular VIEW_CONVERT_EXPRs.
282         (find_interesting_uses_address): Check addressability and alignment
283         of the base expression only after substituting bases of IVs into it.
284
285 2008-02-14  Michael Matz  <matz@suse.de>
286
287         PR target/34930
288         * function.c (instantiate_virtual_regs_in_insn): Reload address
289         before falling back to reloading the whole operand.
290
291 2008-02-14  Andreas Krebbel  <krebbel1@de.ibm.com>
292
293         * config/s390/s390.c (s390_mainpool_start): Emit the pool
294         before the first section switch note.
295
296 2008-02-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
297
298         * doc/bugreport.texi: Update copyright years.
299         * doc/c-tree.texi: Likewise.
300         * doc/cfg.texi: Likewise.
301         * doc/cpp.texi: Likewise.
302         * doc/cppinternals.texi: Likewise.
303         * doc/fragments.texi: Likewise.
304         * doc/frontends.texi: Likewise.
305         * doc/gcc.texi: Likewise.
306         * doc/gty.texi: Likewise.
307         * doc/hostconfig.texi: Likewise.
308         * doc/implement-c.texi: Likewise.
309         * doc/libgcc.texi: Likewise.
310         * doc/loop.texi: Likewise.
311         * doc/makefile.texi: Likewise.
312         * doc/options.texi: Likewise.
313         * doc/passes.texi: Likewise.
314         * doc/rtl.texi: Likewise.
315         * doc/sourcebuild.texi: Likewise.
316         * doc/standards.texi: Likewise.
317         * doc/tree-ssa.texi: Likewise.
318         * doc/trouble.texi: Likewise.
319
320         * doc/extend.texi: Use @: or add comma where appropriate.
321         * doc/invoke.texi: Likewise.
322         * doc/tm.texi: Likewise.
323
324 2008-02-14  Alan Modra  <amodra@bigpond.net.au>
325
326         PR target/34393
327         * config/rs6000/rs6000.md (restore_stack_block): Force operands[1]
328         to a reg.
329
330 2008-02-14  Jesper Nilsson  <jesper.nilsson@axis.com>
331
332         * doc/md.texi (clz, ctz): Add reference.
333         * doc/rtl.texi (clz, ctz): Likewise.
334
335 2008-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
336
337         PR other/35148
338         * Makefile.in (gcc-vers.texi): Use abs_srcdir for the value of
339         srcdir.
340
341 2008-02-13  Andreas Krebbel  <krebbel1@de.ibm.com>
342
343         * config/s390/s390.c (struct constant_pool): New field
344         emit_pool_after added.
345         (s390_mainpool_start): Set the emit_pool_after flag according
346         to the section switch notes.
347         (s390_mainpool_finish): Consider emit_pool_after when emitting
348         the literal pool at the end of the function.
349         (s390_chunkify_start): Force literal pool splits at section
350         switch notes.
351
352 2008-02-13  Michael Matz  <matz@suse.de>
353
354         PR debug/35065
355         * var-tracking.c (clobber_variable_part): Correctly traverse the
356         list.
357
358 2008-02-13  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
359
360         PR 29673
361         * doc/invoke.texi (Debugging Options): Remove -fdump-tree-inlined.
362         Add -fdump-ipa-inline.
363         * tree-dump.c (dump_files): Remove tree-inlined dump.
364         * tree-pass.h (tree_dump_index): Remove TDI_inlined.
365         
366 2008-02-12  Richard Guenther  <rguenther@suse.de>
367
368         PR tree-optimization/35171
369         * tree-vect-patterns.c (vect_recog_dot_prod_pattern): Deal with
370         default defs.
371
372 2008-02-12  Richard Guenther  <rguenther@suse.de>
373
374         PR middle-end/35163
375         * fold-const.c (fold_widened_comparison): Use get_unwidened in
376         value-preserving mode.  Disallow final truncation.
377
378 2008-02-12  Eric Botcazou  <ebotcazou@adacore.com>
379
380         PR middle-end/35136
381         * gimplify.c (force_gimple_operand_bsi): Move SSA renaming
382         code from here to...
383         (force_gimple_operand): ...here.
384
385 2008-02-12  Jakub Jelinek  <jakub@redhat.com>
386
387         PR c++/35144
388         * tree-sra.c (sra_build_assignment): fold_convert SRC if copying
389         non-compatible pointers.
390         (generate_element_copy): If SRC and DST are RECORD_TYPEs with
391         different FIELD_DECLs, try harder by comparing field offsets, sizes
392         and types.
393
394         PR inline-asm/35160
395         * function.c (match_asm_constraints_1): Don't replace the same input
396         multiple times.
397
398 2008-02-12  Anatoly Sokolov <aesok@post.ru>
399
400         * config/avr/avr.h (AVR_HAVE_RAMPZ): Define.
401         * config/avr/avr.c (expand_prologue): Save RAMPZ register.
402         (expand_epilogue): Restore RAMPZ register.
403         * config/avr/avr.md (RAMPZ_ADDR): New constant.
404
405 2008-02-11  Kai Tietz  <kai.tietz@onevision.com>
406
407         * config/i386/cygwin.asm: (__alloca): Correct calling
408         convention and alignment.
409         (__chkstk): Force 8 byte stack alignment.
410
411 2008-02-11  Uros Bizjak  <ubizjak@gmail.com>
412             Richard Guenther  <rguenther@suse.de>
413
414         PR tree-optimization/33992
415         * tree-ssa-loop-im.c (rewrite_bittest): Fixup the type of
416         the zero we compare against.
417
418 2008-02-10  Danny Smith  <dannysmith@users.sourceforge.net>
419
420         PR libfortran/35063
421         * gthr-win32.h (__gthread_mutex_destroy_function): New function
422         to CloseHandle after unlocking to prevent accumulation of handle
423         count.
424
425 2008-02-09  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
426
427         PR middle_end/34150
428         * pa.c (legitimize_pic_address): Add REG_EQUAL note on sets with a
429         pic_label_operand source.  Similarly, add a REG_LABEL_OPERAND note
430         and update LABEL_NUSES during and after reload.
431
432 2008-02-08  Steven Bosscher  <stevenb.gcc@gmail.com>
433
434         PR middle-end/34627
435         * combine.c (simplify_if_then_else): Make sure the comparison is
436         against const0_rtx when simplifying to (abs x) or (neg (abs X)).
437
438 2008-02-08  Richard Sandiford  <rsandifo@nildram.co.uk>
439
440         PR bootstrap/35051
441         * double-int.h: Don't include gmp.h for GENERATOR_FILEs.
442         (mpz_set_double_int, mpz_get_double_int): Hide from GENERATOR_FILEs.
443         * real.h: Don't include gmp.h or mpfr.h for GENERATOR_FILEs.
444         (real_from_mpfr, mpfr_from_real): Hide from GENERATOR_FILEs.
445         * tree.h (get_type_static_bounds): Likewise.
446
447 2008-02-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
448
449         * doc/invoke.texi (Option Summary, C++ Dialect Options)
450         (Objective-C and Objective-C++ Dialect Options, Warning Options):
451         Make -Wfoo language annotations match what the compiler outputs.
452
453 2008-02-08  Sa Liu  <saliu@de.ibm.com>
454
455         * config/spu/spu-builtins.def: Fixed wrong parameter type in spu 
456         intrinsics spu_convts, spu_convtu, spu_convtf.
457         * testsuite/gcc.target/spu/intrinsics-3.c: New. Test error messages.
458
459 2008-02-08  Hans-Peter Nilsson  <hp@axis.com>
460
461         * doc/extend.texi (Function Attributes) <noinline>: Mention
462         asm ("") as method to keep calls.
463
464 2008-02-07  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
465
466         PR other/32754
467         * doc/options.texi (Options): Replace references to opts.sh with
468         optc-gen.awk.
469         * opts-common.c: Likewise.
470         * optc-gen.awk: Likewise.
471         
472 2008-02-07  Andreas Krebbel  <krebbel1@de.ibm.com>
473
474         * config/s390/s390.h (FUNCTION_ARG_REGNO_P): Fix fprs for 64 bit.
475
476 2008-02-07  Richard Henderson  <rth@redhat.com>
477
478         PR rtl-opt/33410
479         * config/alpha/alpha.c (alpha_emit_xfloating_compare): Use an
480         EXPR_LIST for the REG_EQUAL instead of a comparison with a 
481         funny mode.
482
483 2008-02-07  Uros Bizjak  <ubizjak@gmail.com>
484
485         PR tree-optimization/35085
486         * tree-ssa-reassoc.c (rewrite_expr_tree): Enable destructive update
487         for operand entry oe2 in addition to operand entry oe3 in order to
488         expose more opportunities for vectorizer sum reduction.
489
490 2008-02-06  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
491
492         PR other/35107
493         * Makefile.in (LIBS): Remove $(GMPLIBS).
494         (cc1-dummy, cc1): Add $(GMPLIBS).
495
496 2008-02-06  Jan Hubicka  <jh@suse.cz>
497
498         PR target/23322
499         * i386.md (moddf_integer): Do not produce partial memory stalls for
500         targets where it hurts.
501
502 2008-02-06  Uros Bizjak  <ubizjak@gmail.com>
503
504         PR target/35083
505         * optabs.c (expand_float): Do not check for decimal modes when
506         expanding unsigned integer through signed conversion.
507
508 2008-02-06  Nick Clifton  <nickc@redhat.com>
509
510         * config/stormy16/stormy16.md (eqbranchsi): Replace a match_dup
511         inside the clobber with a match_operand and duplicated operand
512         number in the constraint.
513         (ineqbranchsi): Delete redundant comment.
514
515 2008-02-06  Ralf Corsepius  <ralf.corsepius@rtems.org>
516
517         * config/arm/rtems-elf.h (TARGET_OS_CPP_BUILTINS): Add 
518         builtin_define ("__USE_INIT_FINI__").
519         * config/h8300/t-rtems (MULTILIB_OPTION,MULTILIB_DIRNAMES): Add
520         -msx multilibs.
521         * gthr-rtems.h: Remove __GTHREAD_MUTEX_INIT.
522
523 2008-02-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
524
525         PR documentation/30330
526         * doc/invoke.texi (C++ Dialect Options)
527         (Objective-C and Objective-C++ Dialect Options, Warning Options):
528         For each warning option -Wfoo that allows -Wno-foo, ensure both
529         -Wfoo and -Wno-foo are listed in the option index.  Fix index
530         entry of -Wswitch-default, index -Wnormalized= including the
531         `=', and -Wlarger-than-@var{len} including @var{len}.
532
533 2008-02-05  Uros Bizjak  <ubizjak@gmail.com>
534
535         * config/i386/i386.md (floatunssisf2): Use
536         ix86_expand_convert_uns_sisf_sse also for TARGET_SSE.
537         (floatunssi<mode>2): Rename from floatunssisf2 and floatunssidf2.
538         Macroize expander using MODEF mode iterator.
539
540 2008-02-05  Diego Novillo  <dnovillo@google.com>
541
542         http://gcc.gnu.org/ml/gcc-patches/2008-02/msg00140.html
543
544         PR 33738
545         * tree-vrp.c (vrp_evaluate_conditional): Revert fix for PR 33738.
546
547 2008-02-05  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
548
549         PR other/35070
550         * toplev.c (print_version): Honor `indent' for GMP/MPFR warnings.
551
552 2008-02-05  H.J. Lu  <hongjiu.lu@intel.com>
553
554         PR target/35084
555         * config/i386/i386.c (ix86_function_sseregparm): Add an arg
556         to indicate if a message should be generated.
557         (init_cumulative_args): Updated.
558         (function_value_32): Likewise.
559
560 2008-02-05  Joseph Myers  <joseph@codesourcery.com>
561
562         * doc/include/texinfo.tex: Update to version 2008-02-04.16.
563
564 2008-02-05  Uros Bizjak  <ubizjak@gmail.com>
565
566         PR target/35083
567         * config/i386/i386.md (floatunsisf2): Enable for TARGET_SSE_MATH only.
568         Call ix86_expand_convert_uns_sisf_sse for TARGET_SSE2.
569
570 2008-02-04  Diego Novillo  <dnovillo@google.com>
571
572         http://gcc.gnu.org/ml/gcc-patches/2008-02/msg00110.html
573
574         PR 33738
575         * tree-vrp.c (vrp_evaluate_conditional): With
576         -Wtype-limits, emit a warning when comparing against a
577         constant outside the natural range of OP0's type.
578
579 2008-02-04  Richard Guenther  <rguenther@suse.de>
580
581         PR middle-end/33631
582         * expr.c (count_type_elements): Give for unions instead of
583         guessing.
584
585 2008-02-04  Richard Guenther  <rguenther@suse.de>
586
587         PR middle-end/35043
588         * gimplify.c (gimplify_init_ctor_eval): Convert array indices
589         to TYPE_DOMAINs base type instead of using bitsizetype here.
590
591 2008-02-03  Jason Merrill  <jason@redhat.com>
592
593         * print-tree.c (print_node) [CONSTRUCTOR]: Print elements.
594
595 2008-02-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
596
597         PR other/29972
598         * doc/invoke.texi (C++ Dialect Options, Optimize Options)
599         (HPPA Options, i386 and x86-64 Options, IA-64 Options)
600         (RS/6000 and PowerPC Options): Fix typos and markup.
601         * doc/passes.texi (Tree-SSA passes): Likewise.
602
603 2008-02-02  Michael Matz  <matz@suse.de>
604
605         PR target/35045
606         * postreload-gcse.c (record_last_reg_set_info_regno): Renamed
607         from record_last_reg_set_info.
608         (record_last_reg_set_info): Take an RTX argument, iterate over all
609         constituent hardregs.
610         (record_last_set_info, record_opr_changes): Change calls to
611         new signature or to record_last_reg_set_info_regno.
612
613 2008-02-02  Gerald Pfeifer  <gerald@pfeifer.com>
614
615         * doc/extend.texi (X86 Built-in Functions): Fix grammar.
616
617 2008-02-01  Hans-Peter Nilsson  <hp@axis.com>
618
619         PR rtl-optimization/34773
620         * reg-notes.def (EQUAL): Mention significance of combination of
621         REG_EQUAL and REG_RETVAL.
622         * fwprop.c (try_fwprop_subst): Don't add REG_EQUAL to an
623         insn that has a REG_RETVAL.
624
625 2008-02-01  Roger Sayle  <roger@eyesopen.com>
626
627         PR bootstrap/33781
628         * configure.ac (--enable-fixed-point): Disable unless explicitly
629         requested on IRIX.
630         * configure: Regenerate.
631
632 2008-02-01  Richard Guenther  <rguenther@suse.de>
633
634         PR other/35042
635         * invoke.texi (-finline-limit): Remove no longer true parts
636         of the documentation.  Note that there is no default value.
637
638 2008-02-01  Andrew Pinski  <pinskia@gmail.com>
639             Mark Mitchell  <mark@codesourcery.com>
640             Ben Elliston  <bje@au.ibm.com>
641
642         PR c/29326
643         * doc/extend.texi (Other Builtins): Document.
644
645 2008-01-31  Tom Browder <tom.browder@gmail.com>
646
647         * doc/c-tree.texi (Types): Fix grammar.
648         (Expression trees): Ditto.
649         * doc/passes.texi (Tree-SSA passes): Ditto.
650         
651         * doc/configterms.texi (Configure Terms): Fix typo.
652         * doc/cpp.texi (Common Predefined Macros): Ditto.
653         * doc/md.texi (Machine Constraints): Ditto.
654         
655         * doc/makefile.texi (Makefile): Add comma.
656
657 2008-01-31  Tom Browder  <tom.browder@gmail.com>
658             Gerald Pfeifer  <gerald@pfeifer.com>
659         
660         * doc/sourcebuild.texi (Front End): Remove references to CVS
661         and CVSROOT/modules.
662         (Texinfo Manuals): Replace reference to CVS by one to SVN.
663         (Back End): Remove reference to CVS.
664
665 2008-01-31  Richard Sandiford  <rsandifo@nildram.co.uk>
666
667         PR target/34900
668         * config/mips/mips.c (gen_load_const_gp): New function, taking a
669         comment from...
670         (mips16_gp_pseudo_reg): ...here.
671         * config/mips/mips.md (load_const_gp): Replace with...
672         (load_const_gp_<mode>): ...this :P-based insn.
673
674 2008-01-31  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
675
676         * doc/invoke.texi (-ansi): Mention explicitly corresponding -std=
677         options. Minor fixes.
678         (-std): Move reference to standards closer to where language
679         standards are first mentioned.
680         
681 2008-01-31  Richard Sandiford  <rsandifo@nildram.co.uk>
682
683         PR rtl-optimization/34995
684         * reload.c (alternative_allows_const_pool_ref): Take an rtx
685         parameter and return a bool.  If the rtx parameter is nonnull,
686         check that it satisfies an EXTRA_MEMORY_CONSTRAINT.
687         (find_reloads): Update call accordingly.  Pass the new operand
688         if it needed no address reloads, otherwise pass null.
689
690 2008-01-30  Richard Henderson  <rth@redhat.com>
691
692         PR c/34993
693         * tree.c (build_type_attribute_qual_variant): Skip TYPE_DOMAIN
694         for unbounded arrays.
695
696 2008-01-30  Silvius Rus  <rus@google.com>
697
698         * config/i386/xmmintrin.h (_mm_prefetch): Add const to first arg.
699
700 2008-01-30  Jan Hubicka  <jh@suse.cz>
701
702         PR target/34982
703         * i386.c (init_cumulative_args): Use real function declaration when
704         calling locally.
705
706 2008-01-30  Richard Sandiford  <rsandifo@nildram.co.uk>
707
708         PR rtl-optimization/34998
709         * global.c (build_insn_chain): Treat non-subreg_lowpart
710         SUBREGs of pseudos as clobbering all the words covered by the
711         SUBREG, not just all the bytes.
712         * ra-conflict.c (clear_reg_in_live): Likewise.  Take the
713         original df_ref rather than an extract parameter.
714         (global_conflicts): Update call accordingly.
715
716 2008-01-30  Andreas Krebbel  <krebbel1@de.ibm.com>
717
718         * config/s390/fixdfdi.h (__fixunstfdi, __fixtfdi): Rearrange
719         the overflow check to make it easier to read.
720         (__fixtfdi): Change the type of the ll member in union
721         long_double to UDItype_x.
722
723 2008-01-30  Jakub Jelinek  <jakub@redhat.com>
724
725         PR middle-end/34969
726         * cgraph.h (cgraph_update_edges_for_call_stmt): New prototype.
727         * cgraph.c (cgraph_update_edges_for_call_stmt): New function.
728         * tree-inline.c (fold_marked_statements): Call
729         cgraph_update_edges_for_call_stmt if folding a call statement.
730         * cgraphunit.c (verify_cgraph_node): Set cfun to this_cfun for
731         debug_generic_stmt calls, reset it back afterwards.
732
733         PR c/35017
734         * c-decl.c (start_decl): Don't pedwarn about TREE_READONLY
735         static decls.
736         * c-typeck.c (build_external_ref): Don't pedwarn about
737         static vars in current function's scope.
738
739 2008-01-29  Joseph Myers  <joseph@codesourcery.com>
740
741         * config.gcc (i[34567]86-*-nto-qnx*): Remove deprecation.
742
743 2008-01-29  Bernhard Fischer  <aldot@gcc.gnu.org>
744
745         PR c/35002
746         * ipa-struct-reorg.c: Fix spelling.
747         * params.def: Ditto.
748
749 2008-01-29  Richard Guenther  <rguenther@suse.de>
750
751         PR middle-end/35006
752         * tree-inline.h (struct copy_body_data): Add remapping_type_depth
753         field.
754         * tree-inline.c (remap_type): Increment remapping_type_depth
755         around remapping types.
756         (copy_body_r): Only add referenced variables if they are referenced
757         from code, not types.
758
759 2008-01-29  Douglas Gregor  <doug.gregor@gmail.com>
760
761         PR c++/34055
762         PR c++/34103
763         PR c++/34219
764         PR c++/34606
765         PR c++/34753
766         PR c++/34754
767         PR c++/34755
768         PR c++/34919
769         PR c++/34961
770         * c-pretty-print.c (pp_c_type_qualifier_list): Don't try to print
771         qualifiers for an ERROR_MARK_NODE or a NULL_TREE.
772
773 2008-01-28  Andy Hutchinson   <hutchinsonandy@netscape.net>
774
775         PR target/34412
776         * config/avr/avr.c (expand_prologue): Use correct QI mode frame 
777         pointer for tiny stack.
778
779 2008-01-28  Bernhard Fischer  <aldot@gcc.gnu.org>
780
781         * doc/tree-ssa.texi: Add cindex PHI nodes and improve wording.
782
783 2008-01-28  Bernhard Fischer  <aldot@gcc.gnu.org>
784
785         * config/vx-common.h: Fix typo in comment.
786
787 2008-01-28  Ian Lance Taylor  <iant@google.com>
788
789         PR c++/34862
790         PR c++/33407
791         * tree-ssa-copyrename.c (copy_rename_partition_coalesce): Don't
792         coalesce pointers if they have different DECL_NO_TBAA_P values.
793         * tree-ssa-copy.c (may_propagate_copy): Don't propagate copies
794         between variables with different DECL_NO_TBAA_P values.
795
796 2008-01-28  Nathan Froyd  <froydnj@codesourcery.com>
797
798         PR 31535
799         * config/rs6000/rs6000.c (small_data_operand): Vectors and floats
800         are not legitimate small data references on SPE targets.
801
802 2008-01-28  David Daney  <ddaney@avtrex.com>
803
804         * doc/install.texi (mips-*-*): Recommend binutils 2.18.
805
806 2008-01-28  David Daney  <ddaney@avtrex.com>
807
808         * doc/install.texi (--disable-libgcj-bc):  Reword documentation.
809
810 2008-01-27  Joseph Myers  <joseph@codesourcery.com>
811
812         * config.gcc (strongarm*-*, ep9312*-*, xscale*-*, parisc*-*,
813         m680[012]0-*, *-*-beos*, *-*-kaos*, *-*-linux*aout*,
814         *-*-linux*libc1*, *-*-solaris2.[0-6], *-*-solaris2.[0-6].*,
815         *-*-sysv*, *-*-windiss*, alpha*-*-unicosmk*, cris-*-aout,
816         hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*,
817         i[34567]86-sequent-ptx4*, i[34567]86-*-nto-qnx*,
818         i[34567]86-*-sco3.2v5*, i[34567]86-*-uwin*, powerpc-*-chorusos*,
819         vax-*-bsd*, vax-*-ultrix*): Mark obsolete.
820
821 2008-01-27  Bernhard Fischer  <aldot@gcc.gnu.org>
822
823         * basic-block.h (condjump_equiv_p): Fix comment.
824
825 2008-01-27  Bernhard Fischer  <aldot@gcc.gnu.org>
826
827         * tree-pretty-print.c (print_generic_decl, print_generic_stmt,
828         print_generic_stmt_indented): Fix comment.
829
830 2008-01-27  Bernhard Fischer  <aldot@gcc.gnu.org>
831
832         * configure.ac (__stack_chk_fail): Add detecion for availability
833         of SSP in uClibc by checking if __UCLIBC_HAS_SSP__ is defined.
834         * configure: Regenerate.
835
836 2008-01-26  Maxim Kuvyrkov  <maxim@codesourcery.com>
837
838         PR middle-end/34688
839         * final.c (output_addr_const): Handle TRUNCATE.
840
841 2008-01-26  Zdenek Dvorak  <ook@ucw.cz>
842
843         PR target/34711
844         * tree-ssa-loop-ivopts.c (comp_cost): New type.
845         (zero_cost, infinite_cost): New constants.
846         (struct cost_pair): Change type of cost to comp_cost.
847         (struct iv_ca): Change type of cand_use_cost and cost to comp_cost.
848         (new_cost, add_costs, sub_costs, compare_costs, infinite_cost_p):
849         New functions.
850         (set_use_iv_cost, force_expr_to_var_cost, force_var_cost,
851         split_address_cost, ptr_difference_cost, difference_cost,
852         get_computation_cost_at, get_computation_cost,
853         determine_use_iv_cost_generic, determine_use_iv_cost_address,
854         determine_use_iv_cost_condition, determine_use_iv_costs,
855         cheaper_cost_pair, iv_ca_recount_cost, iv_ca_set_no_cp,
856         iv_ca_set_cp, iv_ca_cost, iv_ca_new, iv_ca_dump, iv_ca_extend,
857         iv_ca_narrow, iv_ca_prune, try_improve_iv_set, find_optimal_iv_set):
858         Change type of cost to comp_cost.
859         (determine_iv_cost): Increase cost of non-original ivs, instead
860         of decreasing the cost of original ones.
861         (get_address_cost): Indicate the complexity of the addressing mode 
862         in comp_cost.
863         (try_add_cand_for): Prefer using ivs not specific to some object.
864         * tree-flow.h (force_expr_to_var_cost): Declaration removed.
865
866 2008-01-26  Peter Bergner  <bergner@vnet.ibm.com>
867             Janis Johnson  <janis187@us.ibm.com>
868
869         PR target/34814
870         * doc/tm.texi (TARGET_EXPAND_TO_RTL_HOOK): Document.
871         (TARGET_INSTANTIATE_DECLS): Likewise.
872         * target.h (expand_to_rtl_hook): New target hook.
873         (instantiate_decls): Likewise.
874         * function.c (instantiate_decl): Make non-static.  Rename to...
875         (instantiate_decl_rtl): ... this.
876         (instantiate_expr): Use instantiate_decl_rtl.
877         (instantiate_decls_1): Likewise.
878         (instantiate_decls): Likewise.
879         (instantiate_virtual_regs: Call new instantiate_decls taget hook.
880         * function.h (instantiate_decl_rtl): Add prototype.
881         * cfgexpand.c (target.h): New include.
882         (tree_expand_cfg): Call new expand_to_rtl_hook target hook.
883         * target-def.h (TARGET_EXPAND_TO_RTL_HOOK): New define.
884         (TARGET_INSTANTIATE_DECLS): Likewise.
885         (TARGET_INITIALIZER): New target hooks added.
886         * config/rs6000/rs6000-protos.h (rs6000_secondary_memory_needed_rtx):
887         New prototype.
888         * config/rs6000/rs6000.c (tree-flow.h): New include.
889         (machine_function): Add sdmode_stack_slot field.
890         (rs6000_alloc_sdmode_stack_slot): New function.
891         (rs6000_instantiate_decls): Likewise.
892         (rs6000_secondary_memory_needed_rtx): Likewise.
893         (rs6000_check_sdmode): Likewise.
894         (TARGET_EXPAND_TO_RTL_HOOK): Target macro defined.
895         (TARGET_INSTANTIATE_DECLS): Likewise.
896         (rs6000_hard_regno_mode_ok): Allow SDmode.
897         (num_insns_constant): Likewise.  Handle _Decimal32 constants.
898         (rs6000_emit_move): Handle SDmode.
899         (function_arg_advance): Likewise.
900         (function_arg): Likewise.
901         (rs6000_gimplify_va_arg): Likewise.  Add special handling of
902         SDmode var args for 32-bit compiles.
903         (rs6000_secondary_reload_class): Handle SDmode.
904         (rs6000_output_function_epilogue): Likewise.
905         (rs6000_function_value): Simplify if statement.
906         (rs6000_libcall_value): Likewise.
907         * config/rs6000/rs6000.h (SLOW_UNALIGNED_ACCESS): Handle SDmode.
908         (SECONDARY_MEMORY_NEEDED_RTX): Add define.
909         * config/rs6000/dfp.md (movsd): New define_expand and splitter.
910         (movsd_hardfloat): New define_insn.
911         (movsd_softfloat): Likewise.
912         (movsd_store): Likewise.
913         (movsd_load): Likewise.
914         (extendsddd2): Likewise.
915         (extendsdtd2): Likewise.
916         (truncddsd2): Likewise.
917         (movdd_hardfloat64): Fixup comment.
918         (UNSPEC_MOVSD_LOAD): New constant.
919         (UNSPEC_MOVSD_STORE): Likewise.
920
921 2008-01-26  Jakub Jelinek  <jakub@redhat.com>
922
923         PR c++/34965
924         * c-pretty-print.c (pp_c_exclusive_or_expression): Handle
925         TRUTH_XOR_EXPR.
926         (pp_c_logical_and_expression): Handle TRUTH_AND_EXPR.
927         (pp_c_logical_or_expression): Handle TRUTH_OR_EXPR.
928         (pp_c_expression): Handle TRUTH_AND_EXPR, TRUTH_OR_EXPR
929         and TRUTH_XOR_EXPR.
930
931 2008-01-26  David Edelsohn  <edelsohn@gnu.org>
932
933         PR target/34794
934         * config.gcc: Separate AIX 5.3 from AIX 6.1.
935         * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define
936         __LONGDOUBLE128 too.
937         * config/rs6000/aix61.h: New file.
938
939 2008-01-26  Richard Sandiford  <rsandifo@nildram.co.uk>
940
941         PR rtl-optimization/34959
942         * optabs.c (expand_unop): In libcall notes, give ffs, clz, ctz,
943         popcount and parity rtxes the same mode as their operand.
944         Truncate or extend the result to the return value's mode
945         if necessary.
946
947 2008-01-26  Richard Sandiford  <rsandifo@nildram.co.uk>
948
949         PR target/34981
950         * config/mips/mips-protos.h (mips_expand_call): Return an rtx.
951         * config/mips/mips.h (FIRST_PSEUDO_REGISTER): Rename FAKE_CALL_REGNO
952         to GOT_VERSION_REGNUM.
953         (CALL_REALLY_USED_REGISTERS): Set the GOT_VERSION_REGNUM entry to 0.
954         (EPILOGUE_USES): Include GOT_VERSION_REGNUM if TARGET_USE_GOT.
955         * config/mips/mips.c (mips_emit_call_insn): New function.
956         (mips_call_tls_get_addr): Call mips_expand_call directly.
957         (mips16_copy_fpr_return_value): Use mips_emit_call_insn rather than
958         emit_call_insn.
959         (mips16_build_call_stub): Likewise.  Return the call insn or null.
960         (mips_expand_call): Update the call to mips16_build_call_stub
961         accordingly and a remove redundant condition.  Assert that MIPS16
962         stubs do not use lazy binding.  Use mips_emit_call_insn and return
963         the call insn.
964         (mips_extra_live_on_entry): Include GOT_VERSION_REGNUM if
965         TARGET_USE_GOT.
966         (mips_hard_regno_mode_ok_p): Allow SImode for GOT_VERSION_REGNUM.
967         (mips_avoid_hazard): Remove hazard_set handling.
968         * config/mips/mips.md (UNSPEC_EH_RECEIVER): Rename to...
969         (UNSPEC_RESTORE_GP): ...this.
970         (UNSPEC_SET_GOT_VERSION, UNSPEC_UPDATE_GOT_VERSION): New constants.
971         (FAKE_CALL_REGNO): Rename to...
972         (GOT_VERSION_REGNUM): ...this.
973         (type): Add "ghost" value.  Add an associated insn reservation.
974         (hazard_set): Remove.
975         (exception_receiver): Rename to...
976         (restore_gp): ...this and update the unspec identifier accordingly.
977         (exception_receiver, nonlocal_got_receiver): New expanders.
978         (load_call<mode>): Use GOT_VERSION_REGNUM.  Don't set
979         FAKE_CALL_REGNO.  Remove hazard_set attribute.
980         (set_got_version, update_got_version): New patterns.
981
982 2008-01-26  Danny Smith  <dannysmith@users.sourceforge.net>
983
984         PR target/34970
985         * config/i386/cygming.h (ASM_OUTPUT_LABELREF): Define.
986
987 2008-01-25  Joseph Myers  <joseph@codesourcery.com>
988
989         PR other/31955
990         * doc/install.texi2html: Generate gcc-vers.texi.
991
992 2008-01-25  DJ Delorie  <dj@redhat.com>
993
994         * config/m32c/m32c.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
995
996 2008-01-25  Joseph Myers  <joseph@codesourcery.com>
997
998         * config/c4x: Remove directory.
999         * config.gcc (crx-*, mt-*): Mark obsolete.
1000         (c4x-*, tic4x-*, c4x-*-rtems*, tic4x-*-rtems*, c4x-*, tic4x-*,
1001         h8300-*-rtemscoff*, ns32k-*-netbsdelf*, ns32k-*-netbsd*,
1002         sh-*-rtemscoff*): Remove cases.
1003         * defaults.h (C4X_FLOAT_FORMAT): Remove.
1004         * real.c (encode_c4x_single, decode_c4x_single,
1005         encode_c4x_extended, decode_c4x_extended, c4x_single_format,
1006         c4x_extended_format): Remove.
1007         * real.h (c4x_single_format, c4x_extended_format): Remove.
1008         * doc/extend.texi (interrupt, naked): Remove mention of attributes
1009         on C4x.
1010         (Pragmas): Remove comment about c4x pragmas.
1011         * doc/install.texi (c4x): Remove target-specific instructions.
1012         * doc/invoke.texi (TMS320C3x/C4x Options): Remove.
1013         * doc/md.texi (Machine Constraints): Remove C4x documentation.
1014         * doc/tm.texi (MEMBER_TYPE_FORCES_BLK, c_register_pragma): Do not
1015         refer to C4x source files as examples.
1016         (C4X_FLOAT_FORMAT): Remove documentation.
1017
1018 2008-01-25  Bernd Schmidt  <bernd.schmidt@analog.com>
1019
1020         * config/bfin/bfin.c (override_options): Reorder tests so that
1021         flag_pic gets enabled for -msep-data.
1022
1023 2008-01-25  Richard Guenther  <rguenther@suse.de>
1024
1025         PR middle-end/32244
1026         * expr.c (expand_expr_real_1): Reduce result of LSHIFT_EXPR
1027         to its bitfield precision if required.
1028
1029 2008-01-25  Jakub Jelinek  <jakub@redhat.com>
1030
1031         PR middle-end/33880
1032         * tree-nested.c (walk_omp_for): New function.
1033         (convert_nonlocal_reference, convert_local_reference): Call
1034         walk_omp_for on OMP_FOR.
1035         (convert_call_expr): Call walk_body on OMP_FOR's
1036         OMP_FOR_PRE_INIT_BODY.
1037
1038 2008-01-25  Richard Guenther  <rguenther@suse.de>
1039
1040         PR tree-optimization/34966
1041         * tree-ssa-math-opts.c (execute_cse_sincos_1): For all but
1042         default defs and PHI_NODEs we have to insert after the
1043         defining statement.
1044
1045 2008-01-24  Nick Clifton  <nickc@redhat.com>
1046
1047         * config/stormy16/stormy16-lib2.c (MIN_UNITS_PER_WORD):
1048         Provide a default definition.
1049         (LIBGCC2_UNITS_PER_WORD): Likewise.
1050
1051         * config/stormy16/stormy16.c: Include df.h for the prototype
1052         for df_regs_ever_live_p.
1053         (xstormy16_expand_builtin_va_start): Convert the stack offset
1054         into a component_ref and then use POINTER_PLUS_EXPR to add it
1055         to the incoming_virtual_args_rtx.
1056         (xstormy16_gimplify_va_arg_expr): Rename to
1057         xstormy16_gimplify_va_arg_expr.
1058         Use POINTER_PLUS_EXPR when performing pointer arithmetic.
1059         (TARGET_GIMPLIFY_VA_ARG_EXPR): Use renamed
1060         xstormy16_gimplify_va_arg_expr.
1061         Fix up some formatting issues.
1062
1063         * config/stormy16/stormy16.c: (xstormy16_carry_plus_operand):
1064         Move to predicates.md.
1065         (xs_hi_general_operand): Likewise.
1066         (xs_hi_nonmemory_operand): Likewise.
1067         * config/stormy16/predicates.md:
1068         (xstormy16_carry_plus_operand): New predicate.
1069         (xs_hi_general_operand): New predicate.
1070         (xs_hi_nonmemory_operand): New predicate.
1071         * config/stormy16/stormy16-protos.h:
1072         (xstormy16_carry_plus_operand): Delete prototype.
1073         (xs_hi_general_operand): Likewise.
1074         (xs_hi_nonmemory_operand): Likewise.
1075
1076         * config/storm16/stormy16.md (addhi3): Remove earlyclobber
1077         modifiers as they are no longer needed and they can trigger
1078         reload spill failures.
1079
1080         * config/storm16/stormy16.md (ineqbranchsi): Replace match_dup
1081         with a match_operand in order to help reload.
1082
1083         * config/storm16/stormy16.md (movhi_internal): Replace 'r'
1084         constraint with 'e' for the 8th alternative as this version of
1085         the mov.w instruction only accepts the lower 8 registers.
1086
1087 2008-01-25  Uros Bizjak  <ubizjak@gmail.com>
1088
1089         PR target/34856
1090         * simplifx-rtx.c (simplify_const_binary_operation) [VEC_CONCAT]:
1091         Consider only CONST_INT, CONST_DOUBLE and CONST_FIXED as constant
1092         vector elements.
1093
1094 2008-01-25  Jakub Jelinek  <jakub@redhat.com>
1095
1096         PR middle-end/33333
1097         * gimplify.c (gimplify_omp_for): Gimplify OMP_FOR_PRE_BODY.
1098
1099 2008-01-25  Golovanevsky Olga  <olga@il.ibm.com>
1100
1101         * ipa-struct-reorg.c (remove_str_allocs_in_func, remove_str_allocs):
1102         New functions.
1103         (remove_structure): Update allocations list before removing structure.
1104         
1105 2008-01-25  Golovanevsky Olga  <olga@il.ibm.com>
1106
1107         * ipa-struct-reorg.c (is_safe_cond_expr, 
1108         create_new_stmts_for_cond_expr): Use integer_zerop function,
1109         that recognize not only zero-pointer, but zero-integer too.
1110
1111 2008-01-25  Ben Elliston  <bje@au.ibm.com>
1112
1113         PR other/22232
1114         * fixproto: Escape "." in sed expression that strips leading "./".
1115
1116 2008-01-24  H.J. Lu  <hongjiu.lu@intel.com>
1117
1118         PR driver/34904
1119         * gcc.c (SWITCH_OK): Removed.
1120         (SWITCH_LIVE): Changed to bit.
1121         (SWITCH_FALSE): Likewise.
1122         (SWITCH_IGNORE): Likewise.
1123         (switchstr): Change live_cond to unsigned int.
1124         (process_command): Replace SWITCH_OK with 0.
1125         (do_self_spec): Likewise.
1126         (set_collect_gcc_options): Check the SWITCH_IGNORE bit.
1127         (give_switch): Likewise.
1128         (used_arg): Likewise.
1129         (do_spec_1): Set the SWITCH_IGNORE bit.
1130         (check_live_switch): Check both SWITCH_LIVE and SWITCH_FALSE
1131         bits.  Set the SWITCH_LIVE bit.
1132
1133 2008-01-24  Andreas Krebbel  <krebbel1@de.ibm.com>
1134
1135         * config/s390/s390.h (MOVE_RATIO): Define new target macro.
1136
1137 2008-01-24  Richard Sandiford  <rsandifo@nildram.co.uk>
1138
1139         PR tree-optimization/34472
1140         * ipa-struct-reorg.c (safe_cond_expr_check): Change the DATA
1141         parameter to a "bool *" and set *DATA to false if there is
1142         an unsafe access.  Do not delete the structure here.
1143         (check_cond_exprs): Delete it here instead.
1144         (check_cond_exprs, exclude_cold_structs): Do not increase
1145         I when removing a structure.
1146
1147 2008-01-24  Uros Bizjak  <ubizjak@gmail.com>
1148
1149         PR target/34856
1150         * config/i386/i386.c (ix86_expand_vector_init): Consider only
1151         CONST_INT, CONST_DOUBLE and CONST_FIXED as constant vector elements.
1152
1153 2008-01-24  Jakub Jakub Jelinek  <jakub@redhat.com>
1154
1155         PR middle-end/34934
1156         * tree-stdarg.c (reachable_at_most_once): Use VEC vector instead of
1157         a fixed vector for stack.
1158
1159 2008-01-24  Ben Elliston  <bje@au.ibm.com>
1160
1161         PR c++/25701
1162         * doc/gcc.texi (Software development): Add a direntry for g++.
1163         
1164 2008-01-23  Hans-Peter Nilsson  <hp@axis.com>
1165
1166         * config/cris/cris.h (CC1PLUS_SPEC, OPTIMIZATION_OPTIONS): Drop
1167         stale and straggling -fforce-addr comments above.
1168
1169         * config/cris/cris.h (CRIS_SUBTARGET_VERSION, TARGET_VERSION): Don't
1170         define.
1171         * config/cris/linux.h (CRIS_SUBTARGET_VERSION): Don't define.
1172         * config/cris/aout.h (CRIS_SUBTARGET_VERSION): Don't define.
1173
1174 2008-01-23  Michael Matz  <matz@suse.de>
1175
1176         PR debug/34895
1177         * dwarf2out.c (force_type_die): Use modified_type_die instead of
1178         gen_type_die.
1179
1180 2008-01-23  Andreas Krebbel  <krebbel1@de.ibm.com>
1181
1182         * ipa-struct-reorg.c (create_new_malloc): Use pointer type as
1183         malloc result type.
1184
1185 2008-01-23 Anatoly Sokolov <aesok@post.ru>
1186
1187         * config/avr/avr.c (avr_current_arch): New variable.
1188         (avr_arch_types): Add 'avr31' and 'avr51' entries.
1189         (avr_arch): Add 'ARCH_AVR31' and 'ARCH_AVR51'.
1190         (avr_mcu_types): Add 'avr31' and 'avr51' architectures.
1191         (avr_override_options): Init 'avr_current_arch'. 
1192         (base_arch_s): Move from here...
1193         * config/avr/avr.h (base_arch_s): ... here. Add new members 
1194         'have_elpm', 'have_elpmx', 'have_eijmp_eicall', 'reserved'. Rename 
1195         'mega' to 'have_jmp_call'.
1196         (TARGET_CPU_CPP_BUILTINS): Define "__AVR_HAVE_JMP_CALL__", 
1197         "__AVR_HAVE_RAMPZ__",   "__AVR_HAVE_ELPM__" and  "__AVR_HAVE_ELPMX__"
1198         macros.
1199         (LINK_SPEC, CRT_BINUTILS_SPECS, ASM_SPEC): Add 'avr31' and 'avr51' 
1200         architectures.
1201         * config/avr/t-avr (MULTILIB_OPTIONS, MULTILIB_DIRNAMES, 
1202         MULTILIB_MATCHES): (Ditto.).
1203
1204 2008-01-23  Richard Guenther  <rguenther@suse.de>
1205
1206         PR middle-end/31529
1207         * cgraphunit.c (cgraph_reset_node): Always mark the node
1208         not reachable if it is not queued already.
1209
1210 2008-01-23  Bernd Schmidt  <bernd.schmidt@analog.com>
1211
1212         * config/bfin/bfin-protos.h (WA_RETS, ENABLE_WA_RETS): New macros.
1213         * config/bfin/bfin.c (bfin_cpus): Add WA_RETS everywhere.
1214         (cputype_selected): New static variable.
1215         (bfin_handle_option): Set it if -mcpu is used.
1216         (override_option): Select default set of workarounds if no cpu type
1217         selected on the command line.
1218         (workaround_rts_anomaly): Only run if ENABLE_WA_RETS.
1219
1220         From  Michael Frysinger  <michael.frysinger@analog.com>
1221         * config/bfin/bfin-protos.h (enum bfin_cpu_type): Add
1222         BFIN_CPU_BF547, BFIN_CPU_BF523, BFIN_CPU_BF524, and BFIN_CPU_BF526.
1223
1224         * config/bfin/elf.h (LIB_SPEC): Use proper linker script
1225         for bf547, bf523, bf524, and bf526.
1226         * config/bfin/bfin.c (bfin_cpus[]): Add bf547,  bf523, bf524, and
1227         bf526.
1228         * config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS): Define
1229         __ADSPBF523__ for bf523, __ADSPBF524__ for bf524,
1230         __ADSPBF526__ for bf526, __ADSPBF52x__ for all three, as well as
1231         __ADSPBF547__ and __ADSPBF54x__ for bf547.
1232         * doc/invoke.texi (Blackfin Options): Document that
1233         -mcpu now accept bf547, bf523, bf524, and bf526.
1234
1235 2008-01-22  Eric Botcazou  <ebotcazou@adacore.com>
1236
1237         PR rtl-optimization/34628
1238         * combine.c (try_combine): Stop and undo after the first combination
1239         if an autoincrement side-effect on the first insn has effectively
1240         been lost.
1241
1242 2008-01-22  David Edelsohn  <edelsohn@gnu.org>
1243
1244         PR target/34529
1245         * config/rs6000/rs6000.c (rs6000_legitimate_offset_address_p):
1246         Offset addresses are not valid for Altivec or paired float modes.
1247
1248 2008-01-22  Jakub Jelinek  <jakub@redhat.com>
1249
1250         PR c++/34607
1251         * c-parser.c (c_parser_omp_for_loop): Don't call c_finish_omp_for
1252         if DECL_INITIAL (decl) is error_mark_node.
1253
1254         PR c++/34914
1255         * c-common.c (handle_vector_size_attribute): Only allow
1256         integral, scalar float and fixed point types.  Handle OFFSET_TYPE
1257         the same way as pointer, array etc. types.
1258         * tree.c (reconstruct_complex_type): Handle OFFSET_TYPE.
1259
1260         PR c++/34917
1261         * tree.c (build_type_attribute_qual_variant): Call
1262         build_qualified_type if attributes are equal, but quals are not.
1263
1264 2008-01-22  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
1265
1266         PR 32102
1267         * doc/invoke.texi (-Wall): -Wall enables -Wstrict-overflow=1.
1268         * flags.h (warn_strict_aliasing): Remove.
1269         (warn_strict_overflow): Remove.
1270         * opts.c (warn_strict_aliasing): Remove.
1271         (warn_strict_overflow): Remove.
1272         * c-opts.c (c_common_handle_option): -Wall only sets
1273         -Wstrict-aliasing or -Wstrict-overflow if they are uninitialized.
1274         (c_common_post_options): Give default values to -Wstrict-aliasing
1275         and -Wstrict-overflow if they are uninitialized.
1276         * common.opt (Wstrict-aliasing): Specify Var and Init.
1277         (Wstrict-overflow): Likewise.
1278
1279 2008-01-22  Kenneth Zadeck <zadeck@naturalbridge.com>
1280
1281         PR rtl-optimization/26854
1282         PR rtl-optimization/34400
1283         PR rtl-optimization/34884
1284         * ddg.c (create_ddg_dep_from_intra_loop_link): Use
1285         DF_RD->gen.
1286         * df.h (df_changeable_flags.DF_RD_NO_TRIM): Deleted
1287         (df_rd_bb_info.expanded_lr_out): Deleted
1288         * loop_invariant.c (find_defs): Deleted DF_RD_NO_TRIM flag.
1289         * loop_iv.c (iv_analysis_loop_init): Ditto.  * df-problems.c
1290         (df_rd_free_bb_info, df_rd_alloc, df_rd_confluence_n,
1291         df_rd_bb_local_compute, df_rd_transfer_function, df_rd_free):
1292         Removed code to allocate, initialize or free expanded_lr_out.
1293         (df_rd_bb_local_compute_process_def): Restructured to make more
1294         understandable.
1295         (df_rd_confluence_n): Removed code to no apply invalidate_by_call
1296         sets if the sets are being trimmed.
1297
1298 2008-01-22  H.J. Lu  <hongjiu.lu@intel.com>
1299
1300         PR bootstrap/32287
1301         * configure.ac (ld_vers): Support GNU linker version xx.xx.*
1302         (as_vers): Likewise.
1303         * configure: Regenerated.
1304
1305 2008-01-22  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
1306
1307         PR middle-end/33092
1308         * tree-pass.h (pass_build_alias): New pass.
1309         * tree-ssa-alias.c (gate_build_alias): New.
1310         (pass_build_alias): New.
1311         * passes.c (init_optimization_passes): Add pass_build_alias after
1312         pass_create_structure_vars.
1313
1314 2008-01-22  Wolfgang Gellerich  <gellerich@de.ibm.com>
1315
1316         * config/s390/s390.h (S390_TDC_POSITIVE_NORMALIZED_NUMBER):
1317         Renamed to S390_TDC_POSITIVE_NORMALIZED_BFP_NUMBER.
1318         (S390_TDC_NEGATIVE_NORMALIZED_NUMBER): Renamed to
1319         S390_TDC_NEGATIVE_NORMALIZED_BFP_NUMBER.
1320         (S390_TDC_POSITIVE_DENORMALIZED_NUMBER): Renamed to
1321         S390_TDC_POSITIVE_DENORMALIZED_BFP_NUMBER.
1322         (S390_TDC_NEGATIVE_DENORMALIZED_NUMBER): Renamed to
1323         S390_TDC_NEGATIVE_DENORMALIZED_BFP_NUMBER.
1324         (S390_TDC_POSITIVE_NORMALIZED_BFP_NUMBER): New constant.
1325         (S390_TDC_NEGATIVE_NORMALIZED_BFP_NUMBER): New constant.
1326         (S390_TDC_POSITIVE_DENORMALIZED_BFP_NUMBER): New constant.
1327         (S390_TDC_NEGATIVE_DENORMALIZED_BFP_NUMBER): New constant.
1328         * config/s390/s390.md (FP_ALL): New mode iterator.
1329         (_d): New mode attribute.
1330         ("*signbit<mode>2>"): Changed mode of first operand.
1331         ("isinf<mode>2"): Changed mode of first operand.
1332         ("*TDC_insn"): Adaptation for DFP modes.
1333
1334 2008-01-22  Ben Elliston  <bje@au.ibm.com>
1335
1336         * tree.c (check_qualified_type): Improve function description.
1337
1338 2008-01-21  Jason Merrill  <jason@redhat.com>
1339
1340         PR c++/34196
1341         * tree.h (TRY_CATCH_IS_CLEANUP): New macro.
1342         * tree-eh.c (honor_protect_cleanup_actions): Strip TRY_CATCH_EXPR
1343         if it is set.
1344
1345 2008-01-21  DJ Delorie  <dj@redhat.com>
1346
1347         * doc/tm.texi (HARD_REGNO_NREGS): Note that this macro must not
1348         return zero.
1349
1350 2008-01-21  Richard Guenther  <rguenther@suse.de>
1351
1352         PR middle-end/34856
1353         * tree-cfg.c (verify_expr): Allow all invariant expressions
1354         instead of just constant class ones as reference argument.
1355         * tree-ssa-loop-im.c (for_each_index): Handle CONSTRUCTOR
1356         like any other constant.
1357         * tree-ssa-sccvn.c (copy_reference_ops_from_ref): Likewise.
1358
1359 2008-01-21  H.J. Lu  <hongjiu.lu@intel.com>
1360
1361         * regmove.c (fixup_match_1): Update call crossed frequencies.
1362
1363 2008-01-21  Richard Guenther  <rguenther@suse.de>
1364
1365         PR c/34885
1366         * tree-inline.c (setup_one_parameter): Deal with mismatched
1367         types using a VIEW_CONVERT_EXPR.
1368
1369 2008-01-21  Alon Dayan  <alond@il.ibm.com>
1370             Olga Golovanevsky  <olga@il.ibm.com>
1371         
1372         PR tree-optimization/34701
1373         * ipa-struct-reorg.c (gen_size): Fix the malloc parameter calculation
1374         when the structure size is not a power of 2.
1375
1376 2008-01-20  Kenneth Zadeck <zadeck@naturalbridge.com>
1377
1378         * doc/install.texi: Add doc for --enable-checking=df.
1379         
1380 2008-01-20  Kaz Kojima  <kkojima@gcc.gnu.org>
1381
1382         PR rtl-optimization/34808
1383         * emit-rtl.c (try_split): Handle REG_RETVAL notes.
1384
1385 2008-01-20  Richard Sandiford  <rsandifo@nildram.co.uk>
1386
1387         * global.c (find_reg): Only compute EH_RETURN_DATA_REGNO once per
1388         input.
1389
1390 2008-01-19  Kenneth Zadeck <zadeck@naturalbridge.com>
1391
1392         PR rtl-optimization/26854
1393         PR rtl-optimization/34400
1394         * ddg.c (create_ddg_dep_from_intra_loop_link): Do not use
1395         DF_RD->gen.
1396         * df.h (df_changeable_flags.DF_RD_NO_TRIM): New.
1397         (df_rd_bb_info.expanded_lr_out): New.
1398         * loop_invariant.c (find_defs): Added DF_RD_NO_TRIM flag.
1399         * loop_iv.c (iv_analysis_loop_init): Ditto.
1400         * df-problems.c (df_rd_free_bb_info, df_rd_alloc, df_rd_confluence_n,
1401         df_rd_bb_local_compute, df_rd_transfer_function, df_rd_free):
1402         Added code to allocate, initialize or free expanded_lr_out.
1403         (df_rd_bb_local_compute_process_def): Restructured to make
1404         more understandable.
1405         (df_rd_confluence_n): Add code to do nothing with fake edges and
1406         code to no apply invalidate_by_call sets if the sets are being trimmed.
1407         (df_lr_local_finalize): Renamed to df_lr_finalize.
1408         (df_live_local_finalize): Renamed to df_live_finalize.
1409
1410 2008-01-20  Richard Sandiford  <rsandifo@nildram.co.uk>
1411
1412         PR target/34831
1413         * config/mips/mips.md (div<mode>3): Use <recip_condition> when
1414         deciding whether to use reciprocal instructions.
1415
1416 2008-01-19  Uros Bizjak  <ubizjak@gmail.com>
1417
1418         * dwarf2out.c (dwarf2out_switch_text_section): Do not call
1419         dwarf2out_note_section_used if cold_text_section is NULL.
1420
1421 2008-01-19  Jakub Jelinek  <jakub@redhat.com>
1422
1423         PR gcov-profile/34610
1424         * tree-cfg.c (make_edges): Mark both outgoing edges from
1425         OMP_CONTINUE and from OMP_FOR as EDGE_ABNORMAL.
1426         * omp-low.c (expand_omp_for): Clear EDGE_ABNORMAL bits
1427         from OMP_FOR and OMP_CONTINUE outgoing edges.
1428
1429         * tree-profile.c (tree_profiling): Return early if
1430         cfun->after_tree_profile != 0.  Set cfun->after_tree_profile
1431         at the end.
1432         * omp-low.c (expand_omp_parallel): Copy after_tree_profile
1433         from cfun to child_cfun.
1434         * function.h (struct function): Add after_tree_profile bit.
1435
1436 2008-01-19 Anatoly Sokolov <aesok@post.ru>
1437
1438         * config/avr/avr.S (_exit): Disable interrupt.
1439
1440 2008-01-18  Kenneth Zadeck  <zadeck@naturalbridge.com>
1441             Steven Bosscher  <stevenb.gcc@gmail.com>
1442
1443         PR rtl-optimization/26854
1444         PR rtl-optimization/34400
1445         * df-problems.c (df_live_scratch): New scratch bitmap.
1446         (df_live_alloc): Allocate df_live_scratch when doing df_live.
1447         (df_live_reset): Clear the proper bitmaps.
1448         (df_live_bb_local_compute): Only process the artificial defs once
1449         since the order is not important.
1450         (df_live_init): Init the df_live sets only with the variables
1451         found live by df_lr.
1452         (df_live_transfer_function): Use the df_lr sets to prune the
1453         df_live sets as they are being computed.  
1454         (df_live_free): Free df_live_scratch.
1455
1456 2008-01-18  Ian Lance Taylor  <iant@google.com>
1457
1458         * common.opt: Add fmerge-debug-strings.
1459         * dwarf2out.c (DEBUG_STR_SECTION_FLAGS): Test
1460         flag_merge_debug_strings rather than flag_merge_constants.
1461         * doc/invoke.texi (Option Summary): Mention
1462         -fmerge-debug-strings.
1463         (Debugging Options): Document -fmerge-debug-strings.
1464
1465 2008-01-18  Ian Lance Taylor  <iant@google.com>
1466
1467         PR c++/33407
1468         * tree.h (DECL_IS_OPERATOR_NEW): Define.
1469         (struct tree_function_decl): Add new field operator_new_flag.
1470         * tree-inline.c (expand_call_inline): When inlining a call to
1471         operator new, force the return value to go into a variable, and
1472         set DECL_NO_TBAA_P on that variable.
1473         * c-decl.c (merge_decls): Merge DECL_IS_OPERATOR_NEW flag.
1474
1475 2008-01-18  Uros Bizjak  <ubizjak@gmail.com>
1476
1477         PR debug/34484
1478         * dwarf2out.c (dwarf2out_switch_text_section): Do not guard with
1479         DWARF2_DEBUGGING_INFO.
1480         (dwarf2out_note_section_used): Ditto.  Add prototype.
1481         (have_multiple_function_sections, text_section_used,
1482         cold_text_section_used, *cold_text_sections): Move declarations
1483         before their uses.
1484
1485 2008-01-17  Bob Wilson  <bob.wilson@acm.org>
1486
1487         * config/xtensa/unwind-dw2-xtensa.h (_Unwind_FrameState): Remove pc
1488         field and add signal_ra.
1489         * config/xtensa/unwind-dw2-xtensa.c (uw_frame_state_for): Remove
1490         assignments to frame state pc.  Move end of stack check after
1491         MD_FALLBACK_FRAME_STATE_FOR.
1492         (uw_update_context_1): Use frame state signal_regs if set, instead
1493         of checking signal_frame flag.
1494         (uw_update_context): Use frame state signal_ra if set.
1495         * config/xtensa/linux.h (MD_UNWIND_SUPPORT): Define.
1496         * config/xtensa/linux-unwind.h: New file.
1497
1498 2008-01-18  Bernhard Fischer  <aldot@gcc.gnu.org>
1499
1500         * modulo-sched.c (get_sched_window): Fix comment typo.
1501
1502 2008-01-17  Andrew MacLeod  <amacleod@redhat.com>
1503
1504         PR tree-optimization/34648
1505         * tree-ssa-sccvn.c (visit_use): Expressions which can throw are varying.
1506
1507 2008-01-17  Anatoly Sokolov <aesok@post.ru>
1508
1509         * config/avr/avr.h (LINK_SPEC): Support -mrelax and -mpmem-wrap-around.
1510         * config/avr/avr.opt (mrelax, mpmem-wrap-around): Add.
1511
1512 2008-01-17  Seongbae Park  <seongbae.park@gmail.com>
1513
1514         PR rtl-optimization/34400
1515         * df-core.c (df_worklist_dataflow_overeager,
1516         df_worklist_dataflow_doublequeue): New functions.
1517         (df_worklist_dataflow): Two different worklist solvers.
1518         * params.def (PARAM_DF_DOUBLE_QUEUE_THRESHOLD_FACTOR):
1519         New param.
1520
1521 2008-01-16  Sebastian Pop  <sebastian.pop@amd.com>
1522
1523         PR testsuite/34821
1524         * doc/invoke.texi: Document the dependence on pthread for fopenmp
1525         and ftree-parallelize-loops.
1526
1527 2008-01-17  Mircea Namolaru  <namolaru@il.ibm.com>
1528
1529         PR rtl-optimization/34826
1530         * loop-doloop (doloop_modify): Update the REG_BR_PROB note.
1531
1532 2008-01-17  Andreas Krebbel  <krebbel1@de.ibm.com>
1533
1534         * global.c (find_reg): Mark the eh regs as used if necessary.
1535         * ra-conflict.c (global_conflicts): Set no_eh_reg flag.
1536         * ra.h (struct allocno): no_eh_reg field added.  Changed
1537         no_stack_reg type to bitfield.
1538
1539 2008-01-17  Eric Botcazou  <ebotcazou@adacore.com>
1540
1541         * tree.c (substitute_in_expr): Add missing 'break'.
1542
1543 2008-01-17  Richard Guenther  <rguenther@suse.de>
1544
1545         PR tree-optimization/34825
1546         * tree-ssa-math-opts.c (is_division_by): Do not recognize
1547         x / x as division to handle.
1548
1549 2008-01-16  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1550
1551         * pa64-hpux.h (LIB_SPEC): Add "-lpthread" in shared links if "-mt" or
1552         "-pthread" is specified.
1553         * pa-hpux11.h (LIB_SPEC): Likewise.
1554
1555 2008-01-16  Janis Johnson  <janis187@us.ibm.com>
1556             Peter Bergner  <bergner@vnet.ibm.com>
1557
1558         PR rtl-optimization/33796
1559         * sparseset.c (sparseset_alloc): Use xcalloc rather than xmalloc.
1560
1561 2008-01-16  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1562
1563         PR libgfortran/34699
1564         * pa-hpux.h (LINK_SPEC): Only search /lib/pa1.1 and /usr/lib/pa1.1 on
1565         static links.
1566         * pa-hpux10.h (LINK_SPEC): Likewise.
1567         * pa-hpux11.h (LINK_SPEC): Don't search /lib/pa1.1 and /usr/lib/pa1.1.
1568
1569 2008-01-16  Richard Guenther  <rguenther@suse.de>
1570
1571         PR middle-end/32628
1572         * fold-const.c (fold_convert_const_int_from_int): Do not
1573         set overflow if that occured only because of a sign extension
1574         change when converting from/to a sizetype with the same
1575         precision and signedness.
1576
1577 2008-01-16  Uros Bizjak  <ubizjak@gmail.com>
1578
1579         PR debug/34249
1580         * dwarf2out.c (output_call_frame_info): Move output of FDE initial
1581         location address to the correct place.  Update copyright year.
1582
1583 2008-01-16  Sebastian Pop  <sebastian.pop@amd.com>
1584
1585         * lambda-code.c (lambda_transform_legal_p): Handle the case of
1586         no dependences in the dependence_relations vector.
1587
1588 2008-01-16  Jan Hubicka  <jh@suse.cz>
1589
1590         PR rtl-optimization/31396
1591         * regstat.c (regstat_bb_compute_ri): Compute FREQ_CALLS_CROSSED.
1592         * cfg.c (dump_reg_info): Print it.
1593         * regs.h (struct reg_info_t): add freq_calls_crossed.
1594         (REG_FREQ_CALLS_CROSSED): New macro.
1595         * global.c (global_alloc): Compute freq_calls_crossed for allocno.
1596         (find_reg): Update call of CALLER_SAVE_PROFITABLE.
1597         * regmove.c (optimize_reg_copy_1, optimize_reg_copy_2, fixup_match_2,
1598         regmove_optimize): Update call crossed frequencies.
1599         * local-alloc.c (struct qty): Add freq_calls_crossed.
1600         (alloc_qty): Copute freq_calls_crossed.
1601         (update_equiv_regs, combine_regs): Update REG_FREQ_CALLS_CROSSED.
1602         (find_free_reg): Update call of CALLER_SAVE_PROFITABLE.
1603         * ra.h (struct allocno): Add freq_calls_crossed.
1604
1605 2008-01-16  Sebastian Pop  <sebastian.pop@amd.com>
1606
1607         * gcc.c (LINK_COMMAND_SPEC): Add includes and link options for
1608         libgomp when compiling with ftree-parallelize-loops.
1609         (GOMP_SELF_SPECS): Add -pthread for ftree-parallelize-loops.
1610
1611 2008-01-16  Richard Guenther  <rguenther@suse.de>
1612
1613         PR tree-optimization/34769
1614         * tree-data-ref.c (initialize_matrix_A): Revert fix for PR34458.
1615         * tree.c (int_cst_value): Instead make this function more
1616         permissive in what it accepts as valid input.  Document this
1617         function always sign-extends the value.
1618
1619 2008-01-16  Jakub Jelinek  <jakub@redhat.com>
1620             Richard Guenther  <rguenther@suse.de>
1621
1622         PR c/34668
1623         * gimplify.c (fold_indirect_ref_rhs): Rename to ...
1624         (gimple_fold_indirect_ref_rhs): ... this.
1625         (gimple_fold_indirect_ref): New function with foldings
1626         that preserve lvalueness.
1627         (gimplify_modify_expr_rhs): Call gimple_fold_indirect_ref_rhs.
1628         * tree-flow.h (gimple_fold_indirect_ref): Declare.
1629         * tree-inline.c (copy_body_r): Use gimple_fold_indirect_ref
1630         to fold an INDIRECT_REF, fall back to the old use of
1631         fold_indirect_ref_1.
1632
1633 2008-01-16  Sebastian Pop  <sebastian.pop@amd.com>
1634
1635         * tree-data-ref.c (subscript_dependence_tester_1): Call 
1636         free_conflict_function.
1637         (compute_self_dependence): Same.
1638
1639 2008-01-16  Uros Bizjak  <ubizjak@gmail.com>
1640
1641         PR debug/34249
1642         * debug.h (dwarf2out_switch_text_section): Move declaration from ...
1643         * dwarf2out.c (dwarf2out_switch_text_section): ... here.  Make
1644         function global.
1645         * final.c (final_scan_insn) [NOTE_INSN_SWITCH_TEXT_SECTIONS]:
1646         Depending on dwarf2out_do_frame, call dwarf2out_switch_text_section
1647         for DWARF2_UNWIND_INFO targets.
1648
1649 2008-01-16  Richard Guenther  <rguenther@suse.de>
1650
1651         PR c/34768
1652         * c-typeck.c (common_pointer_type): Do not merge inconsistent
1653         type qualifiers for function types.
1654
1655 2008-01-15  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1656
1657         * tree-parloops.c (gen_parallel_loop): Fix ommision of declaration for
1658         loop_iterator li from previous commit.
1659
1660 2008-01-15  Sebastian Pop  <sebastian.pop@amd.com>
1661
1662         * tree-parloops.c (gen_parallel_loop): Free loop bound estimations.
1663
1664 2008-01-12  Sebastian Pop  <sebastian.pop@amd.com>
1665
1666         * tree-parloops.c (loop_has_blocks_with_irreducible_flag): New.
1667         (parallelize_loops): Don't parallelize irreducible components.
1668
1669 2008-01-14  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
1670
1671         PR c++/24924
1672         * c-opts (c_common_post_options): Do not enable CPP
1673         flag_pedantic_errors by default.
1674         
1675 2008-01-14  Eric Botcazou  <ebotcazou@adacore.com>
1676
1677         PR rtl-optimization/31944
1678         * cse.c (remove_pseudo_from_table): New function.
1679         (merge_equiv_classes): Use above function to remove pseudo-registers.
1680         (invalidate): Likewise.
1681
1682 2008-01-13  Richard Guenther  <rguenther@suse.de>
1683
1684         PR middle-end/34601
1685         * emit-rtl.c (set_reg_attrs_for_decl_rtl): Use DECL_MODE
1686         instead of TYPE_MODE to deal with calls from expand_one_error_var.
1687
1688 2008-01-13  Uros Bizjak  <ubizjak@gmail.com>
1689
1690         * gcse.c (cprop_jump): Call validate_unshare_change instead of
1691         validate_change to unshare the source of the PC set.
1692
1693 2008-01-12  Jan Hubicka  <jh@suse.cz>
1694
1695         PR middle-end/32135
1696         * tree-ssa-ccp.c (maybe_fold_offset_to_array_ref): Do not construct
1697         references above array bounds.  This might trigger bounds checks for
1698         pointers to arrays.
1699
1700 2008-01-12  Sebastian Pop  <sebastian.pop@amd.com>
1701
1702         * tree-ssa-ter.c (free_temp_expr_table): Free num_in_part and
1703         new_replaceable_dependencies.
1704
1705 2008-01-12  Doug Kwan  <dougkwan@google.com>
1706
1707         * c-decl.c: (grokdeclarator): Use OPT_Wignored_qualifiers
1708         instead of OPT_Wreturn_type in warning due to ignored return type
1709         qualifiers.
1710         * c-opt.c (c_common_post_option): Add -Wignored-qualifiers to
1711         options included in -Wextra.
1712         * c.opt: New option -Wignored_qualifiers.
1713         * doc/invoke.texi (Warning Options, -Wextra): Add new option
1714         -Wignore_qualifiers.
1715         (-Wignored-qualifiers): Document.
1716         (-Wreturn-type): Remove description of functionality now handled
1717         by -Wignored-qualifiers.
1718
1719 2008-01-12  Eric Botcazou  <ebotcazou@adacore.com>
1720
1721         PR ada/33788
1722         * fold-const.c (fold_unary) <VIEW_CONVERT_EXPR>: Fold an existing
1723         NOP_EXPR if it is between integral types with the same precision.
1724
1725 2008-01-12  Jan Hubicka  <jh@suse.cz>
1726
1727         PR other/28023
1728         * invoke.texi (max-inline-recursive-depth): Fix default value.
1729
1730 2008-01-12  Zdenek Dvorak  <ook@ucw.cz>
1731
1732         * tree-parloops.c (transform_to_exit_first_loop): Cast nit to the
1733         correct type.
1734
1735 2008-01-11  Bob Wilson  <bob.wilson@acm.org>
1736         
1737         * config/xtensa/xtensa.c (override_options): Set flag_shlib.
1738         
1739 2008-01-11  James E. Wilson  <wilson@specifix.com>
1740
1741         PR target/26015
1742         * config/vax/elf.h (FRAME_POINTER_CFA_OFFSET): Define.
1743
1744 2008-01-11  Anatoly Sokolov <aesok@post.ru>
1745
1746         * config/avr/avr.c (expand_prologue, expand_epilogue): Don't 
1747         save/restore frame pointer register and don't use 'call-prologues' 
1748         optimization in function with "OS_task" attribute.
1749
1750 2008-01-11  Eric Botcazou  <ebotcazou@adacore.com>
1751
1752         PR middle-end/31309
1753         * expr.c (copy_blkmode_from_reg): Use a mode suited to the size
1754         when copying to memory.
1755
1756 2008-01-11  Steven Bosscher  <stevenb.gcc@gmail.com>
1757
1758         PR rtl-optimization/30905
1759         * cfgcleanup.c: Include dce.h
1760         (crossjumps_occured): New global variable.
1761         (try_crossjump_bb): Exit loop after finding a fallthru edge.
1762         If something changed, set crossjumps_occured to true.
1763         (try_optimize_cfg): Clear crossjumps_occured at the beginning.
1764         Don't add/remove fake edges to exit here...
1765         (cleanup_cfg): ...but do it here, when crossjumping.
1766         Run a fast DCE when successful crossjumps occured in the latest
1767         iteration of try_optimize_cfg.
1768
1769 2008-01-11  Richard Guenther  <rguenther@suse.de>
1770
1771         * tree-ssa-sccvn.c (struct vn_binary_op_s): Move hashcode near opcode.
1772         (struct vn_unary_op_s): Likewise.
1773         (vn_reference_insert): Free old reference on hash collision.
1774
1775 2008-01-10  Raksit Ashok  <raksit@google.com>
1776
1777         PR rtl-optimization/27971
1778         * combine.c (find_split_point): Split PLUS expressions which are
1779         inside a MEM rtx, and whose first operand is complex.
1780
1781 2008-01-10  DJ Delorie  <dj@redhat.com>
1782
1783         * config/m32c/m32c.c (m32c_hard_regno_nregs_1): Renamed from...
1784         (m32c_hard_regno_nregs): ...this, which is now a wrapper.
1785         (m32c_hard_regno_ok): Call the underlying function.
1786
1787 2008-01-10  Richard Guenther  <rguenther@suse.de>
1788
1789         PR middle-end/34683
1790         * tree-cfg.c (tree_merge_blocks): Do not go through the
1791         full-blown folding and stmt updating path if we just deal
1792         with virtual operands.
1793         * tree-ssa-copy.c (may_propagate_copy): Do not short-cut
1794         test for abnormal SSA_NAMEs.
1795
1796 2008-01-10  Andreas Krebbel  <krebbel1@de.ibm.com>
1797
1798         PR middle-end/34641
1799         * reload.c (push_reload): Add assertions.  All constants from
1800         reg_equiv_constant should have been used for replacing the respective
1801         pseudo earlier.
1802         (find_reloads_address): Invoke find_reloads_address_part for
1803         constant taken from the reg_equiv_constant array.
1804
1805 2008-01-10  Steven Bosscher  <stevenb.gcc@gmail.com>
1806
1807         * tree-ssa-sccvn.h (struct vn_ssa_aux): Make the most accessed
1808         field (valnum) the first in the struct.  Replace bools with
1809         unit bit fields.
1810
1811 2008-01-10  Richard Guenther  <rguenther@suse.de>
1812
1813         PR tree-optimization/34651
1814         * tree-sra.c (sra_build_assignment): Sanitize.  Use the correct
1815         types and ordering for masking and converting.
1816
1817 2008-01-09  Sebastian Pop  <sebastian.pop@amd.com>
1818
1819         PR tree-optimization/34017
1820         * lambda-code.c (lambda_loopnest_to_gcc_loopnest): Generate code
1821         also for PHI_NODE expressions.
1822
1823 2008-01-09  Jan Hubicka  <jh@suse.cz>
1824
1825         PR tree-optimization/34708
1826         * tree-inline.c (estimate_num_insns_1): Compute cost of SWITCH_EXPR
1827         based on number of case labels.
1828         (init_inline_once): Remove switch_cost.
1829         * tree-inline.h (eni_weights_d): Remove switch_cost.
1830
1831 2008-01-09  Richard Guenther  <rguenther@suse.de>
1832         Andrew Pinski  <andrew_pinski@playstation.sony.com>
1833
1834         PR middle-end/30132
1835         * gimplify.c (gimplify_cond_expr): Do not create an addressable
1836         temporary if an rvalue is ok or an lvalue is not required.
1837
1838 2008-01-09  Richard Guenther  <rguenther@suse.de>
1839
1840         PR middle-end/34458
1841         * tree-data-ref.c (initialize_matrix_A): Use tree_low_cst,
1842         adjust return type.
1843
1844 2008-01-09  Richard Guenther  <rguenther@suse.de>
1845
1846         PR middle-end/34679
1847         * tree.c (host_integerp): Check for sizetype only if the
1848         type is an integer type.
1849
1850 2008-01-09  Steven Bosscher  <stevenb.gcc@gmail.com>
1851
1852         PR debug/26364
1853         * opts.c (decode_options): Disable inlining of functions called
1854         once if not in unit-at-a-time mode.
1855
1856 2008-01-09  Alexandre Oliva  <aoliva@redhat.com>
1857
1858         * Makefile.in (dse.o): Remove duplicate $(RECOG_H) dependency.
1859
1860 2008-01-08  Richard Guenther  <rguenther@suse.de>
1861
1862         PR middle-end/31863
1863         * tree-ssa-structalias.c (push_fields_onto_fieldstack): Bail
1864         out early if the result will be unused.
1865
1866 2008-01-08  Uros Bizjak  <ubizjak@gmail.com>
1867
1868         PR target/34709
1869         Revert:
1870
1871         2008-01-05  Uros Bizjak  <ubizjak@gmail.com>
1872         * config/i386/i386.c (ix86_builtin_reciprocal): Remove check
1873         for TARGET_RECIP.       
1874         
1875 2008-01-08  Jan Sjodin  <jan.sjodin@amd.com>
1876         
1877         * config/i386/i386.c (k8_cost, amdfam10_cost): Branch costs
1878         for vectorization tuned.
1879         
1880 2008-01-08  Richard Guenther  <rguenther@suse.de>
1881
1882         PR tree-optimization/34683
1883         * tree-ssa-operands.c (operand_build_cmp): Export.
1884         * tree-ssa-operands.h (operand_build_cmp): Declare.
1885         * tree-vn.c (vuses_compare): Remove.
1886         (sort_vuses): Use operand_build_cmp.
1887         (sort_vuses_heap): Likewise.
1888         * tree-ssa-sccvn.c (vuses_to_vec): Use VEC_reserve, not VEC_alloc
1889         to re-use old VEC if available.  Do not sort already sorted VUSEs.
1890         (vdefs_to_vec): Do not sort already sorted VDEFs.
1891
1892 2008-01-08  Jakub Jelinek  <jakub@redhat.com>
1893
1894         PR middle-end/34694
1895         * omp-low.c (copy_var_decl): Copy also DECL_SOURCE_LOCATION.
1896
1897 2008-01-08  Uros Bizjak  <ubizjak@gmail.com>
1898
1899         PR target/34702
1900         * doc/invoke.texi (i386 and x86-64 Options) [mrecip]: Document
1901         limitations of reciprocal sequences on x86 targets.
1902
1903 2008-01-08  Richard Guenther  <rguenther@suse.de>
1904
1905         PR tree-optimization/34683
1906         * tree-flow-inline.h (var_ann): Remove overzealous asserts.
1907
1908 2008-01-07  Jakub Jelinek  <jakub@redhat.com>
1909
1910         PR target/34622
1911         * config/darwin.c (darwin_mergeable_string_section): Don't use
1912         .cstring if int_size_in_bytes != TREE_STRING_LENGTH.
1913
1914 2008-01-07  Uros Bizjak  <ubizjak@gmail.com>
1915
1916         PR target/34682
1917         * config/i386/i386.md (neg<mode>2): Rename from negsf2, negdf2 and
1918         negxf2.  Macroize expander using X87MODEF mode iterator.  Change
1919         predicates of op0 and op1 to register_operand.
1920         (abs<mode>2): Rename from abssf2, absdf2 and negxf2.  Macroize
1921         expander using X87MODEF mode iterator.  Change predicates of
1922         op0 and op1 to register_operand.
1923         ("*absneg<mode>2_mixed", "*absneg<mode>2_sse"): Rename from
1924         corresponding patterns and macroize using MODEF macro.  Change
1925         predicates of op0 and op1 to register_operand and remove
1926         "m" constraint. Disparage "r" alternative with "!".
1927         ("*absneg<mode>2_i387"): Rename from corresponding patterns and
1928         macroize using X87MODEF macro.  Change predicates of op0 and op1
1929         to register_operand and remove "m" constraint.  Disparage "r"
1930         alternative with "!".
1931         (absneg splitter with memory operands): Remove.
1932         ("*neg<mode>2_1", "*abs<mode>2_1"): Rename from corresponding
1933         patterns and macroize using X87MODEF mode iterator.
1934         * config/i386/sse.md (negv4sf2, absv4sf2, neg2vdf2, absv2df2):
1935         Change predicate of op1 to register_operand.
1936         * config/i386/i386.c (ix86_expand_fp_absneg_operator): Remove support
1937         for memory operands.
1938
1939 2008-01-07  Nathan Froyd  <froydnj@codesourcery.com>
1940
1941         * config/rs6000/rs6000.h (ASM_CPU_SPEC): Add clause for mcpu=8548.
1942
1943 2008-01-07  Richard Guenther  <rguenther@suse.de>
1944
1945         * basic-block.h (struct edge_def): Pair dest_idx with goto_locus
1946         fields.
1947
1948 2008-01-07  Richard Guenther  <rguenther@suse.de>
1949
1950         PR tree-optimization/34683
1951         * tree-ssa-sccvn.c (vuses_to_vec): Pre-allocate the vector of
1952         VOPs of the needed size to save memory.  Use VEC_quick_push
1953         to save compile-time.
1954         (vdefs_to_vec): Likewise.
1955
1956 2008-01-07  Sa Liu  <saliu@de.ibm.com>
1957
1958         * config/spu/spu.md (divdf3): Genetate inline code for double
1959         division.  The implementation doesn't handle INF or NAN, therefore it
1960         only applies when -ffinite-math-only is given.
1961
1962 2008-01-06  Paolo Carlini  <pcarlini@suse.de>
1963
1964         PR libstdc++/34680
1965         * c-cppbuiltin.c (c_cpp_builtins): Define __GXX_RTTI, if appropriate.
1966         * doc/cpp.texi ([Common Predefined Macros]): Document.
1967
1968 2008-01-06  Uros Bizjak  <ubizjak@gmail.com>
1969
1970         * config/i386/i386.c (ix86_emit_swsqrtsf): Use negative constants in
1971         order to use commutative addition instead of subtraction.
1972
1973 2008-01-06  Andrew Pinski  <andrew_pinski@playstation.sony.com>
1974             Mircea Namolaru  <namolaru@il.ibm.com>
1975             Vladimir Yanovsky  <yanov@il.ibm.com>
1976             Revital Eres  <eres@il.ibm.com>
1977
1978         PR tree-optimization/34263
1979         * tree-outof-ssa.c (process_single_block_loop_latch,
1980         contains_tree_r): New functions.
1981         (analyze_edges_for_bb): Call process_single_block_loop_latch
1982         function to empty single-basic-block latch block if possible.
1983
1984 2008-01-05  Uros Bizjak  <ubizjak@gmail.com>
1985
1986         * config/i386/i386.c (ix86_builtin_reciprocal): Remove check
1987         for TARGET_RECIP.
1988         (ix86_emit_swsqrtsf): Do not filter out infinity for rsqrt expansion.
1989
1990 2008-01-05  Richard Sandiford  <rsandifo@nildram.co.uk>
1991
1992         * c-omp.c (check_omp_for_incr_expr): Handle CONVERT_EXPR.
1993
1994 2008-01-05  Richard Sandiford  <rsandifo@nildram.co.uk>
1995
1996         * config/mips/mips.c (mips_in_small_data_p): Reinstate size > 0 check.
1997
1998 2008-01-05  Jakub Jelinek  <jakub@redhat.com>
1999
2000         PR tree-optimization/34618
2001         * tree-outof-ssa.c (create_temp): Copy over DECL_GIMPLE_REG_P
2002         flag from T.
2003
2004 2008-01-05  Uros Bizjak  <ubizjak@gmail.com>
2005
2006         PR target/34673
2007         * config/i386/i386.c (ix86_emit_swsqrtsf): Swap input operands
2008         in the call to gen_rtx_NE.  Remove unneeded VECTOR_MODE_P check.
2009         Update copyright year.
2010
2011         * config/i386/i386.md (rsqrtsf2): Enable for TARGET_SSE_MATH.
2012         Update copyright year.
2013         * config/i386/sse.md (rsqrtv4sf2): Ditto. Unconditionally expand
2014         using NR fixup.
2015
2016 2008-01-05  Zhouyi Zhou  <zhouzhouyi@FreeBSD.org>
2017
2018         * tree-vrp.c (find_conditional_asserts): Remove redundant check that
2019         edge does not point to current bb before changing need_assert.
2020
2021 2008-01-04  Richard Guenther  <rguenther@suse.de>
2022
2023         PR middle-end/34029
2024         * tree-cfg.c (verify_expr): Do not look inside ADDR_EXPRs
2025         for verifying purposes if they are is_gimple_min_invariant.
2026
2027 2008-01-04  Aldy Hernandez  <aldyh@redhat.com>
2028
2029         PR tree-optimization/34448
2030         PR tree-optimization/34465
2031         * gimplify.c (gimplify_init_constructor): Add new parameter
2032         notify_temp_creation.  Use it.
2033         (gimplify_modify_expr_rhs): Take volatiles into account when
2034         optimizing constructors.
2035         Do not optimize constructors if gimplify_init_constructor will dump to
2036         memory.
2037         * gcc.dg/tree-ssa/pr32901.c: Tests const volatiles.
2038         * gcc.c-torture/compile/pr34448.c: New.
2039
2040 2008-01-04  Jakub Jelinek  <jakub@redhat.com>
2041
2042         PR gcov-profile/34609
2043         * tree-inline.c (declare_return_variable): Set TREE_ADDRESSABLE on
2044         return_slot if result is TREE_ADDRESSABLE.
2045
2046 2008-01-04  Richard Sandiford  <rsandifo@nildram.co.uk>
2047
2048         * config/mips/mips.md (sqrt_condition): Tweak comment.
2049         (recip_condition): Likewise.  Require TARGET_FLOAT64 for DFmode.
2050
2051 2008-01-03  Tom Tromey  <tromey@redhat.com>
2052
2053         PR c/34457
2054         * c-common.c (c_type_hash): Handle VLAs.
2055
2056 2008-01-03  Jan Hubicka  <jh@suse.cz>
2057
2058         PR tree-optimization/31081
2059         * tree-inline.c (remap_ssa_name): Initialize uninitialized SSA vars to
2060         0 when inlining and not inlining to first basic block.
2061         (remap_decl): When var is initialized to 0, don't set default_def.
2062         (expand_call_inline): Set entry_bb.
2063         * tree-inline.h (copy_body_data): Add entry_bb.
2064
2065 2008-01-03  Jakub Jelinek  <jakub@redhat.com>
2066
2067         PR c++/34619
2068         * cgraphunit.c (cgraph_build_static_cdtor): set_cfun back to NULL
2069         before returning.
2070
2071         PR tree-optimization/29484
2072         * tree-inline.c (inline_forbidden_p_2): New function.
2073         (inline_forbidden_p): Disallow inlining if some static var
2074         has an address of a local LABEL_DECL in its initializer.
2075         * doc/extend.texi (Labels as Values): Document &&foo behaviour
2076         vs. inlining.
2077
2078 2008-01-03  Sebastian Pop  <sebastian.pop@amd.com>
2079
2080         PR tree-optimization/34635
2081         * tree-data-ref.c (add_other_self_distances): Make sure that the
2082         evolution step is constant.
2083
2084 2008-01-03  Jakub Jelinek  <jakub@redhat.com>
2085
2086         PR middle-end/34608
2087         * omp-low.c (expand_omp_parallel): Purge dead EH edges in the child fn.
2088
2089 2008-01-02  Richard Sandiford  <rsandifo@nildram.co.uk>
2090
2091         * tree-sra.c (scalarize_init): Insert the generate_element_init
2092         statements after the generate_element_zero statements.
2093
2094 2008-01-02  Richard Guenther  <rguenther@suse.de>
2095
2096         PR middle-end/34093
2097         PR middle-end/31976
2098         * tree-ssa-operands.c (ssa_operand_alloc): Also allocate a buffer
2099         for very large number of operands instead of ICEing.
2100
2101 2008-01-02  Arthur Norman <acn1@cam.ac.uk>
2102
2103         PR target/34013
2104         * gcc/config/i386/i386.c (ix86_expand_prologue): Save red-zone
2105         while stack probing.
2106
2107 2008-01-01  Douglas Gregor  <doug.gregor@gmail.com>
2108
2109         * c-opts.c (sanitize_cpp_opts): Don't warn about "long long" when
2110         in C++0x mode.
2111
2112 2008-01-01  Volker Reichelt  <v.reichelt@netcologne.de>
2113
2114         PR libmudflap/26442
2115         * tree-mudflap.c (mx_register_decls): Guard warning by
2116         !DECL_ARTIFICIAL check.
2117
2118 2008-01-01  Jakub Jelinek  <jakub@redhat.com>
2119
2120         * config/i386/sse.md (sse5_pperm, sse5_pperm_pack_v2di_v4si,
2121         sse5_pperm_pack_v4si_v8hi, sse5_pperm_pack_v8hi_v16qi,
2122         sse5_perm<mode>): Fix constraints.