OSDN Git Service

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