OSDN Git Service

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