re PR target/13608 (Incorrect code with -O3 -ffast-math)
[gcc.git] / gcc / ChangeLog
1 2004-01-16 Jan Hubicka <jh@suse.cz>
2
3 * i386.md (load_tp_di): Fix pasto.
4
5 PR opt/13608
6 * i386.c (ix86_compute_frame_layout): Fix for alloca on leaf function.
7
8 * c-pretty-print.c (pp_c_type_cast, pp_c_abstract_declarator,
9 pp_c_character_constant, pp_c_floating_constant,
10 pp_c_additive_expression, pp_c_shift_expression,
11 pp_c_equality_expression, pp_c_and_expression,
12 pp_c_exclusive_or_expression, pp_c_inclusive_or_expression,
13 pp_c_logical_and_expression): Remove inline modifier.
14 * dwarf2out.c (get_AT): Likewise.
15 * et-forest.c (et_splay): Likewise.
16 * ra.h (ra_alloc, ra_calloc): Likewise
17
18 2004-01-16 Kazu Hirata <kazu@cs.umass.edu>
19
20 * config/frv/frv-protos.h: Fix comment formatting.
21 * config/frv/frv.c: Likewise.
22 * config/frv/frv.h: Likewise.
23 * config/frv/frv.md: Likewise.
24 * config/frv/frvbegin.c: Likewise.
25 * config/frv/frvend.c: Likewise.
26
27 2004-01-16 Kazu Hirata <kazu@cs.umass.edu>
28
29 * system.h (LINKER_DOES_NOT_WORK_WITH_DWARF2): Poison.
30 * doc/tm.texi (PREFERRED_DEBUGGING_TYPE): Don't mention
31 LINKER_DOES_NOT_WORK_WITH_DWARF2.
32 (LINKER_DOES_NOT_WORK_WITH_DWARF2): Remove.
33
34 2004-01-16 J"orn Rennecke <joern.rennecke@superh.com>
35
36 PR 11864
37 * postreload.c (reload_cse_simplify_operands): Don't remove
38 implicit extension from LOAD_EXTEND_OP.
39
40 2004-01-16 Jan Hubicka <jh@suse.cz>
41
42 PR opt/11350
43 * cfgcleanup.c (try_optimize_cfg): Suppress tablejump removal
44 after reload.
45 * cfgrtl.c (rtl_can_merge_blocks, cfglayout_can_merge_blocks,
46 rtl_try_redirect_by_replacing_branch): Likewise.
47
48 2004-01-15 Geoffrey Keating <geoffk@apple.com>
49
50 PR pch/13689
51 * alias.c (struct alias_set_entry): Mark for GC.
52 (alias_sets): Make static, mark for GC.
53 (record_alias_subset): Use GC to allocate alias structures.
54 * varray.c (element): Make generic varrays GCed.
55
56 PR pch/13361
57 * c-typeck.c (constructor_asmspec): Delete.
58 (struct initializer_stack): Delete field 'asmspec'.
59 (start_init): Delete saving of asmspec.
60 (finish_init): Don't update constructor_asmspec.
61 * dwarf2out.c (rtl_for_decl_location): Duplicate string from tree.
62 * stmt.c (expand_asm): Duplicate strings from tree.
63 (expand_asm_operands): Likewise.
64 * tree.c (tree_size): Update computation of size of STRING_CST.
65 (make_node): Don't make STRING_CST nodes.
66 (build_string): Allocate string with tree node.
67 * tree.def (STRING_CST): Update comment.
68 * tree.h (TREE_STRING_POINTER): Adjust for change to STRING_CST.
69 (tree_string): Place contents of string in tree node.
70 * config/sh/sh.c (sh_handle_sp_switch_attribute): Duplicate string
71 from tree.
72
73 * config/rs6000/rs6000.c (rs6000_va_arg): No need to special-case
74 altivec operands.
75
76 2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
77
78 * c-common.h: Fix comment formatting.
79 * c-cppbuiltin.c: Likewise.
80 * c-pragma.c: Likewise.
81 * calls.c: Likewise.
82 * collect2.c: Likewise.
83 * cppcharset.c: Likewise.
84 * cpptrad.c: Likewise.
85 * dbxout.c: Likewise.
86 * defaults.h: Likewise.
87 * dwarf2out.c: Likewise.
88 * fold-const.c: Likewise.
89 * genautomata.c: Likewise.
90 * genconditions.c: Likewise.
91 * genflags.c: Likewise.
92 * gengtype.c: Likewise.
93 * integrate.c: Likewise.
94 * loop.c: Likewise.
95 * predict.c: Likewise.
96 * sdbout.c: Likewise.
97
98 2004-01-15 Zack Weinberg <zack@codesourcery.com>
99
100 * config/ia64/ia64.md (*movti_internal): C output template
101 extracted to ia64.c.
102 (*movti_internal_reg): Delete.
103 (reload_inti, reload_outti): Use the correct mode on operand 2
104 in the first place, don't fix it up in the output template.
105 (movtf, reload_ointf, reload_outtf): New expanders.
106 (*movtf_internal): New define_insn_and_split.
107 * config/ia64/ia64.c (ia64_split_timode): Rename to ia64_split_tmode;
108 make static; do not hand TFmode CONST_DOUBLEs to split_double.
109 (ia64_split_tmode_move): New function, body mostly pulled
110 from ia64.md:*movti_internal.
111 (ia64_function_arg_words): New function, extracted common
112 logic from ia64_function_arg et seq.
113 (ia64_function_arg_offset): Likewise. Handle correctly the
114 case of a scalar quantity 16 bytes wide with only 8-byte alignment.
115 (ia64_function_arg, ia64_function_arg_partial_nregs)
116 (ia64_function_arg_advance): Use ia64_function_arg_words and
117 ia64_function_arg_offset.
118 (ia64_function_value): TCmode does not go in float regs.
119 (ia64_secondary_reload_class): Also handle TFmode.
120 * config/ia64/ia64-protos.h: Remove prototype for
121 ia64_split_timode; add prototype for ia64_split_tmode_move.
122
123 2004-01-15 Kelley Cook <kcook@gcc.gnu.org>
124
125 * Makefile.in (MAINT): Make it an immediate assignment.
126
127 2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
128
129 * config/m32r/m32r.md: Remove useless calls to gen_lowpart.
130
131 2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
132
133 * config/h8300/coff.h: Replace Hitachi with Renesas.
134 * config/h8300/elf.h: Likewise.
135 * config/h8300/h8300-protos.h: Likewise.
136 * config/h8300/h8300.c: Likewise.
137 * config/h8300/h8300.h: Likewise.
138 * config/h8300/h8300.md: Likewise.
139 * config/h8300/lib1funcs.asm: Likewise.
140
141 2004-01-15 Andrew Pinski <apinski@apple.com>
142
143 * config/rs6000/rs6000.c (uses_TOC): Wrap #if TARGET_ELF
144 around it.
145
146 2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
147
148 * config/h8300/h8300.c (h8300_return_in_memory): New.
149 (TARGET_STRUCT_VALUE_RTX): Likewise.
150 (TARGET_RETURN_IN_MEMORY): Likewise.
151 * config/h8300/h8300.h (STRUCT_VALUE): Remove.
152 (RETURN_IN_MEMORY): Likewise.
153
154 2004-01-15 Richard Earnshaw <rearnsha@arm.com>
155
156 PR optimization/13375
157 * gcse.c (handle_avail_expr): Just return if the source is not a
158 single set.
159
160 2004-01-15 Richard Earnshaw <rearnsha@arm.com>
161 Daniel Jacobowitz <drow@mvista.com>
162
163 * arm/lib1funcs.asm (ARM_FUNC_START): Correct interworking case.
164 (EQUIV): Define.
165 (ARM_FUNC_ALIAS): New macro.
166 * arm/ieee754-df.S (gedf2, ledf2, nedf2, eqdf2): Use it.
167 * arm/ieee754-sf.S (gesf2, lesf2, nesf2, eqsf2): Use it.
168
169 2004-01-15 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
170
171 PR optimization/12372
172 * calls.c (expand_call): Add call_fusage data for stack arguments in
173 constant calls.
174
175 2004-01-15 Alan Modra <amodra@bigpond.net.au>
176
177 * config/rs6000/rs6000.c (uses_TOC): Correct comment. Make static.
178 (rs6000_elf_declare_function_name): Formatting.
179 * config/rs6000/rs6000-protos.h (uses_TOC): Remove declaration.
180
181 2004-01-15 Jan Hubicka <jh@suse.cz>
182
183 PR bootstrap/13692
184 * sched-deps.c (sched_analyze_1, sched_analyze_2): Fix thinko in
185 previous patch.
186
187 2004-01-15 Richard Henderson <rth@redhat.com>
188
189 * config/alpha/alpha.h (REG_ALLOC_ORDER): Reorder fp regs after
190 integer regs of the same call-savedness.
191
192 2004-01-15 Andreas Schwab <schwab@suse.de>
193
194 PR bootstrap/13562
195 * config/m68k/m68k.c (output_move_const_into_data_reg): Clear cc
196 status for NOTB/NOTW/NEGW methods.
197
198 2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
199
200 * doc/invoke.texi: Update dump file names. Fix a typo.
201
202 2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
203
204 * builtins.c (expand_builtin_va_end): Don't use
205 EXPAND_BUILTIN_VA_END.
206 * system.h (EXPAND_BUILTIN_VA_END): Poison.
207 * config/d30v/d30v.h: Remove a commented-out definition of
208 EXPAND_BUILTIN_VA_END.
209 * config/stormy16/stormy16.h: Likewise.
210
211 2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
212
213 * system.h (STRUCT_VALUE_INCOMING_REGNUM): Poison.
214 * targhooks.c (default_struct_value_rtx): Don't use
215 STRUCT_VALUE_INCOMING_REGNUM.
216
217 2004-01-15 Kelley Cook <kcook@gcc.gnu.org>
218
219 PR bootstrap/12744
220 * configure.in: Revamp enable-generated-files-in-srcdir rule to define
221 GENINSRC and not parsedir. Define srcextra as a langhook.
222 * configure: Regenerate.
223 * Makefile.in: Suppress default .l.c rule. Don't substitute
224 parsedir and delete all references throughout. Conditionally define
225 rule for srcextra dependent on GENINSRC.
226 (stmp-docobjdir): Delete.
227 (c-parse.o, gengtype-lex.o, gengtype-yacc.o): Use implicit build rule.
228 (srcextra): Copy c-parse.y, c-parse.c, gengtype-lex.c, gengtype-yacc.c,
229 and gengtype-yacc.h back to source directory.
230 (maintainer-clean): Delete all parse files in source directory.
231 (distclean): Delete generated files.
232
233 * objc/Make-lang.in (objc-parse.o): Use implicit build rule.
234 (objc-parse.c, objc-parse.y): Don't use parsedir.
235 (objc.srcextra): Copy objc-parse.y and objc-parse.c back to source
236 directory if requested.
237 (po-generated): Don't use parsedir.
238 (objc.maintainer-clean): Delete above files from source directory.
239
240 2004-01-14 Kazu Hirata <kazu@cs.umass.edu>
241
242 * doc/tm.texi (FUNCTION_VALUE): Fix a typo.
243
244 2004-01-14 Kazu Hirata <kazu@cs.umass.edu>
245
246 * doc/tm.texi: Replace RETURN_IN_MEMORY with
247 TARGET_RETURN_IN_MEMORY.
248
249 2004-01-15 Jan Hubicka <jh@suse.cz>
250
251 * builtins.c (std_expand_builtin_va_arg): Align operand when needed.
252 * i386.c (init_cumulative_args): Set warn_sse; fix handling of variadic
253 functions accepting SSE arguments
254 (function_arg): Warn only when asked to warn.
255 * i386.h (ix86_args): Add warn_sse/warn_mmx fiels.
256
257 2004-01-14 Joseph S. Myers <jsm@polyomino.org.uk>
258
259 * c-parse.in (stmts_and_decls): Make label at end of compound
260 statement a hard error.
261
262 2004-01-14 Jan Hubicka <jh@suse.cz>
263
264 * cgraph.c (create_edge): Use local.redefined_extern_inline.
265 * cgraph.h (cgraph_local_info): Sort fields by size; add
266 redefined_extern_inline
267 (cgraph_global_info): Sort fields by size.
268 (cgraph_node): Likewise.
269 * cgraphunit.c (cgraph_finalize_function): Se
270 local.redefined_extern_inline on redefinition.
271 (cgraph_analyze_function): Use it; fix formating.
272
273 2004-01-14 Jan Hubicka <jh@suse.cz>
274
275 PR c++/10776
276 * sched-deps.c (trye_dependency_cache, anti_dependency_cache,
277 outptu_dependency_cache, forward_dependency_cahe): Trun to vectors of
278 bitmaps
279 (cache_size): New variable
280 (add_dependence): Update use; canonize early memory locations
281 (sched_analyze_1): Likewise.
282 (sched_analyze_2): Likewise.
283 (init_dependency_caches): Initialize bitmaps.
284 (free_dependency_caches): Free bitmaps
285
286 2004-01-14 Kazu Hirata <kazu@cs.umass.edu>
287
288 * calls.c: Replace STRICT_ARGUMENT_NAMING in comments with
289 targetm.calls.strict_argument_naming().
290 * target.h: Likewise.
291
292 2004-01-14 Richard Henderson <rth@redhat.com>
293
294 PR debug/13231
295 * dwarf2out.c (dwarf2out_stack_adjust): Skip prologue and epilogue
296 instructions.
297
298 2004-01-14 Richard Henderson <rth@redhat.com>
299
300 PR c++/12491
301 * except.c (struct eh_region): Add u.fixup.resolved.
302 (resolve_one_fixup_region): Split out from ...
303 (resolve_fixup_regions): ... here.
304
305 2004-01-14 Kazu Hirata <kazu@cs.umass.edu>
306
307 * config/mn10300/mn10300.h (STRUCT_VALUE): Change to 0.
308
309 2004-01-14 Kazu Hirata <kazu@cs.umass.edu>
310
311 * config/alpha/alpha.h (STRUCT_VALUE): Remove.
312 * config/alpha/vms.h (STRUCT_VALUE_REGNUM): Remove #undef.
313 (STRUCT_VALUE): Remove.
314
315 2003-01-14 Steven Bosscher <stevenb@suse.de>
316
317 * system.h: Poison PROMOTED_MODE
318 * integrate.c (expand_inline_function): Don't mention the
319 PROMOTED_MODE.
320 * loop.c (update_giv_derive): Same.
321 * tree.h (DECL_RTL): Same.
322
323 2004-01-14 J"orn Rennecke <joern.rennecke@superh.com>
324
325 PR target/9365
326 * sh.c (gen_block_redirect): Add special handling of RETURN.
327 (gen_far_branch) Don't call gen_stuff_delay_slot if there is no
328 far branch target (i.e. it's a return).
329
330 2004-01-14 Kazu Hirata <kazu@cs.umass.edu>
331
332 * regrename.c (find_oldest_value_reg): Fix a warning.
333
334 2004-01-14 Richard Earnshaw <rearnsha@arm.com>
335
336 PR bootstrap/12527
337 * config.gcc (arm*-*-linux*): Don't include unknown-elf.h in tm_file.
338 Move linux-gas.h and linux-elf.h before aout.h.
339 * arm/arm.h (INITIALIZE_TRAMPOLINE): Only define if not already.
340 * arm/linux-elf.h (SUBTARGET_CPU_DEFAULT): Define.
341
342 2004-01-14 Kazu Hirata <kazu@cs.umass.edu>
343
344 * config/m32r/m32r.md: Use GEN_INT instead of gen_rtx
345 (CONST_INT, VOIDmode, ...).
346
347 2004-01-14 Richard Earnshaw <rearnsha@arm.com>
348
349 * regrename.c (find_oldest_value_reg): If the replacement uses
350 multiple hard registers, check that all of them are in CLASS.
351
352 2004-01-14 Jan Hubicka <jh@suse.cz>
353
354 * alias.c (get_alias_set): Initialize alias set to 0 when subset is
355 impossible.
356
357 2004-01-14 Kelley Cook <kcook@gcc.gnu.org>
358
359 * Makefile.in: Define MAINT from --enable-maintainer-mode.
360
361 2004-01-14 Hartmut Penner <hpenner@de.ibm.com>
362
363 * gcc/config/rs6000/rs6000.c (rs6000_stack_info)
364 Calculate always vrsave_mask if TARGET_ALTIVEC.
365 (rs6000_emit_prologue): Emit code for vrsave
366 only if TARGET_ALTIVEC_VRSAVE.
367 (rs6000_emit_epilogue): Likewise.
368
369 2004-01-14 Eric Botcazou <ebotcazou@libertysurf.fr>
370
371 * config/sparc/sparc.md (tie_add32): Fix pasto.
372 (tie_add64): Likewise.
373
374 2004-01-14 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
375
376 * config/i386/i386.md (*addqi_1_slp): Do not access operands[2].
377
378 2004-01-13 Kazu Hirata <kazu@cs.umass.edu>
379
380 * config/iq2000/iq2000-protos.h: Fix comment formatting.
381 * config/iq2000/iq2000.c: Likewise.
382 * config/iq2000/iq2000.md: Likewise.
383
384 2004-01-14 J. Brobecker <brobecker@gnat.com>
385
386 * dwarf2out.c (is_ada_subrange_type): No longer check the TYPE_NAME.
387 (subrange_type_die): Add handle for nameless subrange types.
388
389 2004-01-13 Kazu Hirata <kazu@cs.umass.edu>
390
391 * config/h8300/h8300-protos.h: Replace do_movsi with
392 h8300_expand_movsi.
393 * config/h8300/h8300.c (do_movsi): Change to
394 h8300_expand_movsi.
395 * config/h8300/h8300.md (movsi): Replace do_movsi with
396 h8300_expand_movsi.
397 (movsf): Likewise.
398
399 2004-01-13 Kazu Hirata <kazu@cs.umass.edu>
400
401 * config/h8300/h8300.c (dosize): Change to
402 h8300_emit_stack_adjustment. Update callers.
403
404 2004-01-13 Kazu Hirata <kazu@cs.umass.edu>
405
406 * config/h8300/h8300.md (movstrictqi): Add an alternative with
407 the source being post_inc. Tighten the predicate for the
408 destination to register_operand.
409 (movstricthi): Likewise.
410
411 2004-01-13 Kazu Hirata <kazu@cs.umass.edu>
412
413 * system.h (SHARED_BSS_SECTION_ASM_OP): Poison.
414 * varasm.c (bss_section): Don't use SHARED_BSS_SECTION_ASM_OP.
415 * doc/tm.texi (SHARED_BSS_SECTION_ASM_OP): Remove.
416
417 2004-01-14 Jan Hubicka <jh@suse.cz>
418
419 Partial fix PR c++/12850
420 * cgraphunit.c (cgraph_finalize_function): Always ggc_collect when
421 at zero nest level.
422
423 2004-01-13 Bernardo Innocenti <bernie@develer.com>
424
425 * config/m68k/netbsd-elf.h (REGISTER_NAMES): Add missing "argptr"
426 pseudo-register.
427
428 2004-01-13 Devang Patel <dpatel@apple.com
429
430 PR debug/7078
431 * dbxout.c (dbxout_symbol_name): Emit mangled names for
432 NAMESPACE_DECL memebers.
433
434 2004-01-13 Andrew Pinski <pinskia@physics.uc.edu>
435
436 PR c++/12709
437 * c-common.c (finish_fname_decls): Use the chain only if the
438 tree is an expr_stmt.
439
440 2004-01-13 Vladimir Makarov <vmakarov@redhat.com>
441
442 * rtl.def: Add comment about new option in automata_option.
443
444 * genautomata.c (PROGRESS_OPTION): New macro.
445 (progress_flag): New global variable.
446 (gen_automata_option): Process `progress'.
447 (transform_insn_regexps, check_unit_distributions_to_automata,
448 make_automaton, NDFA_to_DFA, build_automaton, create_automata,
449 expand_automata, write_automata): Print about the progress only if
450 progress_flag. Remove fflush.
451 (initiate_automaton_gen): Process command line flag `-progress'.
452
453 * doc/md.texi: Describe the new option.
454
455 2004-01-13 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
456
457 * cfg.c (dump_bb): Dump entry edges.
458
459 2004-01-13 Richard Earnshaw <rearnsha@arm.com>
460
461 * arm.c (thumb_legitimate_address_p): Only allow constant pool
462 references from SImode.
463 * arm.md (thumb_movhi_insn): Don't allow minipool references.
464
465 2004-01-13 Kazu Hirata <kazu@cs.umass.edu>
466
467 * system.h (TEXT_SECTION): Poison.
468 * varasm.c (text_section): Don't use TEXT_SECTION.
469 * config/sh/sh.c (sh_file_start): Fix a comment typo.
470 * doc/tm.texi (TEXT_SECTION): Remove.
471
472 2004-01-13 Ben Elliston <bje@wasabisystems.com>
473
474 * doc/rtl.texi (Vector Operations): Remove defunct vec_const item.
475
476 2004-01-12 James E Wilson <wilson@specifixinc.com>
477
478 * unwind-libunwind.c: Delete.
479
480 2004-01-12 Zack Weinberg <zack@codesourcery.com>
481
482 PR 13656
483 * c-decl.c (diagnose_mismatched_decls): Whenever newtype or
484 oldtype is set, set *newtypep or *oldtypep too. Do not set
485 them at the very end.
486 (validate_proto_after_old_defn): Restructure for comprehensibility;
487 make error messages clearer.
488
489 2004-01-12 Zack Weinberg <zack@codesourcery.com>
490
491 * varray.h (VARRAY_POP): Add checking variant, aborts on underflow.
492 (VARRAY_TOP): Use VARRAY_CHECK so the access is bounds-checked.
493 * varray.c: No need to prototype error.
494 (varray_check_failed): Wrap long string onto two lines.
495 (varray_underflow): New function.
496
497 2004-01-13 Steven Bosscher <stevenb@suse.de>
498
499 PR c++/13376
500 * function.h (struct function): Kill `name' field.
501 (current_function_name): Make it an extern function.
502 * function.c (current_function_name): New function.
503 * graph.c: Update all uses of current_function_name.
504 * gcse.c: Likewise.
505 * config/alpha/alpha.c, config/avr/avr.c, config/c4x/c4x.c,
506 config/mips/mips.c, config/pdp11/pdp11.c: Likewise.
507 * config/ip2k/ip2k.c (function_prologue): Use MAIN_NAME_P
508 instead of a strcmp with "main".
509
510 2004-01-13 Jan Hubicka <jh@suse.cz>
511
512 * c-decl.c (diagnose_mismatched_decls): Fix warning calls.
513
514 * cgraphunit.c (cgraph_optimize_function): Always do
515 optimize_inline_calls when there is always_inline callee.
516 (cgraph_decide_inlining): Fix formating.
517 * tree-inline.c (inlinable_function_p): Do sorry for alwaysinline
518 functions.
519 (expand_call_inline): Likewise.
520 * toplev.h (sorry): Fix prototype.
521
522 2004-01-12 Roger Sayle <roger@eyesopen.com>
523
524 * builtins.c (expand_builtin_expect_jump): Simplify logic. Handle
525 conditional jumps that drop through to unconditional jumps or the
526 end of the sequence.
527
528 2004-01-13 Jan Hubicka <jh@suse.cz>
529
530 * alias.c (new_alias_set): Construct the alias_set varray.
531 (init_alias_once): Don't do it here.
532
533 2004-01-12 Marc Espie <espie@openbsd.org>
534
535 * system.h: handle YYBYACC like YYBISON.
536
537 2004-01-12 Jonathan Merriman <jonm@dualitymedia.com>
538
539 PR target/10847
540 * config.gcc: No longer includes conflicting header sparc/sol2.h when
541 building on sparc64-*-openbsd*.
542
543 2004-01-12 Andrew Pinski <pinskia@physics.uc.edu>
544
545 PR debug/13539
546 * dbxout.c (dbxout_type): Protected inheritance is not
547 private but protected.
548
549 2004-01-12 Richard Sandiford <rsandifo@redhat.com>
550
551 * config/mips/mips.c (mips_symbolic_constant_p): Revert last patch.
552
553 2004-01-12 Kazu Hirata <kazu@cs.umass.edu>
554
555 PR optimization/12508.
556 * combine.c (try_combine): Remove a dead set in a parallel
557 even if its destination is a subreg.
558
559 Revert:
560 2003-06-03 Kazu Hirata <kazu@cs.umass.edu>
561 * combine.c (simplify_set): Don't move a subreg in SET_SRC to
562 SET_DEST if WORD_REGISTER_OPERATIONS is not defined.
563
564 2004-01-12 Geoffrey Keating <geoffk@apple.com>
565
566 * real.c: Update copyright date.
567 * emit-rtl.c: Likewise.
568 * rtl.h: Likewise.
569 * dwarf2out.c: Likewise.
570 * config/rs6000/darwin-ldouble.c: Likewise.
571 * config/rs6000/rs6000.md: Likewise.
572
573 2004-01-12 David Edelsohn <edelsohn@gnu.org>
574
575 * config/rs6000/rs6000.c (rs6000_init_libfuncs): Add AIX
576 TFmode to SImode libfuncs.
577
578 2004-01-12 Roger Sayle <roger@eyesopen.com>
579
580 PR middle-end/11397
581 * varasm.c (assemble_alias): Remove weak aliases from weak_decls.
582
583 2004-01-12 Jan Hubicka <jh@suse.cz>
584
585 PR opt/12826
586 * loop.c (insert_loop_mem): Preffer VOLATILE memory references to be
587 stored.
588
589 PR opt/12863
590 * cfgcleanup.c (label_is_jump_target_p): Move to...
591 * rtlanal.c (label_is_jump_target_p): ... here.
592 * cfgrtl.c (cfg_layout_redirect_edge_and_branch): Fix redirecting of fallthru
593 edges unified with branch edges.
594
595 2004-01-12 Richard Earnshaw <rearnsha@arm.com>
596
597 * simplify-rtx.c (simplify_immed_subreg): Correctly extract the
598 high word of an integral CONST_DOUBLE.
599
600 2004-01-12 Paul Brook <paul@codesourcery.com>
601
602 * simplify-rtx.c (simplify_plus_minus): Always generate canonical form.
603
604 2004-01-12 J"orn Rennecke <joern.rennecke@superh.com>
605
606 PR target/13585
607 * sh-protos.h (check_use_sfunc_addr): Declare.
608 * sh.c (extract_sfunc_addr, check_use_sfunc_addr): New functions.
609 * sh.md (use_sfunc_addr): Use check_use_sfunc_addr in insn predicate.
610
611 2004-01-12 Jan Hubicka <jh@suse.cz>
612
613 * alias.c: Invlude varray.h
614 (alias_sets): Turn into varray.
615 (get_alias_set_entry): Use VARRAY; mark inline.
616 (mems_in_disjoint_alias_sets_p): Mark inline.
617 (record_alias_subset): Use varray.
618 (init_alias_once): Initialize varray.
619 (new_alias_set): Grow array.
620 * varray.c: Make VARRAY_GENERIC_PTR non GTYized.
621
622 2004-01-12 Jan Hubicka <jh@suse.cz>
623
624 Partial fix for PR opt/10776 II
625 * cselib.c: Include params.h
626 (cselib_invalidate_mem): Limit amount of nonconflicting memory
627 locations.
628 * params.def (PARAM_MAX_CSELIB_MEMORY_LOCATIONS): New.
629 * Makefile.in (cselib.o): Depend on params.h
630
631 2004-01-12 Richard Sandiford <rsandifo@redhat.com>
632
633 * combine.c (combine_simplify_rtx): Don't pass VOIDmode to
634 simplify_unary_operation if the operand has a known mode.
635
636 2004-01-12 Hartmut Penner <hpenner@de.ibm.com>
637
638 PR target/13534
639 * gcc/config/rs6000/rs6000.c (word_offset_memref_operand): New
640 predicate to handle 'ld' conform addresses.
641 * gcc/config/rs6000/rs6000.h (EXTRA_CONSTRAINT): New 'Y'
642 contraint.
643 (EXTRA_MEMORY_CONSTRAINT): Tell reload which constraint
644 are memory contraints.
645 * gcc/config/rs6000/rs6000-protos.h (word_offset_memref_operand):
646 New prototype.
647 * gcc/config/rs6000/rs6000.md (*movdf_hardfloat64):
648 Change 'o' to 'Y' constraint.
649 (*movdf_softfloat64): Ditto.
650
651 2004-01-12 Bernardo Innocenti <bernie@develer.com>
652
653 * gcc/config/m68k/m68k.md: Switch from the "*..." syntax to the
654 brace-enclosed syntax in all C output statements.
655
656 2004-01-12 David Edelsohn <edelsohn@gnu.org>
657
658 PR target/13401
659 * config/rs6000/rs6000.c (rs6000_output_function_epilogue):
660 Objective-C language type value is 14.
661
662 2004-01-12 Markus F.X.J. Oberhumer <markus@oberhumer.com>
663
664 PR c/12148
665 * config/m68k/fpgnulib.c: Fix `-mshort' bugs: Use `long' instead of
666 `int' in a number of places to make sure we always have a SImode
667 and not a HImode. Add a 'L' suffix to a number of constants.
668
669 2004-01-11 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
670
671 * pa.c: Don't include obstack.h.
672
673 * pa.md: Correct constraint in pattern for loading PIC label address.
674
675 2004-01-11 Kaz Kojima <kkojima@gcc.gnu.org>
676
677 * config/sh/linux.h (ASM_PREFERRED_EH_DATA_FORMAT): Undefine
678 before defining.
679
680 2004-01-11 Steven Bosscher <stevenb@suse.de>
681
682 PR fortran/9972
683 * toplev.c (rest_of_handle_inline): Also consider functions
684 for deferral if the language is GNU F77.
685
686 2004-01-11 Zack Weinberg <zack@codesourcery.com>
687
688 * c-decl.c (diagnose_arglist_conflict): Add missing space to
689 diagnostic messages.
690
691 2004-01-11 Jakub Jelinek <jakub@redhat.com>
692
693 PR middle-end/13392
694 * builtins.c (expand_builtin_expect_jump): Handle conditional jumps
695 to drop through label. Don't fall back to SCC even when conditional
696 jump has not been found.
697
698 2004-01-11 Jan Hubicka <jh@suse.cz>
699
700 * invoke.texi: Fix syntax error in previous patch.
701
702 Partial fix for PR opt/10776
703 * Makefile.in (reload.o): Include param.h
704 * params.def (PARAM_MAX_RELOAD_SEARCH_INSNS): New parameter.
705 * reload.c: Include params.h.
706 (find_equiv_reg): Work limiting check.
707 * invoke.texi: Document.
708
709 2004-01-11 Richard Sandiford <rsandifo@redhat.com>
710
711 * config/mips/mips.c (mips_symbolic_constant_p): Don't allow
712 out-of-bounds accesses to string constants. Simplify mips16
713 case accordingly.
714
715 2004-01-11 Richard Sandiford <rsandifo@redhat.com>
716
717 PR optimization/13469
718 * toplev.c (rest_of_compilation): Call purge_all_dead_edges after
719 reload_cse_regs (-fnon-call-exceptions only).
720
721 2004-01-11 Kazu Hirata <kazu@cs.umass.edu>
722
723 * config/mcore/lib1.asm: Fix comment formatting.
724 * config/mcore/mcore-elf.h: Likewise.
725 * config/mcore/mcore.c: Likewise.
726 * config/mcore/mcore.h: Likewise.
727 * config/mcore/mcore.md: Likewise.
728
729 2004-01-10 Zack Weinberg <zack@codesourcery.com>
730
731 * c-decl.c (duplicate_decls): Break apart into...
732 (diagnose_arglist_conflict, validate_proto_after_old_defn)
733 (locate_old_defn, diagnose_mismatched_decls, merge_decls):
734 ... these new functions. Restructure for comprehensibility.
735 Remove various archaic special cases. Always report the
736 location of the previous declaration when a diagnostic is issued.
737 (redeclaration_error_message): Fold into diagnose_mismatched_decls.
738 (match_builtin_function_types): Delete unnecessary forward declaration.
739
740 2004-01-10 Zack Weinberg <zack@codesourcery.com>
741
742 * genautomata.c (make_automaton, NDFA_to_DFA):
743 Print progress bars with '.' characters instead of '*'.
744 (build_automaton): Change notes to match.
745
746 2004-01-10 Kazu Hirata <kazu@cs.umass.edu>
747
748 * config/m32r/m32r.md: Use define_constants for unspec and
749 unspec_volatile.
750
751 2004-01-10 Jan Hubicka <jh@suse.cz>
752
753 PR opt/11635
754 * expr.c (expand_expr_real): More curefully expand union casts.
755
756 2004-01-10 Kazu Hirata <kazu@cs.umass.edu>
757
758 * config/m32r/m32r.md (flush_icache): Use 1 for
759 unspec_volatile.
760
761 2004-01-10 David Edelsohn <edelsohn@gnu.org>
762 James E Wilson <wilson@specifixinc.com>
763
764 PR debug/12860
765 * dbxout.c (dbxout_symbol): Remove initialization of
766 current_sym_code, current_sym_value, and current_sym_addr.
767 (dbxout_symbol_location): Same.
768 (dbxout_prepare_symbol): Zero current_sym_code,
769 current_sym_value, and current_sym_addr.
770
771 2004-01-10 Richard Sandiford <rsandifo@redhat.com>
772
773 * tree.c (get_unwidened): Reorder conditions so that the null pointer
774 check is done first.
775
776 2004-01-09 Eric Christopher <echristo@redhat.com>
777
778 * toplev.c (rest_of_handle_cfg): Add reg_scan pass
779 if we're running mark_constant_function.
780
781 2004-01-09 Jeff Bailey <jbailey@nisa.net>
782
783 PR target/12561
784 * config/t-gnu: Rename SYSTEM_HEADER_DIR to NATIVE_SYSTEM_HEADER_DIR.
785
786 2004-01-09 Andrew Pinski <pinskia@physics.uc.edu>
787
788 PR debug/11231
789 * dbxout.c (dbxout_type_fields): Return if any item is
790 error_mark_node or the type is error_mark_node.
791
792 2004-01-09 Geoffrey Keating <geoffk@apple.com>
793
794 * config/rs6000/darwin-ldouble.c: Add big comment explaining
795 exactly what is expected as a 'long double'.
796 (_xlqadd): When a value to be returned is representable as a
797 'double', just return it directly, do not construct it using a union.
798 Also, correct final fixup.
799 (_xlqmul): Likewise.
800 (_xlqdiv): Likewise.
801 * real.c (encode_ibm_extended): Make consistent with darwin-ldouble.c.
802
803 * config/rs6000/rs6000.md (fix_trunctfdi2): Delete.
804
805 2004-01-09 Richard Henderson <rth@redhat.com>
806
807 * recog.c (constrain_operands): Validate mem operands.
808
809 2004-01-09 James E Wilson <wilson@specifixinc.com>
810
811 * gcc.c (init_spec): Remove -lunwind from shared case.
812 * conifg/ia64/t-hpux (SHLIB_LINK): Add -lunwind.
813
814 2004-01-09 Steve Ellcey <sje@cup.hp.com>
815
816 * configure.ac: (gcc_cv_ld_hidden) Set to true for ia64*-*-hpux*.
817 * configure: Regenerate
818
819 2004-01-09 Joseph S. Myers <jsm@polyomino.org.uk>
820
821 PR c/11234
822 * c-typeck.c (build_c_cast): If pedantic, warn for conversions
823 between function and object pointers.
824 (digest_init): When comparing a pointer to function type to the
825 target type, only apply TREE_TYPE once to the pointer to function
826 type.
827 * except.c (for_each_eh_label_1): Treat data as a pointer to a
828 function pointer rather than casting it to a function pointer.
829 (for_each_eh_label): Update caller.
830 * recog.h (struct insn_data): Use a struct or union for output.
831 * genoutput.c (output_insn_data): Update.
832 * final.c (get_insn_template): Update.
833
834 2004-01-09 Mark Mitchell <mark@codesourcery.com>
835
836 * expr.h (expand_expr): Make it a macro, not a function.
837 (expand_expr_real): New function.
838 * expr.c (store_expr): Adjust logic for deciding whether or not to
839 copy the value returned by expand_expr.
840 (expand_expr): Rename to ...
841 (expand_expr_real): ... this. Add alt_rtl parameter. Adjust
842 calls to language hooks.
843 * c-common.h (c_expand_expr): Adjust prototype.
844 * c-common.c (c_expand_expr): Add alt_rtl parameter.
845 * langhooks-def.h (lhd_expand_expr): Change prototype.
846 * langhooks.c (lhd_expand_expr): Add all_rtl parameter.
847 * langhooks.h (lang_hooks): Change type of expand_expr.
848 * stmt.c (stmt_status): Add x_last_expr_alt_rtl.
849 (last_expr_alt_rtl): Likewise.
850 (expand_expr_stmt_value): Set last_expr_alt_rtl.
851 (clear_last_expr): Clear it.
852 (expand_end_stmt_expr): Set RTL_EXPR_ATL_RTL.
853 (expand_end_bindings): Save and restor last_expr_alt_rtl.
854 * tree.def (RTL_EXPR): Give it an additional operand.
855 * tree.h (RTL_EXPR_ALT_RTL): New macro.
856
857 2004-01-09 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
858
859 * config/m32r/m32r.h (TARGET_CPU_CPP_BUILTINS): Add __m32r__.
860 * config/m32r/m32r.c (call26_operand): Allow in PIC mode.
861
862 2004-01-09 Kazu Hirata <kazu@cs.umass.edu>
863
864 PR target/13380.
865 * config/m32r/m32r.md: Replace (reg:SI 17) with (reg:CC 17)
866 or (ne:SI (reg:CC 17) (const_int 0)).
867 Be specific about modes wherever possible.
868
869 2004-01-09 Kazu Hirata <kazu@cs.umass.edu>
870
871 * config/m32r/m32r.c (m32r_expand_block_move): Call
872 gen_movestrsi_internal with two more arguments.
873 (m32r_output_block_move): Adjust operand numbers.
874 Properly update the source and destination pointers.
875 * config/m32r/m32r.md (movstrsi_internal): Use 'r' instead of
876 'r+'. Change the set detinations to match_operand.
877
878 2004-01-09 Kazu Hirata <kazu@cs.umass.edu>
879
880 * final.c (FIRST_INSN_ADDRESS): Remove.
881 (shorten_branches): Don't use FIRST_INSN_ADDRESS.
882 * system.h (FIRST_INSN_ADDRESS): Poison.
883 * config/avr/avr.h: Remove a comment about FIRST_INSN_ADDRESS.
884 * config/m32r/m32r-protos.h: Remove the prototype for
885 m32r_first_insn_address.
886 * config/m32r/m32r.c (m32r_first_insn_address): Remove.
887 * config/m32r/m32r.h (FIRST_INSN_ADDRESS): Likewise.
888 * doc/md.texi (FIRST_INSN_ADDRESS): Likewise.
889
890 2004-01-09 J. Brobecker <brobecker@gnat.com>
891
892 * dwarf2out.c (gen_enumeration_type_die): Return the DIE that
893 we just created.
894 (is_ada_subrange_type): DIEs for enumeration subtypes should be
895 emitted as subrange types too.
896 (subrange_type_die): Add handling of enumeration subtypes.
897
898 2004-01-08 Richard Henderson <rth@redhat.com>
899
900 PR opt/12441
901 Revert: Sat Mar 30 14:08:55 CET 2002 Jan Hubicka <jh@suse.cz>
902 * i386.c (aligned_operand): Be prepared for SUBREGed registers.
903 (ix86_decompose_address): Use REG_P instead of GET_CODE (...) == REG.
904 (ix86_address_cost): Be prepared for SUBREGed registers.
905 (legitimate_address_p): Accept SUBREGed registers.
906
907 2004-01-08 Kelley Cook <kcook@gcc.gnu.org>
908
909 * Makefile.in: Rename configure.in to configure.ac
910 * doc/sourcebuild.texi: Likewise.
911 * configure: Regenerate.
912 * config.in: Regenerate.
913
914 2004-01-08 Stuart Hastings <stuart@apple.com>
915
916 * config/i386/i386.md: Typos in MMX/SSE immediate shifts.
917
918 2004-01-08 Jan Hubicka <jh@suse.cz>
919
920 * cgraphunit.c (cgraph_decide_inlining): Fix typo.
921
922 2004-01-08 Geoffrey Keating <geoffk@apple.com>
923
924 * config/rs6000/rs6000.md (cmptf_internal1): Correct branch offset.
925 (UNSPEC_FIX_TRUNC_TF): New constant.
926 (movtf_internal): Make splitter active only when insn is active.
927 (extenddftf2): Rewrite to properly load zero into low part.
928 (extenddftf2_internal): New.
929 (extendsftf2): Rewrite.
930 (truncdftf2): Correct length.
931 (floatditf2): Delete.
932 (fix_trunc_helper): New.
933 (fix_trunctfdi2): Use fix_trunc_helper.
934 (fix_trunctfsi2): Likewise.fix_trunc
935 (fix_trunctfsi2_internal): New.
936
937 * config/rs6000/rs6000.c (legitimate_lo_sum_address_p): lo_sum
938 addresses are legitimate on Darwin even when flag_pic.
939 (rs6000_legitimize_reload_address) [TARGET_MACHO]: Don't create
940 non-offsettable addresses for loads of TFmode constants.
941
942 2004-01-08 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
943
944 * config/m32r/m32r.h (ASM_OUTPUT_ALIGNED_BSS): Actually emit
945 variables in the appropriate bss section.
946
947 2004-01-09 Alan Modra <amodra@bigpond.net.au>
948
949 * config/rs6000/linux64.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Ensure
950 target_flags has MASK_POWERPC64 when -m64.
951 * config/rs6000/rs6000.c (processor_target_table): Add MASK_POWERPC64
952 to 620, 630, power3, power4 and rs64a entries.
953 * config/rs6000/rs6000.h (MASK_64BIT): Expand comment.
954
955 2004-01-08 Richard Sandiford <rsandifo@redhat.com>
956
957 * simplify-rtx.c (simplify_immed_subreg): Fix construction of
958 floating-point constants.
959
960 2004-01-08 J. Brobecker <brobecker@gnat.com>
961
962 * dwarf2out.c (subrange_type_die): Add context_die parameter.
963 Create the subrange_type DIE using the given context DIE.
964 (modified_type_die): Update call to subrange_type_die.
965
966 2004-01-08 Zack Weinberg <zack@codesourcery.com>
967
968 * dwarf2.h, unwind-dw2-fde.h, unwind-pe.h, unwind.h:
969 Add multiple-include guard.
970
971 2004-01-08 Hartmut Penner <hpenner@de.ibm.com>
972
973 * gcc/config/rs6000/rs6000.c (easy_vector_constant): Accept
974 all vector constant loadable by vsplt*.
975 (output_vec_const_move): Likewise.
976
977 2004-01-07 Joseph S. Myers <jsm@polyomino.org.uk>
978
979 PR c/6024
980 * c-typeck.c (comptypes): Only treat enumerated types in the same
981 translation unit as compatible with each other when they are the
982 same type.
983 * doc/extend.texi: Update.
984
985 2004-01-07 Joseph S. Myers <jsm@polyomino.org.uk>
986
987 PR c/12165
988 * c-decl.c (grokdeclarator): Take type qualifiers of typedefed
989 array type from the array element type.
990
991 2004-01-07 Alan Modra <amodra@bigpond.net.au>
992
993 * config/rs6000/rs6000.c (rs6000_dbx_register_number): New function.
994 * config/rs6000/rs6000-protos.h (rs6000_dbx_register_number): Declare.
995 * config/rs6000/rs6000.h (DWARF_FRAME_REGNUM): Define.
996 (DWARF_REG_TO_UNWIND_COLUMN): Correct column adjustment and comment.
997 * config/rs6000/sysv4.h (DBX_REGISTER_NUMBER): Define.
998
999 2004-01-06 Eric Christopher <echristo@redhat.com>
1000
1001 * config/mips/mips.h (MDEBUG_ASM_SPEC): Change for dwarf2 default.
1002 (DWARF2_DEBUGGING_INFO): Define.
1003 (PREFERRED_DEBUGGING_TYPE): Set to dwarf2.
1004 * config/mips/openbsd.h (PREFERRED_DEBUGGING_TYPE): Remove.
1005 * config/mips/iris6.h (SUBTARGET_ASM_DEBUGGING_SPEC): Only pass -g0
1006 for irix as.
1007 (SUBTARGET_ASM_OPTIMIZING_SPEC): Only pass O0 for irix as.
1008 * config/mips/iris6gas.h (MDEBUG_ASM_SPEC): Remove.
1009 * config/mips/iris5gas.h: Ditto.
1010 (DBX_DEBUGGING_INFO): Remove.
1011 (DWARF2_DEBUGGING_INFO): Ditto.
1012 (MIPS_DEBUGGING_INFO): Ditto.
1013 (PREFERRED_DEBUGGING_TYPE): Ditto.
1014 * config/mips/elf.h (DWARF2_DEBUGGING_INFO): Remove.
1015 (PREFERRED_DEBUGGING_TYPE): Ditto.
1016 (SUBTARGET_ASM_DEBUGGING_SPEC): Ditto.
1017 * config/mips/elf64.h: Ditto.
1018
1019 2004-01-06 Jan Hubicka <jh@suse.cz>
1020
1021 * Makefile.in (STAGEPROFILE_FLAGS_TO_PASS): Use -fprofile-generate.
1022 (STAGEFEEDBACK_FLAGS_TO_PASS): Use -fprofile-use.
1023
1024 2004-01-06 Geoffrey Keating <geoffk@apple.com>
1025
1026 * config/rs6000/t-darwin (LIB2FUNCS_EXTRA): Compile darwin-ldouble.c.
1027 (TARGET_LIBGCC2_CFLAGS): Use -mlong-double-128.
1028 * config/rs6000/darwin-ldouble.c: New.
1029
1030 * emit-rtl.c (gen_lowpart_common): Use simplify_gen_subreg
1031 for constants.
1032 (constant_subword): Delete.
1033 * rtl.h (constant_subword): Delete prototype.
1034 (immed_double_const): Is not in varasm.c.
1035 * simplify-rtx.c (simplify_immed_subreg): New.
1036 (simplify_subreg): Use simplify_immed_subreg.
1037
1038 * config/rs6000/rs6000.md (floatsitf2): Use expand_float rather
1039 than trying to generate RTL directly.
1040 (fix_trunctfsi2): Use expand_fix rather than trying to generate
1041 RTL directly.
1042
1043 * dwarf2out.c (add_const_value_attribute): Remove incorrect comment.
1044
1045 2004-01-06 David Edelsohn <edelsohn@gnu.org>
1046
1047 * config/rs6000/xcoff.h (EXTRA_SECTION_FUNCTIONS): Split each
1048 function into a separate macro.
1049 (read_only_data_section): Add void argument.
1050 (private_data_section): Same.
1051 (read_only_private_data_section): Same.
1052 (toc_section): Same.
1053
1054 2004-01-06 Jan Hubicka <jh@suse.cz>
1055
1056 * invoke.texi: Remove typo in last change.
1057
1058 PR target/10301
1059 * config.gcc: Accept opteron and athlon-64 as variants
1060 of k8.
1061 * i386.c (override_options): Likewise.
1062 * invoke.texi (i386 -mtune): Expand documentation.
1063
1064 2004-01-06 Kazu Hirata <kazu@cs.umass.edu>
1065
1066 * alias.c: Fix comment typos.
1067 * builtins.c: Likewise.
1068 * cfg.c: Likewise.
1069 * df.c: Likewise.
1070 * dominance.c: Likewise.
1071 * dwarf2out.c: Likewise.
1072 * emit-rtl.c: Likewise.
1073 * expr.c: Likewise.
1074 * final.c: Likewise.
1075 * fold-const.c: Likewise.
1076 * gcse.c: Likewise.
1077 * genattrtab.c: Likewise.
1078 * genrecog.c: Likewise.
1079 * gensupport.c: Likewise.
1080 * ggc-zone.c: Likewise.
1081 * integrate.c: Likewise.
1082 * local-alloc.c: Likewise.
1083 * loop.c: Likewise.
1084 * recog.c: Likewise.
1085 * regmove.c: Likewise.
1086 * reg-stack.c: Likewise.
1087 * reorg.c: Likewise.
1088 * rtlanal.c: Likewise.
1089 * rtl.h: Likewise.
1090 * sched-ebb.c: Likewise.
1091 * simplify-rtx.c: Likewise.
1092 * toplev.c: Likewise.
1093 * varasm.c: Likewise.
1094
1095 2004-01-06 Kazu Hirata <kazu@cs.umass.edu>
1096
1097 * doc/install.texi: Fix typos.
1098 * doc/invoke.texi: Likewise.
1099 * doc/md.texi: Likewise.
1100
1101 2004-01-06 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
1102
1103 * config/m32r/m32r.h (TRAMPOLINE_LINE_SIZE): Changed
1104
1105 2004-01-06 Jan Hubicka <jh@suse.cz>
1106
1107 * i386.c (init_cumulative_args): Add handling of MMX_REGPARM.
1108 (function_arg_advance): Do not pass aggregates in SSE; deal handling
1109 of MMX_REGPARM.
1110 (function_arg): Add new warnings about ABI changes; fix SSE_REGPARM;
1111 add MMX_REGPARM.
1112 * i386.h (ix86_args): Add mmx_words/mmx_regs/mmx_regno fields.
1113 (SSE_REGPARM_MAX): Default to 3 on i386 -msse ABI.
1114 (MMX_REGPARM_MAX): Similarly for -mmmx.
1115
1116 2004-01-05 Kazu Hirata <kazu@cs.umass.edu>
1117
1118 * config/sh/linux.h: Fix comment formatting.
1119 * config/sh/netbsd-elf.h: Likewise.
1120 * config/sh/sh.c: Likewise.
1121 * config/sh/sh.h: Likewise.
1122 * config/sh/vxworks.h: Likewise.
1123
1124 2004-01-05 Kazu Hirata <kazu@cs.umass.edu>
1125
1126 * system.h (ASM_OUTPUT_MAIN_SOURCE_FILENAME): Poison.
1127 * toplev.c (output_file_directive): Don't use
1128 ASM_OUTPUT_MAIN_SOURCE_FILENAME.
1129
1130 2004-01-05 Daniel Berlin <dberlin@dberlin.org>
1131
1132 * ggc-zone.c: Remove everything in #ifdef USING_MALLOC_PAGE_GROUPS
1133 (USING_MMAP): We don't support non-mmap.
1134 (struct alloc_chunk): Steal 1 bit from typecode, use it to mark
1135 large objects.
1136 (struct page_entry): Remove bytes_free.
1137 (struct page_table_chain): Remove.
1138 (struct globals): Remove page_table member.
1139 (loookup_page_table_entry): Function deleted.
1140 (set_page_table_entry): Ditto.
1141 (ggc_allocated_p): No longer need page table lookups.
1142 (ggc_marked_p): Ditto.
1143 (alloc_small_page): Don't care about bytes_free anymore.
1144 (alloc_large_page): Round up size.
1145 (ggc_alloc_zone_1): Mark large objects as such, and calculate
1146 their size the new way.
1147 Remove page table lookups and setting.
1148 (ggc_get_size): Calculate large object size the new way.
1149 (sweep_pages): Redo to account for fact that we no longer have
1150 bytes_free.
1151 (ggc_collect): No longer need to reincrement bytes_free.
1152 (ggc_pch_alloc_object): Handle new large objects properly.
1153 (ggc_pch_read): Put PCH stuff into it's own uncollected zone.
1154
1155 2004-01-05 Kazu Hirata <kazu@cs.umass.edu>
1156
1157 * doc/invoke.texi: Remove a page break.
1158
1159 2004-01-05 Kazu Hirata <kazu@cs.umass.edu>
1160
1161 * config/avr/avr.c (avr_output_function_prologue): Remove an
1162 extra pair of curly braces.
1163
1164 2004-01-05 Kazu Hirata <kazu@cs.umass.edu>
1165
1166 * config/mn10300/mn10300.c: Fix comment formatting.
1167 * config/mn10300/mn10300.h: Likewise.
1168
1169 2004-01-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1170
1171 * tree.h: Update documentation on nothrow_flag.
1172 * print-tree.c (print_node): Print TREE_NOTHROW as "align-ok" for
1173 types.
1174
1175 2004-01-05 Kazu Hirata <kazu@cs.umass.edu>
1176
1177 * doc/invoke.texi: Remove traces of dead ports.
1178
1179 2004-01-05 Richard Sandiford <rsandifo@redhat.com>
1180
1181 * doc/invoke.texi: Add documentation for the MIPS -mexplicit-relocs
1182 option.
1183
1184 2004-01-05 Richard Sandiford <rsandifo@redhat.com>
1185
1186 PR target/12945
1187 * coverage.c (coverage_counter_alloc): Set SYMBOL_FLAG_LOCAL for
1188 counter labels.
1189 * config/mips/mips.c (INTERNAL_SYMBOL_P): Delete.
1190 (mips_classify_symbol): Always treat SYMBOL_REF_FLAG as indicating
1191 string constants if TARGET_MIPS16. Use SYMBOL_REF_DECL to check
1192 the binding of decl symbols, otherwise check SYMBOL_REF_LOCAL_P.
1193 (mips_symbol_insns): Don't trust the local/global classification.
1194 (m16_usym8_4, m16_usym5_4): Same mips16 change as mips_classify_symbol.
1195 (override_options): Make -mabicalls -fno-unit-at-a-time imply
1196 -mno-explicit-relocs.
1197 (mips_encode_section_info): Don't use SYMBOL_REF_FLAG to distinguish
1198 between local and global symbols.
1199
1200 2004-01-05 Richard Sandiford <rsandifo@redhat.com>
1201
1202 * config/mips/mips-protos.h (mips_dangerous_for_la25_p): Declare.
1203 (mips_preferred_reload_class): Declare.
1204 * config/mips/mips.h (DANGEROUS_FOR_LA25_P): Replace with function.
1205 (EXTRA_CONSTRAINT): Update accordingly.
1206 (PREFERRED_RELOAD_CLASS): Use mips_preferred_reload_class.
1207 * config/mips/mips.c (mips_dangerous_for_la25_p): New function.
1208 (mips_preferred_reload_class): New function. Prefer LEA_REGS if
1209 mips_dangerous_for_la25_p.
1210 (mips_secondary_reload_class): Use LEA_REGS rather than GR_REGS
1211 if mips_dangerous_for_la25_p.
1212
1213 2004-01-05 Bernardo Innocenti <bernie@develer.com>
1214
1215 * config/m68k/m68k.c (output_andsi3): Fix signed/unsigned comparison
1216 warning.
1217
1218 2004-01-04 Nathanael Nerode <neroden@gcc.gnu.org>
1219
1220 * configure.ac: Use AC_PROG_CPP_WERROR.
1221 * configure: Regenerate.
1222
1223 2004-01-04 Zack Weinberg <zack@codesourcery.com>
1224
1225 * .cvsignore: Add autom4te.cache.
1226
1227 2004-01-04 Richard Sandiford <rsandifo@redhat.com>
1228
1229 * doc/invoke.texi: Revamp documentation of MIPS options. Remove
1230 -mabi=meabi, -mabi-fake-default, -mmips-as, -mgas, -mmips-tfile,
1231 -m4650, -mfix7000 and -(m)no-crt0. Put endianness options first,
1232 then architecture options, then ABI options. General rewording.
1233
1234 2004-01-04 Joseph S. Myers <jsm@polyomino.org.uk>
1235
1236 PR c/3414
1237 * doc/extend.texi: Clarify definition of malloc attribute.
1238
1239 2004-01-04 Jan Hubicka <jh@suse.cz>
1240
1241 * Makefile.in (cgraph.o, cgraphunit.o): Add intl.h dependency.
1242 * cgraph.c (create_edge, dump_cgraph): Update to use inline_failed
1243 * cgraph.h (cgraph_edge): Replace inline_call by inline_failed
1244 (cgraph_inline_p): Add extra argument reason.
1245 * cgraphunit.c: Minor formating fixes.
1246 cgraph_first_inlined_callee): New functions.
1247 (record_call_1): Record builtins too.
1248 (cgraph_analyze_function): Update inline_failed messages.
1249 (cgraph_mark_functions_to_output, cgraph_expand_function, cgraph_inlined_into,
1250 cgraph_inlined_callees, cgraph_estimate_growth): Update to use inline_failed.
1251 (cgraph_check_inline_limits): Likewise; Add argument reason.
1252 (cgraph_set_inline_failed): New static function.
1253 (cgraph_decide_inlining_of_small_function, cgraph_decide_inlining): Set
1254 reasons.
1255 (cgraph_inline_p): Add new argument reason.
1256 * tree-inline.c (expand_call_inline): Update warning.
1257
1258 2004-01-03 Nathanael Nerode <neroden@gcc.gnu.org>
1259
1260 * configure.ac: Replace AC_INIT, AC_OUTPUT, AC_CANONICAL_SYSTEM
1261 with modern equivalents.
1262 * configure: Regenerate.
1263
1264 * configure.ac: Replace gcc_AC_CHECK_TYPE with AC_CHECK_TYPE.
1265 * aclocal.m4 (gcc_AC_CHECK_TYPE): Remove.
1266 * configure: Regenerate.
1267
1268 * doc/install.texi: Note that 'gcc' is now a 2.57 directory.
1269
1270 * configure.in: Rename to configure.ac.
1271 * configure.ac: Renamed from configure.in; make minimum necessary
1272 changes for autoconf 2.5x.
1273 * aclocal.m4: Make minimum necessary changes for autoconf 2.5x.
1274 * configure: Regenerate with autoconf 2.57.
1275
1276 2004-01-03 Kazu Hirata <kazu@cs.umass.edu>
1277
1278 * config/mips/linux.h: Fix comment formatting.
1279 * config/mips/mips.c: Likewise.
1280 * config/mips/mips.h: Likewise.
1281 * config/mips/mips.md: Likewise.
1282 * config/mips/netbsd.h: Likewise.
1283 * config/mips/windiss.h: Likewise.
1284
1285 2004-01-02 Richard Henderson <rth@redhat.com>
1286
1287 * config/i386/i386.md (fp constant pool splitter): Reorg suppression
1288 for sse and 387; add suppression for mmx.
1289
1290 2004-01-02 Andrew Pinski <pinskia@physics.uc.edu>
1291
1292 * loop.c (loop_optimize): Free all loops_info's mems.
1293
1294 * c-typeck.c (finish_init): Free spelling_base before
1295 setting it again.
1296
1297 * cfgloop.c (flow_loops_find): Always free the sbitmap
1298 headers.
1299
1300 * predict.c (estimate_probability): Free bbs after being
1301 done with it.
1302
1303 2004-01-02 Kazu Hirata <kazu@cs.umass.edu>
1304
1305 * config/mn10300/mn10300.h (PREDICATE_CODES): Add
1306 const_8bit_operand and call_address_operand.
1307
1308 2004-01-02 Jan Hubicka <jh@suse.cz>
1309
1310 * cgraphunit.c (cgraph_optimize_function): Call optimize_inline_calls
1311 when there is nothing to inline but warnings are requested.
1312 (cgraph_decide_inlining): Fix memory leak.
1313
1314 2004-01-02 Jan Hubicka <jh@suse.cz>
1315
1316 * expr.c (store_constructor): Fix pasto in previous patch.
1317
1318 2004-01-02 Kazu Hirata <kazu@cs.umass.edu>
1319
1320 * config/i386/cygming.h: Fix comment formatting.
1321 * config/i386/djgpp.h: Likewise.
1322 * config/i386/gthr-win32.c: Likewise.
1323 * config/i386/i386-interix.h: Likewise.
1324 * config/i386/i386.c: Likewise.
1325 * config/i386/i386.h: Likewise.
1326 * config/i386/openbsd.h: Likewise.
1327 * config/i386/winnt.c: Likewise.
1328 * config/i386/xm-mingw32.h: Likewise.
1329
1330 2004-01-02 Joseph S. Myers <jsm@polyomino.org.uk>
1331
1332 * doc/gcc.texi, doc/invoke.texi, doc/install.texi: Update
1333 copyright and last modification dates.
1334
1335 2004-01-02 Andreas Jaeger <aj@suse.de>, Gerald Pfeifer <gp@suse.de>
1336
1337 * doc/install.texi (Specific): Mention x86_64.
1338
1339 2004-01-01 Hans-Peter Nilsson <hp@bitrange.com>
1340
1341 * builtins.c (expand_builtin_apply_args_1) [STACK_GROWS_DOWNWARD]:
1342 Call force_operand on plus_constant result.
1343
1344 2004-01-01 Jan Hubicka <jh@suse.cz>
1345
1346 * expmed.c (store_bit_field, extract_bit_field): Use new named patterns
1347 * expr.c (store_constructor): Use vec_init pattern.
1348 * genopinit.c (optabs): Initailize vec_set/vec_extract/vec_init.
1349 * optabs.h (optab_index): ADD OTI_vec_set/OTI_vec_extract/OTI_vec_init
1350 (vec_set_optab, vec_extract_optab, vec_init_optab): New.
1351 * i386.md (vec_setv2df, vec_extractv2df, vec_setv4sf, vec_extractv4sf):
1352 New patterns.
1353 (sse2_unpc?pd): Fix pattern.
1354 (sse2_movlpd): Kill.
1355 (sse2_movsd): Deal with movlpd too.
1356 * i386.c (ix86_expand_builtin): Use sse2_movsd instead of sse2_movlpd.
1357 (ix86_expand_vector_init): New.
1358 * emmintrin.h (__mm_set_pd, __mm_set_ps): Use vector extensions.
1359 * md.texi (vec_set, vec_extract): Document
1360
1361 2003-12-31 Jan Hubicka <jh@suse.cz>
1362
1363 PR opt/13473
1364 * recog.c (validate_replace_rtx_1): Take care for RTL sharing inside
1365 ASM input operands
1366
1367 PR opt/12617
1368 * toplev.c (dump_file_index): Reorder ce3 and bbro.
1369 (dump_file): Likewise.
1370 (rest_of_compilation): Likewise.
1371
1372 PR debug/13367
1373 * cgraph.c (cgraph_function_possibly_inlined): Even with
1374 flag_really_no_inline we inline always_inline functions.
1375 * cgraphunit.c (cgraph_analyze_function): Clear inlinable flag
1376 for non-always_inline functions when there is flag_really_no_inline.
1377 (cgraph_decide_inlining): Limit work done when not inlining.
1378 (cgraph_decide_inlining_incrementally): Likewise.
1379 (cgraph_optimize_function): Check whether something got inlined.
1380 * c-objc-common.c (c_disregard_inline_limits): Do not always inline
1381 extern inline functions when not inlining.
1382
1383 * opts.c (decode_options): Disable crossjumping at -O1
1384 * invoke.texi (-O1): Document change.
1385
1386 See ChangeLog.10 for earlier changes.