OSDN Git Service

2001-08-11 H.J. Lu <hjl@gnu.org>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 7aa747f..c23a962 100644 (file)
@@ -1,3 +1,587 @@
+2001-08-11  H.J. Lu <hjl@gnu.org>
+
+       * config/mips/linux.h (EXTRA_SECTIONS): Remove in_ctors and
+       in_dtors.
+       (EXTRA_SECTION_FUNCTIONS): Remove DTORS_SECTION_ASM_OP and
+       RDATA_SECTION_ASM_OP.
+
+2001-08-11  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
+
+       * doc/install.texi (Specific, c4x): Fix cross-reference to the
+       main manual to work both for info and HTML versions.
+       
+2001-08-11  Neil Booth  <neil@daikokuya.demon.co.uk>
+           Matt Kraai <kraai@alumni.carnegiemellon.edu>
+       
+       * cpphash.c (_cpp_destroy_hashtable): Use ht_destroy.
+       * cpphash.h (CPP_IN_SYSTEM_HEADER): Fix.
+       (struct cpp_pool): New member first.
+       * cppinit.c (append_include_chain): Plug memory leaks.
+       * cpplib.c (cpp_register_pragma, cpp_register_pragma_space):
+       Allocate pragma structures from the (aligned) macro pool to
+       avoid leaking memory.
+       * cpplex.c (_cpp_init_pool, _cpp_free_pool): Use pool->first
+       so we don't leak memory.
+       * hashtable.c (ht_destroy): New.
+       * hashtable.h (ht_destroy): New.
+
+2001-08-11  Neil Booth  <neil@daikokuya.demon.co.uk>
+           Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
+
+       * c-lex.c (map): Make const.
+       (cb_file_change): Update for callback passing a line map.
+       Don't assume we have a previous map.  Remove sanity check
+       about popping too many files.
+       * cpperror.c (print_location): Make map const.
+       * cppfiles.c (stack_include_file): Update; line maps now hold sysp.
+       (cpp_make_system_header): Similarly.
+       (search_from): Similarly.
+       (_cpp_execute_include): Don't remember where we came from.
+       * cpphash.h (struct cpp_buffer): Remove return_to_line, sysp.
+       (struct cpp_reader): Make map const.
+       (CPP_IN_SYSTEM_HEADER, _cpp_do_file_change): Update.
+       * cpplib.c (do_line): Update; line maps now hold sysp.
+       (cpp_push_buffer): Similarly.
+       (_cpp_do_file_change): Similarly; callback with map instead.
+       (cpp_get_line_maps): Constify return value.
+       (_cpp_pop_buffer): Update.
+       * cpplib.h (struct cpp_file_change): Remove.
+       (struct cpp_callbacks): Update.
+       (cpp_get_line_maps): Constify return value.
+       * cppmacro.c (_cpp_create_definition): Update.
+       * cppmain.c (struct printer): Constify map.
+       (maybe_print_line): Similarly.
+       (print_line): Similarly.  Deduce flags 1 and 2 here.
+       (cb_file_change): Update.
+       * line-map.c (free_line_maps): Warn regardless.
+       (add_line_map): Return pointer to const.  When passed NULL to_file
+       with LC_LEAVE, use the obvious values for the return point so the
+       caller doesn't have to figure them out.
+       (lookup_line): Return pointer to const.
+       (print_containing_files): Take pointer to const.
+       * line-map.h (struct line_map): New members reason, sysp.
+       (add_line_map): Return pointer to const.
+       (lookup_line): Similarly.
+       (print_containing_files): Take pointer to const.
+
+2001-08-10  Roman Zippel  <zippel@linux-m68k.org>
+           Richard Henderson  <rth@redhat.com>
+
+       * regmove.c (regmove_optimize): Avoid setting a register twice in
+       a parallel set.
+
+2001-08-10  Richard Henderson  <rth@redhat.com>
+
+       * doc/extend.texi (Arrays and pointers implementation): Document
+       behavior of pointer/integer conversion.
+
+2001-08-10  Ulrich Weigand  <uweigand@de.ibm.com>
+       * glimits.h (__LONG_MAX__): Add s390x as 64-bit architecture.
+
+2001-08-10  Richard Henderson  <rth@redhat.com>
+
+       * doc/extend.texi (C Implementation): New chapter.
+       * doc/gcc.texi (Top): Link it in.
+
+2001-08-10  Andrew Cagney  <ac131313@redhat.com>
+
+       * doc/install.texi (Specific): Fix CVS merge botch.
+
+2001-08-10  Richard Henderson  <rth@redhat.com>
+
+       * config/m68k/m68k.c (m68k_svr3_asm_out_constructor): Protect with
+       ifdef CTOR_LIST_BEGIN instead of INIT_SECTION_ASM_OP.
+
+2001-08-10  Zack Weinberg  <zackw@stanford.edu>
+
+       * calls.c, function.c: Always define PREFERRED_STACK_BOUNDARY
+       if not already defined.  Remove all #ifdefs on STACK_BOUNDARY;
+       this macro is now required.
+
+       * cselib.c (cselib_process_insn), flow.c (propagate_block),
+       loop.c (find_and_verify_loops), reload.c (reload): Check
+       for rtx code of CALL_INSN, not CALL, when deciding if we
+       need to check for REG_SETJMP note.
+
+       * gcse.c (compute_hash_table, compute_store_table): Update
+       the #ifdef NON_SAVING_SETJMP code to the new REG_SETJMP
+       logic.
+
+       * config/avr/avr.c: Fix typo.
+       * config/convex/convex.c (expand_movstr): Use adjust_address.
+       * config/dsp16xx/dsp16xx.c: Define dsp16xx_compare_gen
+       variable.
+       * config/dsp16xx/dsp16xx.md: Correct calls to replace_equiv_address.
+       * config/elxsi/elxsi.c: Include tree.h, expr.h, regs.h, and flags.h.
+       Fix typo.
+       * config/elxsi/elxsi.h: Don't define Rmode (typo for Pmode?)
+       Do define STACK_BOUNDARY.
+       * config/i370/i370.c: Include expr.h.
+       * config/i860/sysv3.h, config/i860/sysv4.h, config/m32r/m32r.h,
+       config/pa/som.h, config/v850/v850.h: Take in_ctors and
+       in_dtors out of EXTRA_SECTIONS; take CTORS_SECTION_FUNCTION
+       and DTORS_SECTION_FUNCTION out of EXTRA_SECTION_FUNCTIONS.
+       * config/m88k/m88k.c: Include c-tree.h after expr.h.
+       * config/pdp11/pdp11.c: Include expr.h and toplev.h.
+       * config/romp/romp.c: Include expr.h after tree.h.
+       Include toplev.h.
+       (output_fpop): Use xmalloc, not oballoc.
+       * config/we32k/we32k.c: Include expr.h.
+
+2001-08-10  Kazu Hirata  <kazu@hxi.com>
+
+       * config/h8300/h8300.h: Fix formatting.
+
+2001-08-08  Jason Merrill  <jason_merrill@redhat.com>
+
+       * c-common.h (RETURN_NULLIFIED_P): Lose.
+       * c-semantics.c (genrtl_return_stmt): Don't check it.
+
+2001-08-10  Richard Sandiford  <rsandifo@redhat.com>
+
+       * config/mips/mips.c (mips_add_large_offset_to_sp): New function.
+       (mips_annotate_frame_insn): New function.
+       (mips_emit_frame_related_store): New function.
+       (save_restore_insns): Don't mark instructions that set up the base
+       registers as frame-related.  Add REG_FRAME_RELATED_EXPR notes to
+       the store instructions instead.
+       (mips_expand_prologue): If the stack size is moved into a temporary
+       register, do not mark that move as frame-related.  Add a
+       REG_FRAME_RELATED_EXPR note to the stack adjustment instruction.
+
+2001-08-10  Richard Sandiford  <rsandifo@redhat.com>
+
+       * config/mips/mips.c (save_restore_insns): Don't mark the RA's
+       stack slot as unchanging if current_function_calls_eh_return.
+
+2001-08-10  Richard Sandiford  <rsandifo@redhat.com>
+
+       * config/mips/mips.md (reload_outcc): Use HARD_REGNO_NREGS to
+       access the second half of the TFmode scratch operand.
+
+2001-08-10  Anthony Green  <green@redhat.com>
+
+       * java/class.c (emit_register_classes): Conditionalize code on
+       JCR_SECTION_NAME.
+
+2001-08-10  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
+
+       * doc/install.texi (Specific, avr): Fix cross-reference to the
+       main manual to work both for info and HTML versions.
+
+2001-08-09  John David Anglin  <dave@hiauly1.hia.nrc.ca>
+
+       * stmt.c (expand_null_return_1): Remove code to generate simple returns
+       and "use_goto" argument.
+       (expand_null_return, expand_value_return): Update all callers.
+       * function.c (expand_function_end): Remove code to generate simple
+       return.
+       * config/vax/vax.md (epilogue): New expander for function return.
+       * doc/md.texi (epilogue): Remove "if defined".
+
+2001-08-09  Zack Weinberg  <zackw@stanford.edu>
+
+       * Makefile.in: Partially revert my previous change:
+       put -DGENERATOR_FILE back in HOST_CFLAGS, take it out
+       of the hashtab.o and safe-ctype.o rules.
+
+2001-08-09  Richard Henderson  <rth@redhat.com>
+
+       * Makefile.in (MAYBE_USE_COLLECT2): Remove; purge all uses.
+       (USE_COLLECT2): Remove duplicate definition.
+       * config.gcc (a29k-udi, a29k-wrs-vxworks) [tm_file]: Remove a29k/udi.h.
+       (use_collect2): Remove dead code.
+       * configure.in (use_collect2): Remove will_use_collect2 and
+       maybe_use_collect2; add USE_COLLECT2 to host_xm_defines and xm_defines.
+       * configure: Rebuild.
+
+       * target.h (targetm.asm_out.constructor): New.
+       (targetm.asm_out.destructor, targetm.have_ctors_dtors): New.
+       * target-def.h (TARGET_ASM_CONSTRUCTOR): New.
+       (TARGET_ASM_DESTRUCTOR, TARGET_HAVE_CTORS_DTORS): New.
+       * varasm.c (in_ctors, in_dtors): New.
+       (assemble_constructor, assemble_destructor): Remove.
+       (default_stabs_asm_out_destructor): New.
+       (default_named_section_asm_out_destructor): New.
+       (dtors_section, default_dtor_section_asm_out_destructor): New.
+       (default_stabs_asm_out_constructor): New.
+       (default_named_section_asm_out_constructor): New.
+       (ctors_section, default_ctor_section_asm_out_constructor): New.
+       * output.h: Update declarations.
+       * c-decl.c (c_expand_body): Use target hooks instead of
+       assemble_constructor and assemble_destructor.
+       * profile.c (output_func_start_profiler): Likewise.
+       * objc/objc-act.c (finish_objc): Likewise.
+       (build_module_descriptor): Tidy.  Set TREE_PUBLIC properly
+       for the constructor.
+       * objc/Make-lang.in (objc-act.o): Depend on TARGET_H.
+
+       * crtstuff.c (CTORS_SECTION_ASM_OP): Don't define.
+       (DTORS_SECTION_ASM_OP): Likewise.
+       (__CTOR_LIST__): Use attribute section when possible.
+       (__DTOR_LIST__, __CTOR_END__, __DTOR_END__): Likewise.
+
+       * defaults.h (EH_FRAME_SECTION_NAME): Don't depend on
+       ASM_OUTPUT_CONSTRUCTOR.
+
+       * config/darwin.c (machopic_asm_out_constructor): New.
+       (machopic_asm_out_destructor): New.
+       * config/darwin-protos.h: Update declarations.
+       * config/darwin.h (ASM_OUTPUT_CONSTRUCTOR): Remove.
+       (ASM_OUTPUT_DESTRUCTOR): Remove.
+       (TARGET_ASM_CONSTRUCTOR, TARGET_ASM_DESTRUCTOR): New.
+       * config/nextstep.c (nextstep_asm_out_constructor): New.
+       (nextstep_asm_out_destructor): New.
+       * config/nextstep.h (ASM_OUTPUT_CONSTRUCTOR): Remove.
+       (ASM_OUTPUT_DESTRUCTOR): Remove.
+       (TARGET_ASM_CONSTRUCTOR, TARGET_ASM_DESTRUCTOR): New.
+       * config/nextstep21.h: Undef TARGET_ASM_*STRUCTOR instead of
+       ASM_OUTPUT_*STRUCTOR.
+       * config/i386/aix386ng.h: Likewise.
+
+       * config/elfos.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Remove.
+       (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): No ctors/dtors.
+       (CTORS_SECTION_FUNCTION, DTORS_SECTION_FUNCTION): Remove.
+       (ASM_OUTPUT_CONSTRUCTOR, ASM_OUTPUT_DESTRUCTOR): Remove.
+       * config/lynx.h: Likewise.
+       * config/netware.h: Likewise.
+       * config/psos.h: Likewise.
+       * config/alpha/alpha-interix.h: Likewise.
+       * config/alpha/elf.h: Likewise.
+       * config/arc/arc.h: Likewise.
+       * config/arm/aof.h: Likewise.
+       * config/arm/coff.h: Likewise.
+       * config/arm/elf.h: Likewise.
+       * config/c4x/c4x.h: Likewise.
+       * config/h8300/h8300.h: Likewise.
+       * config/i386/cygwin.h: Likewise.
+       * config/i386/djgpp.h: Likewise.
+       * config/i386/i386-coff.h: Likewise.
+       * config/i386/i386-interix.h: Likewise.
+       * config/i386/sco5.h: Likewise.
+       * config/i386/vsta.h: Likewise.
+       * config/i386/win32.h: Likewise.
+       * config/i960/i960-coff.h: Likewise.
+       * config/ia64/sysv4.h: Likewise.
+       * config/m68hc11/m68hc11.h: Likewise.
+       * config/m68k/coff.h: Likewise.
+       * config/m68k/mot3300.h: Likewise.
+       * config/m88k/m88k.h: Likewise.
+       * config/mcore/mcore-pe.h: Likewise.
+       * config/mcore/mcore.h: Likewise.
+       * config/mips/elf.h: Likewise.
+       * config/mips/elf64.h: Likewise.
+       * config/mips/iris6.h: Likewise.
+       * config/pa/pa64-hpux.h: Likewise.
+       * config/rs6000/sysv4.h: Likewise.
+       * config/sh/sh.h: Likewise.
+       * config/sparc/litecoff.h: Likewise.
+
+       * config/svr3.h (CTORS_SECTION_ASM_OP): Remove.
+       (CTORS_SECTION_FUNCTION, DTORS_SECTION_FUNCTION): Remove.
+       (ASM_OUTPUT_CONSTRUCTOR, ASM_OUTPUT_DESTRUCTOR): Remove.
+       * config/1750a/1750a.h (ASM_OUTPUT_CONSTRUCTOR): Remove.
+       (ASM_OUTPUT_DESTRUCTOR): Remove.
+       * config/a29k/a29k.c: Move include of tree.h.
+       * config/a29k/udi.h: Delete file.
+       * config/alpha/alpha.c (vms_asm_out_constructor): New.
+       (vms_asm_out_destructor): New.
+       * config/alpha/vms.h (EXTRA_SECTIONS): No ctors/dtors.
+       (EXTRA_SECTION_FUNCTIONS): Likewise.
+       (ASM_OUTPUT_CONSTRUCTOR, ASM_OUTPUT_DESTRUCTOR): Remove.
+       (TARGET_ASM_CONSTRUCTOR, TARGET_ASM_DESTRUCTOR): New.
+       * config/c4x/c4x.c: Move include of tree.h.
+       * config/clipper/clipper.c (clix_asm_out_constructor): New.
+       (clix_asm_out_destructor): New.
+       * config/clipper/clix.h (ASM_OUTPUT_CONSTRUCTOR): Remove.
+       (ASM_OUTPUT_DESTRUCTOR): Remove.
+       (TARGET_ASM_CONSTRUCTOR, TARGET_ASM_DESTRUCTOR): New.
+       * config/i386/aix386.h (ASM_OUTPUT_CONSTRUCTOR): Remove.
+       (TARGET_ASM_CONSTRUCTOR): New.
+       * config/i386/i386.c (ix86_svr3_asm_out_constructor): New.
+       (sco_asm_out_constructor): New.
+       * config/i386/sco5.h (TARGET_ASM_CONSTRUCTOR): New.
+       * config/i386/svr3gas.h: Remove stack grows up code.
+       Remove code duplicated from i386/sysv3.h.
+       (TARGET_ASM_CONSTRUCTOR): New.
+       (ASM_OUTPUT_CONSTRUCTOR, ASM_OUTPUT_DESTRUCTOR): Remove.
+       (DTORS_SECTION_FUNCTION, CTORS_SECTION_FUNCTION): Remove.
+       * config/i386/sysv3.h (ASM_OUTPUT_CONSTRUCTOR): Remove.
+       (TARGET_ASM_CONSTRUCTOR): New.
+       * config/m68hc11/m68hc11.c (m68hc11_asm_out_constructor): New.
+       (m68hc11_asm_out_destructor): New.
+       * config/m68hc11/m68hc11.h (TARGET_ASM_CONSTRUCTOR): New.
+       (TARGET_ASM_DESTRUCTOR): New.
+       * config/m68k/auxgas.h: Don't undef ASM_OUTPUT_*STRUCTOR.
+       * config/m68k/dpx2.h: Properly undef all the bits inherited from
+       config/svr3.h pertaining to section manipulation.
+       * config/m68k/dpx2g.h: Remove #if 0 code.
+       * config/m68k/m68k.c (m68k_svr3_asm_out_constructor): New.
+       * config/m68k/tower-as.h (ASM_OUTPUT_SOURCE_LINE): Fix typo.
+       (ASM_OUTPUT_CONSTRUCTOR): Remove.
+       (TARGET_ASM_CONSTRUCTOR): New.
+       * config/m88k/m88k.c (m88k_layout_frame): Don't use assign_stack_local.
+       (m88k_svr3_asm_out_constructor): New.
+       (m88k_svr3_asm_out_destructor): New.
+       * config/m88k/sysv3.h (ASM_OUTPUT_CONSTRUCTOR): Remove.
+       (ASM_OUTPUT_DESTRUCTOR): Remove.
+       (TARGET_ASM_CONSTRUCTOR, TARGET_ASM_DESTRUCTOR): New.
+       * config/mips/mips.h: Remove #if 0 ASM_OUTPUT_*STRUCTOR code.
+       * config/rs6000/aix.h: Likewise.
+       * config/mips/rtems64.h: Don't undef removed constructor related bits.
+       * config/mips/vxworks.h: Likewise.
+       * config/rs6000/lynx.h: Likewise.
+       * config/sh/elf.h: Likewise.
+       * config/rs6000/sysv4.h (CTORS_SECTION_ASM_OP): New.
+       (DTORS_SECTION_ASM_OP): New.
+       * config/sparc/linux64.h (ASM_OUTPUT_CONSTRUCTOR): Remove.
+       (ASM_OUTPUT_DESTRUCTOR): Remove.
+       * config/sparc/sol2-sld-64.h: Likewise.
+       * config/vax/vax.c (vms_asm_out_constructor): New.
+       (vms_asm_out_destructor): New.
+       * config/vax/vms.h (ASM_OUTPUT_CONSTRUCTOR): Remove.
+       (ASM_OUTPUT_DESTRUCTOR): Remove.
+       (TARGET_ASM_CONSTRUCTOR, TARGET_ASM_DESTRUCTOR): New.
+
+       * doc/tm.texi (@node Initialization): Update.
+
+2001-08-09  Richard Henderson  <rth@redhat.com>
+
+       * config/alpha/crtbegin.asm (__JCR_LIST__): New.
+       (__do_global_dtors_aux): Use gp-relative static data to avoid
+       one dynamic relocation.
+       (__do_frame_setup): Register Java classes.
+       * config/alpha/crtend.asm (__JCR_END__): New.
+
+2001-08-09  Zack Weinberg  <zackw@stanford.edu>
+
+       * Makefile.in (HOST_CFLAGS): Take out -DGENERATOR_FILE.
+       (CONFIG_H, TCONFIG_H, TM_P_H): Update.
+       (GEN, STAGESTUFF): Add new files.
+       (insn-constants.h, s-constants, tm-preds.h, s-preds,
+       genconstants, genpreds, genconstants.o, genpreds.o): New rules.
+       (hashtab.o, safe-ctype.o): Add -DGENERATOR_FILE.
+       * mkconfig.sh: Include tm-preds.h in tm_p.h; insn-constants.h
+       as well as insn-codes.h and insn-flags.h in config.h; and no
+       extra headers in tconfig.h and hconfig.h.
+
+       * gencodes.c: Eliminate code to generate predicate declarations
+       or #defines for md-file constants.
+       * genconstants.c, genpreds.c: New files.
+
+       * i386.md: Re-order guard expressions such that TARGET_64BIT
+       comes first, when this permits better optimization.  Add
+       TARGET_64BIT to more x86-64 patterns.  Add comment explaining
+       why this is desirable.
+
+2001-08-09  Jakub Jelinek  <jakub@redhat.com>
+
+       * config/ia64/fde-glibc.c: Require glibc 2.2.4+ headers.
+       (find_fde_for_dso): Remove.
+       (_Unwind_IteratePhdrCallback): New.
+       (_Unwind_FindTableEntry): Use dl_iterate_phdr.
+       * config/ia64/crtbegin.asm (__ia64_app_header): Remove.
+
+Thu Aug  9 11:30:20 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * expr.c (emit_single_push_insn): Only exists ifdef PUSH_ROUNDING.
+       (move_by_pieces_1): If would call it, abort if no PUSH_ROUNDING.
+
+2001-08-09  Graham Stott  <grahams@redhat.com>
+
+       * sched-vis.c (MAX_VISUAL_NO_UNIT): Define.
+       (vis_no_unit): Use it.
+       (visualize_no_unit): Add the insn only if room exists.
+
+2001-08-09  Graham Stott  <grahams@redhat.com>
+
+       * predict.c (estimate_probability): Replace magic numbers with
+       appropriate enumeration.
+
+2001-08-09  Graham Stott  <grahams@redhat.com>
+
+       * cppexp.c (EXTRACT_PRIO): Uppercase and parenthsize macro
+       parameter.
+       (EXTRACT_FLAGS): Likewise.
+
+2001-08-09  Aldy Hernandez  <aldyh@redhat.com>
+
+       * config/mips/mips.c    (mips_legitimate_address_p): Check for
+       CONST_INT in last patch.
+
+2001-08-08  Anthony Green  <green@redhat.com>
+
+       * java/class.c (emit_register_classes): Use assemble_jcr if
+       possible.  Keep the original mechanism as a fallback.
+       * defaults.h (JCR_SECTION_NAME): Define if we have named section
+       and weak symbol support.
+       * crtstuff.c (__JCR_LIST__): Define.
+       (__JCR_END__): Define.
+       (_Jv_RegiserClasses): Define weak symbol if possible.
+       (__do_global_ctors_aux): Register classes for ELF targets with
+       weak symbol support.
+
+2001-08-08  Kazu Hirata  <kazu@hxi.com>
+
+       * dbxout.c: Fix comment formatting.
+       * dependence.c: Likewise.
+       * df.c: Likewise.
+       * diagnostic.c: Likewise.
+       * dominance.c: Likewise.
+       * doprint.c: Likewise.
+       * dwarf2out.c: Likewise.
+       * dwarfout.c: Likewise.
+       * emit-rtl.c: Likewise.
+       * except.c: Likewise.
+       * explow.c: Likewise.
+       * expmed.c: Likewise.
+       * expr.c: Likewise.
+       * flow.c: Likewise.
+       * fold-const.c: Likewise.
+       * function.c: Likewise.
+
+2001-08-08  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
+
+       * global.c (retry_global_alloc): Avoid shadowing allocno.
+
+2001-08-08  Mark Mitchell  <mark@codesourcery.com>
+
+       * except.c (remove_fixup_regions): Fix typo.
+
+2001-08-08  Jan van Male <jan.vanmale@fenk.wau.nl>
+
+       * emit-rtl.c (adjust_address, adjust_address_nv): Cast offset to
+       unsigned HOST_WIDE_INT to avoid warning.
+       * final.c (final): Cast INSN_UID to unsigned to avoid warning.
+       * flow.c (set_block_for_new_insns): Likewise.
+
+Wed Aug  8 21:08:14 CEST 2001  Jan Hubicka  <jh@suse.cz>
+
+       * sibcall.c (return_value_pseudo): New static variable.
+       (skip_copy_to_return_value): Handle return_value_pseudo.
+       (call_ends_block_p): Ensure that return_value_pseudo is set.
+       (optimize_sibling_and_tail_recursive_call): Discover the
+       load of pseudo return value in alternate exit block.
+
+Wed Aug  8 21:06:43 CEST 2001  Jan Hubicka  <jh@suse.cz>
+
+       * calls.c (ECF_ALWAYS_RETURN): New constant.
+       (emit_call_1): Add REG_ALWAYS_RETURN note if needed.
+       (expand_call): Use LCF_ALWAYS_RETURN for __bb_fork_func.
+       (emit_library_call_value_1): Handle LCT_ALWAYS_RETRUN.
+       * flow.c (need_fake_edge_p): Handle REG_ALWAYS_RETURN.
+       * rtl.c (reg_note_name): New name.
+       * rtl.h (enum reg_note): Add REG_ALWAYS_RETURN.
+
+2001-08-07  Aldy Hernandez  <aldyh@redhat.com>
+
+       * config/mips/mips.c (mips_legitimate_address_p): Limit "la" addresses.
+
+2001-08-08  Jason Merrill  <jason_merrill@redhat.com>
+
+       * alias.c (get_alias_set): Return a previously calculated
+       alias set for a VAR_DECL.
+       * function.c (gen_mem_addressof): Calculate the alias set before
+       touching the RTL.
+
+Wed Aug  8 18:44:37 CEST 2001  Jan Hubicka  <jh@suse.cz>
+
+       * predict.def: Set hitrates according our experimental run.
+
+Wed Aug  8 18:01:58 CEST 2001  Jan Hubicka  <jh@suse.cz>
+
+       * i386.h (HARD_REGNO_RENAME_OK): New macro.
+
+2001-08-08  H.J. Lu <hjl@gnu.org>
+
+       * config/mips/mips.c (mips_unique_section): New. Copied from
+       config/mips/elf.h.
+
+       * config/mips/mips-protos.h (mips_unique_section): New
+       prototype.
+
+       * config/mips/elf.h (UNIQUE_SECTION): Use mips_unique_section.
+
+       * config/mips/little.h: New. Generic little endian mips
+       targets. Only mips*-*-linux* is converted to use it so far.
+
+       * config/mips/linux.h: Include "gofast.h" and "mips/mips.h".
+       (WCHAR_TYPE): Defined
+       (WCHAR_TYPE_SIZE): Likewise.
+       (INIT_SUBTARGET_OPTABS): Likewise.
+       (BSS_SECTION_ASM_OP): Likewise.
+       (SBSS_SECTION_ASM_OP): Likewise.
+       (ASM_OUTPUT_ALIGNED_BSS): Likewise.
+       (ASM_DECLARE_OBJECT_NAME): Likewise.
+       (UNIQUE_SECTION): Likewise.
+       (EXTRA_SECTIONS): Likewise.
+       (ASM_OUTPUT_CONSTRUCTOR): Likewise.
+       (ASM_OUTPUT_DESTRUCTOR): Likewise.
+       (ASM_OUTPUT_DEF): Likewise.
+       (HANDLE_SYSV_PRAGMA): Removed.
+       (NO_IMPLICIT_EXTERN_C): Likewise.
+       (TARGET_MEM_FUNCTIONS): Likewise.
+       (STARTFILE_SPEC): Likewise.
+       (ENDFILE_SPEC): Likewise.
+       (LIB_SPEC): Likewise.
+       (INVOKE__main): Likewise.
+       (CTOR_LIST_BEGIN): Likewise.
+       (CTOR_LIST_END): Likewise.
+       (DTOR_LIST_BEGIN): Likewise.
+       (DTOR_LIST_END): Likewise.
+       (SET_ASM_OP): Likewise.
+       (ASM_OUTPUT_SOURCE_LINE): Likewise.
+       (ASM_OUTPUT_DEF): Likewise.
+       (ASM_OUTPUT_IDENT): Likewise.
+
+       * config/mips/mips.h (ASM_SPEC): Undefine before define.
+       (CPLUSPLUS_CPP_SPEC): Likewise.
+       (ASM_APP_ON) Redefine only if not defined.
+       (ASM_APP_OFF): Likewise.
+       (ASM_OUTPUT_SOURCE_LINE): Likewise.
+       (ASM_OUTPUT_IDENT): Likewise.
+
+       * config.gcc: Update tm_file for Linux/mips.
+
+2001-08-08  Bernd Schmidt  <bernds@redhat.com>
+
+       * cselib.c (cselib_record_sets): If insn is predicated, turn
+       sources into IF_THEN_ELSEs.
+
+       * config/ia64/ia64.md (cond_opsi2_internal, cond_opsi2_internal_b):
+       Turn into define_insn_and_split.
+
+       * sched-deps.c: Include "cselib.h".
+       (add_insn_mem_dependence, sched_analyze_1, sched_analyze_2):
+       Use cselib to turn memory addresses into VALUEs.
+       (sched_analyze): Call cselib_init/cselib_finish if necessary.
+       * sched-int.h (struct sched_info): New member USE_CSELIB.
+       * sched-ebb.c (ebb_sched_info): Initialize it.
+       * sched-rgn.c (rgn_sched_info): Likewise.
+       * Makefile.in (sched-deps.o): Update dependencies.
+
+       * cselib.h (cselib_subst_to_values): Declare.
+       * cselib.c (cselib_subst_to_values): No longer static.  Allow MEMs
+       that have no value and autoincs to be handled by generating a new
+       dummy value.
+
+2001-08-08  Graham Stott  <grahams@redhat.com>
+
+       * final.c (shorten_branches): Update the INSN_ADDRESSES of insns
+       within fixed length SEQUENCE.
+
+2001-08-08  Graham Stott  <grahams@redhat.com>
+
+       * diagnostic.h (diagnostic_format_decoder): Parenthesize macro parameter.
+       (diagnostic_prefixing_rule): Likewise.
+       (diagnostic_line_cutoff): Likewise.
+       (diagnostic_kind_count): Likewise.
+
+2001-08-08  Graham Stott  <grahams@redhat.com>
+
+       * alias.c (find_base_decl): Delete redundent assignment.
+
 2001-08-08  Graham Stott  <grahams@redhat.com>
 
        * dependence.c (INDEX_LIMIT_CHECK): Uppercase macro parameter.
