OSDN Git Service

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