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