@@ -63,8 +647,8 @@ Tue Aug  7 22:18:06 CEST 2001  Jan Hubicka  <jh@suse.cz>
 
 2001-08-07  Daniel Jacobowitz  <drow@mvista.com>
 
-        * config.gcc: Quote target_cpu_default2 correctly for
-        powerpc*-*-* targets.
+       * config.gcc: Quote target_cpu_default2 correctly for
+       powerpc*-*-* targets.
 
 2001-08-07  Neil Booth  <neil@daikokuya.demon.co.uk>
 
@@ -1339,6 +1923,22 @@ Fri Jul 27 17:53:00 CEST 2001  Jan Hubicka  <jh@suse.cz>
        * flow.c (backward_edge_of_syntactic_loop_p): Avoid uninitialized
        variable access.
 
+2001-07-26  Andrew Haley  <aph@redhat.com>
+       Joern Rennecke <amylaar@redhat.com>
+
+       * config/sh/linux.h (CPP_DEFAULT_CPU_SPEC): New.
+       (SUBTARGET_CPP_ENDIAN_SPEC): New.
+       (SUBTARGET_CPP_SPEC): New.
+       (CPP_SPEC): Remove.
+       * config/sh/sh.h (SUBTARGET_CPP_ENDIAN_SPEC): New.
+       (SUBTARGET_CPP_PTR_SPEC): New.
+       (CPP_DEFAULT_CPU_SPEC): New.
+       (EXTRA_SPECS): Add SUBTARGET_CPP_ENDIAN_SPEC,
+       SUBTARGET_CPP_PTR_SPEC, and CPP_DEFAULT_CPU_SPEC.
+       (CPP_SPEC): Break out parts into SUBTARGET_CPP_ENDIAN_SPEC,
+       SUBTARGET_CPP_PTR_SPEC, and CPP_DEFAULT_CPU_SPEC.
+       (SUBTARGET_CPP_SPEC): Define as an empty string.
+
 2001-07-27  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
 
        * doc/install.texi (Configuration): Properly link the host