]> gcc.gnu.org Git - gcc.git/blobdiff - gcc/ChangeLog
avr.md ("*negsi2"): substitute %@ to __zero_reg__
[gcc.git] / gcc / ChangeLog
index 303aea56ff6e922d14e2e9818bcceb5fb676f5d8..e603d2de8593adca9e7d00b994763813f81ff0ba 100644 (file)
@@ -1,3 +1,980 @@
+Sat Sep  2 13:58:23 2000  Marek Michalkiewicz <marekm@linux.org.pl>
+
+       * config/avr/avr.md ("*negsi2"): substitute %@ to __zero_reg__
+       * config/avr/libgcc.S: Lost part of the previous patch.
+
+2000-08-31  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
+
+       * gthr-dce.h (__gthread_objc_mutex_allocate): Create a pthread_mutex_t
+       object before calling pthread_mutex_init.
+
+2000-09-02  Alexandre Oliva  <aoliva@redhat.com>
+
+       * config/sh/t-elf, config/sh/crt1.asm, config/sh/crti.asm,
+       config/sh/crtn.asm: New files.
+       * config/sh/t-sh (EXTRA_MULTILIB_PARTS): Set.
+       (crt1.o, crti.o, crtn.o): New targets.
+       * configure.in [sh-*-elf*, sh-*-rtemself*] (tmake_file): Added
+       sh/t-elf.
+       * configure: Rebuilt.
+       * config/sh/sh.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP,
+       STARTFILE_SPEC, ENDFILE_SPEC, CRT_CALL_STATIC_FUNCTION): Define.
+       * config/sh/elf.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP):
+       Undefine for config/elfos.h to redefine.
+       (STARTFILE_SPEC, ENDFILE_SPEC): Redefine after config/elfos.h.
+
+2000-09-02  Alexandre Oliva  <aoliva@redhat.com>, Niibe Yutaka  <gniibe@m17n.org>, Kaz Kojima  <kkojima@rr.iij4u.or.jp>
+
+       * config/sh/sh-protos.h (nonpic_symbol_mentioned_p,
+       legitimize_pic_address, output_pic_addr_const): Declare.
+       * config/sh/sh.h (CONDITIONAL_REGISTER_USAGE): Fix PIC register.
+       (PREFERGOT_BIT, TARGET_PREFERGOT): Likewise.
+       (TARGET_SWITCHES): New switch -mprefergot.
+       (OVERRIDE_OPTIONS): Set flag_no_function_cse unless -mprefergot.
+       (PIC_OFFSET_TABLE_REGNUM): Define.
+       (GOT_SYMBOL_TABLE): Likewise.
+       (LEGITIMIZE_ADDRESS): Use legitimize_pic_address.
+       (ENCODE_SECTION_INFO): Define.
+       (FINALIZE_PIC): New macros.
+       (LEGITIMATE_PIC_OPERAND_P, SYMBOLIC_CONST_P): New macro.
+       (ASM_OUTPUT_INT, ASM_OUTPUT_SHORT): Use output_pic_addr_const.
+       * config/sh/sh.c (print_operand_address): Use output_pic_addr_const.
+       (prepare_move_operands): Call emit_pic_move or
+       emit_pic_const_move if appropriate.
+       (output_far_jump): For PIC, use braf and output long offset.
+       (machine_dependent_reorg): 
+       (sh_expand_prologue): Save and initialize the PIC register.
+       (sh_expand_epilogue): Restore it.
+       (initial_elimination_offset): Account for it.
+       (nonpic_symbol_mentioned_p): New function.
+       (legitimize_pic_address): Likewise.
+       (output_pic_addr_const): Likewise.
+       * config/sh/sh.md (calli_pcrel, call_valuei_pcrel): New insns.
+       (call, call_value): Use them.
+       (GOTaddr2picreg, sym_label2reg, symGOT2reg, symGOTOFF2reg,
+       symPLT_label2reg): New expands.
+       * invoke.texi (SH Options): Document -mprefergot.
+
+2000-09-01  Alexandre Oliva  <aoliva@redhat.com>
+
+       * rtl.h (ASM_OPERANDS_INPUT_CONSTRAINT_EXP): New macro.
+       * gcse.c (hash_string_1): New function.
+       (hash_expr_1) <ASM_OPERANDS>: Disregard filename and line number.
+       (expr_equiv_p) <ASM_OPERANDS>: Likewise.
+       * cse.c (rtx_cost): Don't increase the cost of ASM_OPERANDS.
+       (canon_hash_string): New function.
+       (canon_hash) <ASM_OPERANDS>: Disregard filename and line number.
+       (exp_equiv_p) <ASM_OPERANDS>: Likewise.
+       (fold_rtx): Use ASM_OPERANDS accessor macros.
+       * emit-rtl.c (copy_insn_1): Likewise.
+       * integrate.c (copy_rtx_and_substitute): Likewise.
+       * stmt.c (expand_asm_operands): Likewise.  Give an
+       ASM_OPERANDS rtx the mode of the output reg being set from it.
+
+2000-09-01  Fred Fish  <fnf@be.com>
+
+       * fix-header.c (write_rbrac): Add putc and getc to list of
+       functions to protect against prior definition as a macro.
+2000-09-01  Joseph S. Myers  <jsm28@cam.ac.uk>
+
+       * c-common.h (enum c_tree_index): Add CTI_C_SIZE_TYPE.
+       (c_size_type_node): Define.
+       * c-decl.c (init_decl_processing): Initialize c_size_type_node.
+       * c-common.c (enum format_lengths, enum format_std_version,
+       format_length_info, format_type_detail, BADLEN, NOLENGTHS,
+       format_kind_info, printf_length_specs, scanf_length_specs, T89_I,
+       T99_I, T89_L, T99_LL, TEX_LL, T89_S, T89_UI, T99_UI, T89_UL,
+       T99_ULL, TEX_ULL, T89_US, T89_F, T99_F, T89_D, T99_D, T89_LD,
+       T99_LD, T89_C, T99_SC, T99_UC, T89_V, T94_W, TEX_W, T94_WI,
+       TEX_WI, T99_ST, T99_SST, T99_PD, T99_UPD, T99_IM, T99_UIM,
+       format_types): Define.
+       (format_char_info, print_char_table, scan_char_table,
+       time_char_table): Rearrange for new organization of information
+       about format length modifiers and standard versions.
+       (T_ST): Redefine to use c_size_type_node.
+       (check_format_info): Obtain information about length modifiers and
+       standard versions from tables.  Adjust warning message wordings.
+       Use the name from the user's program for `ll' and `hh' length
+       modifiers in warning messages.  Use more informative names for
+       wanted types where available (for wchar_t, wint_t, size_t, signed
+       size_t, ptrdiff_t, unsigned ptrdiff_t, intmax_t and uintmax_t).
+
+2000-09-01  Jim Wilson  <wilson@cygnus.com>
+
+       * calls.c (emit_call_1): Add REG_NORETURN note to call if ECF_NORETURN.
+       * combine.c (distribute_notes): Handle REG_NORETURN.
+       * rtl.c (reg_note_name): Add REG_NORETURN.
+       * rtl.h (enum reg_note): Likewise.
+
+       * config/ia64/ia64-protos.h (emit_safe_across_calls): Renamed from
+       ia64_file_start.
+       * config/ia64/ia64.c (emit_safe_across_calls): Likewise.
+       (rtx_needs_barrier): Handle unspec_volatile 8 and 9.
+       (emit_predicate_relation_info): Handle conditional calls with
+       REG_NORETURN.
+       * config/ia64/ia64.h (ASM_FILE_START): Call emit_safe_across_calls
+       instead of ia64_file_start.
+       * config/ia64/sysv4.h (ASM_FILE_START): Likewise.
+       * config/ia64/ia64.md (safe_across_calls_all,
+       save_across_calls_normal): New patterns.
+
+       * loop.c (check_final_value): Check for biv use before checking for
+       giv use.  Check for both biv and giv uses.  Always set last_giv_use
+       if there is a giv use.
+
+2000-09-01  Richard Henderson  <rth@cygnus.com>
+
+       * config/ia64/ia64.md (mulsi3): Use grfr_register_operand.
+       (madddi3): Likewise.
+       (maddsi3): New.
+
+Fri Sep  1 10:59:47 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * expr.c (clear_storage): Don't use emit_move_insn unless
+       either BLKmode or proper size.
+       (store_constructor): Don't call clear_storage if REG of wrong size.
+
+       * flow.c (init_propagate_block_info): Don't mark frame dead at end
+       of function if returns wiht stack pointer depressed.
+
+2000-09-01  Andrew Haley  <aph@redhat.com>
+
+        * dwarf2out.c (stack_adjust_offset): New function.
+        (dwarf2out_stack_adjust): Break out stack adjust logic into
+        new stack_adjust_offset function.  Look inside parallels and
+        sequences for stack adjustments.
+
+2000-08-31  Jeff Law <law@cygnus.com>
+
+       * arm.md: Use no_new_pseudos to determine when it is safe
+       to create new pseudo registers.
+
+        * arm.c (legitimize_pic_address): Use no_new_pseudos to determine
+        when we can safely allocate new registers.
+
+2000-08-31  Geoffrey Keating  <geoffk@cygnus.com>
+
+       * stmt.c (expand_asm_operands): Twiddle generating_concat_p
+       so that CONCATs are not generated for ASMs.
+       * emit-rtl.c (gen_reg_rtx): Don't generate CONCATs when
+       not generating_concat_p.
+       * function.c (pop_function_context_from): Reset
+       generating_concat_p.
+       (prepare_function_start): Likewise.
+       * rtl.c (generating_concat_p): Define.
+       * rtl.h (generating_concat_p): Declare.
+       * toplev.c (rest_of_compilation): No CONCATs after RTL generation.
+
+2000-08-22  Philipp Thomas  <pthomas@suse.de>
+            Masanobu Yuhara <yuhara@flab.fujitsu.co.jp>
+
+       * gmicro.h (TARGET_SWITCHES): Add descriptions and mark them
+       for translation.
+
+2000-08-30  Greg McGary  <greg@mcgary.org>
+
+       * Makefile.in (fixinc.sh): Pass CC, CFLAGS and LDFLAGS to mkfixinc.sh
+       * fixinc/Makefile.in (fixincl): Pass $(LDFLAGS) to $(CC).
+       * fixinc/mkfixinc.sh: Pass $CC, $CFLAGS and $LDFLAGS to $MAKE.
+
+2000-08-30  Greg McGary  <greg@mcgary.org>
+
+       * tree.h (struct tree_int_cst): Wrap low and high in a sub-struct.
+       (TREE_INT_CST_LOW, TREE_INT_CST_HIGH): Access through sub-struct.
+       (TREE_INT_CST): New macro.
+       * varasm.c (const_hash, compare_constant_1, record_constant_1):
+       Use new macro TREE_INT_CST.
+
+Wed 30-Aug-2000 23:18:59 BST  Neil Booth  <NeilB@earthling.net>
+
+       * contrib.texi: Add self.
+
+2000-08-30  Alexandre Oliva  <aoliva@redhat.com>
+
+       * config/sh/sh.md (cmpeqsi_ior_t, cmpeqsi_and_t): New insns.
+       (cmpeqdi_t splitter): Use cmpeqsi_and_t instead of emitting jumps
+       and labels.
+
+2000-08-30  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
+
+       * fixinc/gnu-regex.c: Don't define `const'.
+
+Tue Aug 29 22:09:59 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * expr.c (store_constructor): Allow variable bounds of array type.
+       (expand_expr): Don't blow up if type is ERROR_MARK.
+       * varasm.c (output_constructor): Don't access lower bound of array
+       type unless need it if index is supplied (so it can be a variable
+       if no index is supplied).
+       Use tree_low_cst; use HOST_WIDE_INT for sizes; change BITPOS to POS.
+       Other minor cleanups.
+
+2000-08-29  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
+
+       * Makefile.in: Revamp handling of cflags to allow different WARN_CFLAGS
+       for compilations in stage 1 and subsequent stages, respectively.
+       * configure.in (vax): Add compiler-dependent CFLAGS for stage 1.
+       * configure: Rebuilt.
+       * x-vax, x-vax-gcc: Deleted.
+
+2000-08-29  Zack Weinberg  <zack@wolery.cumb.org>
+
+       * c-common.c (declare_function_name): Use func_id_node,
+       function_id_node, and pretty_function_id_node.  Do not make
+       __func__ visible at file scope.   
+       * c-common.h (c_tree_index): Add CTI_FUNCTION_ID,
+       CTI_PRETTY_FUNCTION_ID, and CTI_FUNC_ID.
+       (function_id_node, pretty_function_id_node, func_id_node): New
+       macros.
+       * c-decl.c (init_decl_processing): Initialize function_id_node,
+       pretty_function_id_node, and func_id_node.
+       (c_make_fname_decl): Correct comment.
+
+       * tree.h (struct tree_identifier): Constify pointer member.
+
+       * c-decl.c (pushdecl, implicit_decl_warning): Constify a char *.
+       * c-pragma.h (struct weak_syms): Constify name and value members.
+       (add_weak): Constify arguments.   
+
+       * calls.c (special_function_p): Constify a char *.
+       (expand_call): Remove variable which is initialized and then
+       never used.
+       * dependence.c (struct def_use, struct induction, struct subscript):
+       Constify 'variable' member.
+       (get_low_bound, have_induction_variable): Constify char * argument.
+       (find_induction_variable): Add braces to avoid dangling else.
+       (classify_dependence): Constify char * arrays.
+       * profile.c (output_func_start_profiler): Constify a char *.
+       * stor-layout.c (finalize_record_size): Constify a char *.
+       * tree.c (is_attribute_p): Constify a char *.
+       * varasm.c (add_weak, remove_from_pending_weak_list): Constify argument.
+
+       * varasm.c (make_function_rtl, make_decl_rtl): Rearrange code
+       for comprehensibility.  Do not call get_identifier if we did
+       not change the DECL_ASSEMBLER_NAME of the decl.  Use alloca to
+       create temporary string constants, not ggc_alloc_string.  No
+       need to copy result of ASM_FORMAT_PRIVATE_NAME.  Use const
+       char * to hold IDENTIFIER_POINTERs.
+
+2000-08-29  Richard Henderson  <rth@cygnus.com>
+
+       * config/ia64/ia64.md (muldi3): Use grfr_register_operand
+       for the inputs.
+
+2000-08-29  Richard Henderson  <rth@cygnus.com>
+
+       * reload.c (push_secondary_reload): Allow class == reload_class
+       if we're using a reload_in/out pattern.
+
+       * config/ia64/ia64.md (reload_inti): Use a TImode scratch.  Use
+       the half that does not conflict with the reload register.
+       (reload_outti): Likewise.
+
+2000-08-29  Kazu Hirata  <kazu@hxi.com>
+
+       * reload.c: Fix formatting.
+
+       * stmt.c: Fix formatting.
+
+       * gcc.c: Fix formatting.
+
+2000-08-29  Zack Weinberg  <zack@wolery.cumb.org>
+
+       * flags.h (time_report, mem_report): New global flags.
+       * toplev.c: Define time_report and mem_report.
+       (f_options): Add -ftime-report and -fmem-report.
+       (compile_file): Turn on time_report if quiet_flag is off.
+       Call ggc_print_statistics at very end if mem_report is on.
+       * timevar.c (TIMEVAR_ENABLE): Examine time_report, not quiet_flag.
+
+       * ggc-common.c (ggc_print_statistics): Rename to
+       ggc_print_common_statistics; all callers changed.  Scale
+       quantities above 10K to kilobytes and above 10M to megabytes.
+       * ggc-page.c (ggc_page_print_statistics): Rename to
+       ggc_print_statistics.  Report memory consumed by internal data
+       structures for each allocation bucket.  Scale quantities above
+       10K to kilobytes and above 10M to megabytes.
+       * ggc-simple.c: Prototype debug_ggc_tree to avoid warning.
+       Cast PTR_KEY(p) to unsigned long in fprintf call to avoid warning.
+       Define tally_leaves always.
+       (ggc_print_statistics): New function.
+       * ggc.h: Adjust for renamed functions.
+
+Wed Aug 30 00:11:42 2000  Denis Chertykov  <denisc@overta.ru>
+
+       * config/avr/avr.md ("*movsf","*movsi"): Pass NULL to
+       output_movsisf instead of which_alternative.
+
+       * config/avr/avr.c (output_reload_inhi): Check for NULL ponter.
+
+Tue Aug 29 22:29:58 2000  Denis Chertykov  <denisc@overta.ru> & Marek Michalkiewicz <marekm@linux.org.pl>
+
+       * config/avr/avr-protos.h: (avr_output_ascii) Removed.
+       (avr_progmem_p): New prototype.
+       (output_movsisf): Prototype declaration changed.
+       (output_movqi): New prototype.
+       (output_movhi): New prototype.
+       (call_insn_operand): Likewise.
+       (final_prescan_insn): Likewise. 
+       (avr_simplify_comparision_p): Likewise.
+       (avr_normalize_condition): Likewise.
+       (compare_eq_p): Likewise.
+       (out_shift_with_cnt): Likewise.
+       (const_int_pow2_p): Likewise.
+       (output_reload_inhi): Prototype declaration changed.
+
+       * config/avr/avr.c: (debug_hard_reg_set): Prototype declared.
+       (ldi_reg_rtx): New. rtx for r31.
+       (avr_init_stack): Initialize as "__stack".
+       (function_prologue): Use it.
+       Replace all TARGET_ENHANCED with AVR_ENHANCED.
+       (avr_mcu_name): Initialize as "avr2".
+       (avr_enhanced_p, avr_mega_p): New variables.
+       (mcu_types, avr_override_options): Handle all known MCU types.
+       Also handle avr1 (only preprocess, assemble and link).
+       (print_operand): Using of `%K' in output template removed.
+       (out_movqi_r_mr): Optimized.
+       (out_movhi_r_mr): Likewise.
+       (output_movqi): New function.
+       (output_movhi): Likewise.
+       (out_movsi_r_mr): Optimized.
+       (output_movsisf): Compute insn length for `adjust_insn_length'
+       (out_movqi_mr_r): Optimized.
+       (out_movhi_mr_r): Optimized.
+       (adjust_insn_length): Use output_movsisf, output_movqi,
+       output_movhi for insn length adjusting.
+       (reg_unused_after): Use dead_or_set_p.
+       (preferred_reload_class): Now havn't any restriction.
+       (reg_was_0): New function.
+       (io_address_p): Likewise.
+       (const_int_pow2_p): Likewise.
+       (output_reload_inhi): Likewise.
+       (output_reload_insisf): Likewise.
+
+       * config/avr/avr.h (MULTILIB_DEFAULTS): Define.
+       (LIB_SPEC): Use -lc for all supported devices.
+       (LIBGCC_SPEC): Use -lgcc for all supported devices.
+       (AVR_MEGA): Define as avr_mega_p.
+       (AVR_ENHANCED): New, define as avr_enhanced_p.
+       (TARGET_SWITCHES): Remove -menhanced, now handled by -mmcu=...
+       (CPP_SPEC, LINK_SPEC): Handle all known MCU types.
+       (CRT_BINUTILS_SPECS): Handle all known MCU types.
+       Rename gcrt1-*.o to make file names unique on 8.3 filesystems.
+       (EXTRA_SPECS): Add CPP_AVR[1-5]_SPEC.
+       (ASM_SPEC): Pass -mmcu=... to the assembler.
+       Change all -DAVR_* to -D__AVR_*__.
+       (INIT_TARGET_OPTABS), config/avr/libgcc.S:
+       Rename library functions to start with two underscores.
+       (ASM_OUTPUT_COMMON): Outputs `.comm VAR,VAR-SIZE,1' to avoid
+       alignment.
+       (ASM_WEAKEN_LABEL): Declared for __attribute__((weak)).
+       (SUPPORTS_WEAK): Likewise.
+       (LDI_REG_REGNO): New. Register r31 will be used as temporary
+       register for loading constants to r0-r14.
+
+       * config/avr/avr.md: Replace all TARGET_ENHANCED with
+       AVR_ENHANCED.
+       (*mov_r_sp): Removed. Handled by output_movhi.
+       (*mov_sp_r): Likewise.
+       (*mov_sp_r_no_interrupts): Likewise
+       (*mov_sp_r_tiny): Likewise.
+       (*movqi): Use output_movqi.
+       (*reload_inqi): New.
+       (*movhi): Use output_movhi.
+       (*reload_inhi): New.
+       (*negsi2): Optimized.
+       (*negsf2): Likewise.
+       Added peepholes (define_peephole2) for loading constants to r0-r14
+       and for using `cpse' command.
+
+       * config/avr/libgcc.S: Rename library functions to start with two
+       underscores.
+       Add support for enhanced core.
+       (_moqhi3): Fix typo, now _modqi3.
+       (__divsi_raw): Use __zero_reg__ as loop counter, smaller by 1 word.
+       (__prologue_saves__): Remove test for stack adjust by 0.
+       (__tablejump__): New.
+
+       * config/avr/t-avr: Build libgcc2 with -mcall-prologues.
+       Add multilib support.
+
+Tue Aug 29 15:17:54 EDT 2000  John Wehle  (john@feith.com)
+
+       * loop.c (prescan_loop): Don't check unknown_address_altered
+       when deciding if insert_loop_mem is safe.  Add BLKmode MEMs
+       to loop_store_mems as necessary.
+       (loop_invariant_p): Don't check unknown_address_altered
+       or unknown_constant_address_altered.
+
+2000-08-29  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
+
+       * vax.md (sltu, sgeu): Delete sltu and sgeu insn patterns.
+
+2000-08-29  Zack Weinberg  <zack@wolery.cumb.org>
+
+       * cpperror.c (print_file_and_line): If line is (unsigned int)-1,
+       print just the filename.
+       * cpplex.c (_cpp_run_directive): Add additional argument, the
+       name to give the synthetic buffer.  This defaults to
+       translated "<command line>".
+       * cpplib.c (cpp_define, cpp_undef, cpp_assert, cpp_unassert):
+       Adjust to match.
+       (_cpp_define_builtin): New function.
+       * cppinit.c (initialize_builtins): Use _cpp_define_builtin.
+       * cpphash.h: Update prototypes.
+
+       * tradcpp.c (main): Process -D and -U simultaneously, in the
+       order they appeared on the command line.
+
+2000-08-29  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * c-decl.c (define_label): Call warning_with_file_and_line and
+       error_with_file_and_line instead of plain warning or error.
+
+       * c-parse.in (label): Use save_filename/save_lineno to ensure
+       correct values for calls to define_label.
+
+2000-08-29  Mark Mitchell  <mark@codesourcery.com>
+
+       * calls.c (expand_call): Don't create a VAR_DECL just to throw it
+       away.
+       * expr.c (expand_expr, case TARGET_EXPR): Don't call
+       mark_addressable.
+       * tree.h (get_file_function_name): Remove two duplicate
+       declarations.
+
+2000-08-28  Kazu Hirata  <kazu@hxi.com>
+
+       * tree.c: Fix formatting.
+
+       * xcoffout.c: Fix formatting.
+
+2000-08-28  Jason Merrill  <jason@redhat.com>
+
+       * dwarf2out.c (attr_checksum): Also ignore DW_AT_producer.
+
+2000-08-28  Daniel Berlin  <dberlin@redhat.com>
+
+       * dwarf2out.c (dwarf2out_finish): Don't bother calling
+       break_out_includes if it won't do anything.
+
+2000-08-28  Richard Henderson  <rth@cygnus.com>
+
+       * reload.c (push_secondary_reload): Revert 2000-08-16 change.
+       (find_reloads): Likewise.
+       * config/alpha/alpha.md (reload_inqi): Revert 2000-08-11 change.
+       (reload_inhi): Likewise.
+
+2000-08-28  Richard Henderson  <rth@cygnus.com>
+
+       * config/i386/i386.c: Don't error on EXTRA_CONSTRAINT defined.
+       (call_insn_operand): Don't expect a surrounding mem.
+       (constant_call_address_operand): Likewise.
+       * config/i386/i386.h (PREDICATE_CODES): Update.
+       * config/i386/i386.md (call patterns): Move the match_operand
+       for the call destination inside the mem.
+
+2000-08-28  Richard Henderson  <rth@cygnus.com>
+
+       * local-alloc.c (requires_inout): Don't use reserved range for
+       EXTRA_CONSTRAINTS; use anything not matched by REG_CLASS_FROM_LETTER.
+       * recog.c (asm_operand_ok): Likewise.
+       (preprocess_constraints, constrain_operands): Likewise.
+       * regclass.c (record_reg_classes): Likewise.
+       * reload.c (find_reloads): Likewise.
+       * reload1.c (maybe_fix_stack_asms): Likewise.
+       (reload_cse_simplify_operands): Likewise.
+       * stmt.c (expand_asm_operands): Likewise.
+
+       * md.texi: Update constraints documentation.
+       * tm.texi (EXTRA_CONSTRAINT): Update.
+
+2000-08-28  Daniel Berlin  <dberlin@redhat.com>
+
+       * dwarf2out.c (DIE_LABEL_PREFIX): Remove leading "__".
+       (print_die): If we don't know the offset of the
+       target die, try the symbol.  Add a trailing newline.
+       (reverse_all_dies): New fn.
+       (dwarf2out_finish): Call it.
+       (break_out_includes): Reorganize for clarity.
+       (add_sibling_attributes): Don't call reverse_die_lists.
+       (output_comp_unit): Rename from output_comdat_comp_unit.  Use for
+       primary CU, too.
+       * flags.h: Add flag_eliminate_dwarf2_dups.
+       * toplev.c (f_options): Support -feliminate-dwarf2-dups.
+
+2000-08-28  Jason Merrill  <jason@redhat.com>
+
+       * dwarf2.h (DW_TAG_GNU_BINCL, DW_TAG_GNU_EINCL): New tags.
+       * dwarf2out.c: #include "md5.h".
+       (DIE_LABEL_PREFIX): New macro.
+       (dw_val_struct): Add 'external' flag to val_die_ref.
+       (add_AT_die_ref, AT_ref): Adjust.
+       (AT_ref_external, set_AT_ref_external): New fns.
+       (build_abbrev_table): Call set_AT_ref_external.
+       (value_format): Call AT_ref_external.
+       (die_struct): Add die_symbol field.
+       (new_die): Clear it.
+       (dwarf_tag_name): Handle BINCL/EINCL.
+       (dwarf2out_start_source_file): Add BINCL DIE.
+       (dwarf2out_end_source_file): Add EINCL DIE.
+       (push_new_compile_unit, pop_compile_unit, clear_die_sizes): New fns.
+       (loc_checksum, attr_checksum, die_checksum): New fns.
+       (is_type_die, is_comdat_die, is_symbol_die): New fns.
+       (compute_section_prefix, assign_symbol_names): New fns.
+       (gen_internal_sym, output_die_symbol, output_symbolic_ref): New fns.
+       (output_die): Call output_die_symbol and AT_ref_external.
+       (output_comdat_comp_unit): New fn, split out from...
+       (dwarf2out_finish): ...here.  Also call add_sibling_attributes for 
+       secondary CUs.
+       (output_pubnames, output_aranges): Abort if we see entries from
+       secondary CUs.
+       * toplev.h: Declare file_name_nondirectory.
+       * toplev.c (file_name_nondirectory): New fn, moved from C++ frontend.
+       (rest_of_type_compilation): Call dwarf2out_decl if at toplevel.
+       (debug_start_source_file): Call dwarf2out_start_source_file
+       regardless of debug verbosity.
+       (debug_end_source_file): Similarly.
+       * tree.h: Declare clean_symbol_name.
+       * tree.c (clean_symbol_name): Split out from...
+       (get_file_function_name_long): ...here.
+
+       * dwarf2out.c (new_loc_descr): Use calloc.
+       (splice_child_die): Remove the die from the right parent.
+       (gen_struct_or_union_die): Don't add AT_name to a specification DIE.
+
+Mon Aug 28 19:02:13 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * toplev.c (decode_g_option): Don't give warning for unknown -g
+       option; return 0 instead.
+       (main): If -g option is not recognized by front end or
+       language-independent code, give warning.
+
+2000-08-28  Greg McGary  <greg@mcgary.org>
+
+       * config/i386/i386-protos.h (ix86_expand_compare): Add extern decl.
+       * config/i386/i386.c (ix86_expand_compare): Remove `static'.
+       * config/i386/i386.md (trap, conditional_trap): New insn & expand.
+
+2000-08-27  Greg McGary  <greg@mcgary.org>
+
+       * cpplex.c (parse_string): Don't look for backslash
+       before first char in `namebuf'.
+       * loop.c (strength_reduce): Skip NOTEs.
+
+2000-08-27  Jason Merrill  <jason@redhat.com>
+
+       * c-decl.c (duplicate_decls): Don't set TREE_STATIC or clear
+       DECL_EXTERNAL on a local extern.  Don't set DECL_IGNORED_P or
+       TREE_ASM_WRITTEN, either.
+       (finish_decl): Adjust.
+
+2000-08-28  Philipp Thomas  <pthomas@suse.de>
+
+       * ABOUT-GCC-NLS: Remove gettext patches from Paul Eggert as
+       they have been incorporated into the gettext CVS. Change the text to
+       reflect the current status of NLS. Add instructions for accessing
+       the gettext CVS and add the patch from Martin v. Loewis.
+
+2000-08-27  Geoff Keating  <geoffk@cygnus.com>
+
+       * config/rs6000/rs6000.md (movdi_internal64+5): Make SUBREG-safe
+       by using gen_lowpart_common.
+       (movdi_internal64+6): Likewise.
+
+2000-08-26  Alexandre Oliva  <aoliva@redhat.com>
+
+       * tm.texi (FINI_SECTION_ASM_OP, CRT_CALL_STATIC_FUNCTION):
+       Document.
+
+       * config/mn10300/mn10300.h (DBX_REGISTER_NUMBER): Remap register
+       numbers to the ranges used by GDB.
+
+2000-08-25  Richard Henderson  <rth@cygnus.com>
+
+       * config/ia64/ia64.h (struct machine_function): Add n_varargs.
+       * config/ia64/ia64.c (ia64_compute_frame_size): Use it.
+       (ia64_expand_prologue): Likewise.
+       (ia64_setup_incoming_varargs): Set it.  Properly skip the current
+       argument for stdargs.
+
+2000-08-25  Jason Merrill  <jason@redhat.com>
+
+       * integrate.c (expand_inline_function): Pull out the original decl.
+
+2000-08-25  Jim Wilson  <wilson@cygnus.com>
+
+       * cse.c (cse_insn): Don't pass label subtraction to force_const_mem.
+
+       * function.c (gen_mem_addressof): Clear MEM_ALIAS_SET if no decl.
+
+2000-08-25  Greg McGary  <greg@mcgary.org>
+
+       * flow.c (dump_edge_info): Use ARRAY_SIZE.
+       * config/alpha/alpha.c (alpha_expand_block_move): Likewise.
+
+2000-08-25  Richard Earnshaw  <rearnsha@arm.com>
+
+       * arm.h (STRUCT_VALUE): Define to 0, not NULL.
+
+Fri Aug 25 12:52:49 EDT 2000  John Wehle  (john@feith.com)
+
+       * i386.c (ix86_find_base_term): New.
+       * i386-protos.h (ix86_find_base_term): Prototype.
+       * i386.h (FIND_BASE_TERM): Define.
+       * alias.c (find_base_term): Use it.
+       * tm.texi (FIND_BASE_TERM): Document it.
+
+       * alias.c (true_dependence, write_dependence_p): Unchanging
+       memory can't conflict with non-unchanging memory.
+
+       * alias.c (memrefs_conflict_p): A BLKmode reference
+       to a symbol (or CONST_INT address) always conflicts
+       with a reference to another symbol.
+
+2000-08-25  Joseph S. Myers  <jsm28@cam.ac.uk>
+
+       * c-common.c (time_char_table): Don't allow width and flags with
+       "z" format.
+
+2000-08-25  Jakub Jelinek  <jakub@redhat.com>
+
+       * config/i386/i386.c (ix86_expand_branch): Treat GE and GEU the same
+       way as LT and LTU when the second operand has 0 in low word.
+
+2000-08-26  Michael Hayes  <mhayes@cygnus.com>
+
+       * basic-block.h (struct loop): Rename `exits' field to
+       `exit_edges'.  Add `entry_edges' and `num_entries' fields.
+
+       * flow.c (flow_loop_exit_edges_find): Rename from flow_loop_exits_find.
+       (flow_loop_entry_edges_find): Add.
+       (flow_edge_list_print): Rename from flow_exits_print.
+       (flow_loops_find): Call flow_loop_entry_edges_find.
+       (flow_loop_dump): Dump entry_edges list.
+       (flow_loops_free): Free entry_edges.
+       
+2000-08-26  Michael Hayes  <mhayes@cygnus.com>
+       
+       * loop.c (loop_dump_aux, debug_loop): New functions.
+       (LOOP_BLOCK_NUM_1, LOOP_BLOCK_NUM, LOOP_INSN_UID): New macros.
+
+       * flow.c (flow_loops_dump): Add callback parameter.
+       (flow_loop_dump): Add callback parameter and call it.  Move
+       loop note debugging code to loop_dump_aux.
+
+       * basic-block.h (flow_loop_dump): Add callback parameter
+       (flow_loops_dump): Likewise.
+
+       * toplev.c (rest_of_compilation): Add NULL callback function pointer
+       to call to flow_loops_dump.
+       
+2000-08-26  Michael Hayes  <mhayes@cygnus.com>
+
+       * loop.c (count_loop_regs_set): Replace start and end arguments
+       with loop argument.  All callers udated.
+       
+2000-08-26  Michael Hayes  <mhayes@cygnus.com>
+       
+       * loop.c (constant_high_bytes): Delete.
+
+2000-08-26  Michael Hayes  <mhayes@cygnus.com>
+
+       * loop.c (prescan_loop): Move checks for NOTE_INSN_LOOP_CONT
+       and NOTE_INSN_LOOP_VTOP to...
+       (find_and_verify_loops) ...here.
+
+Fri Aug 25 04:21:13 2000  Alexandre Oliva  <aoliva@redhat.com>
+
+       * crtstuff.c (CRT_CALL_STATIC_FUNCTION): Define default.
+       (fini_dummy, init_dummy): Use it.
+
+Fri 25-Aug-2000 08:03:27 BST  Neil Booth  <NeilB@earthling.net>
+
+       * cpplex.c (is_macro_disabled): Caller has already checked
+       that we're not a preprocessed file.
+
+2000-08-24  Mark Mitchell  <mark@codesourcery.com>
+
+       * Makefile.in (C_AND_OBJC_OBJS): Remove c-iterate.o.
+       (c-iterate.o): Remove target.
+       * gcc/c-common.h (enum rid): Remove RID_ITERATOR.
+       * gcc/c-decl.c (init_decl_processing): Remove call to init_iterators.
+       (finish_decl): Don't handle iterators.
+       (grokdeclarator): Likewise.
+       * gcc/c-parse.gperf: Remove __iterator and __iterator__ keywords.
+       * gcc/c-gperf.h: Regenerated.
+       * gcc/c-iterate.c: Removed.
+       * gcc/c-lex.c (init_lex): Don't handle iterators.
+       * gcc/c-parse.in (primary): Remove pop_iterator_stack call.
+       (compstmt_primary_start): Remove push_iterator_stack call.
+       (stmt): Don't allow iterator statements.  Replace iterator_expand
+       with expand_expr_stmt.
+       (all_iter_stmt): Remove.
+       (all_iter_stmt_simple): Likewise.
+       (all_iter_stmt_with_decl): Likewise.
+       * gcc/c-tree.h (ITERATOR_P): Remove.
+       (ITERATOR_BOUND_P): Likewise.
+       (init_iterators): Remove declaration.
+       (iterator_expand): Likewise.
+       (iterator_for_loop_start): Likewise.
+       (iterator_for_loop_end): Likewise.
+       (iterator_for_loop_record): Likewise.
+       (push_iterator_stack): Likewise.
+       (pop_iterator_stack): Likewise.
+       * gcc/c-typeck.c (decl_constant_value): Don't check ITERATOR_P.
+       (readonly_warning): Likewise.
+       * gcc/tree.h (ITERATOR_BOUND_P): Don't mention it.
+               
+2000-08-24  Jim Wilson  <wilson@cygnus.com>
+
+       * c-common.c (decl_attributes, case A_ALIGN): Revert last change.
+       Copy type in a TYPE_DECL, just like pushdecl does.
+
+2000-08-24  Richard Henderson  <rth@cygnus.com>
+
+       * toplev.c (main): Enable flag_reorder_blocks at -O2.
+
+2000-08-24  Zack Weinberg  <zack@wolery.cumb.org>
+
+       * ggc-page.c (alloc_page): If HAVE_MMAP_ANYWHERE and we're  
+       asked for one page, allocate GGC_QUIRE_SIZE of them and put
+       the extras on the free list.
+       (release_pages): Clean up.
+       (ggc_set_mark): Don't adjust G.allocated here...
+       (sweep_pages): ... do it here.
+
+2000-08-24  Zack Weinberg  <zack@wolery.cumb.org>
+
+       * cppfiles.c (read_include_file): Rearrange initializations.
+
+2000-08-24  Richard Henderson  <rth@cygnus.com>
+
+       * stmt.c (expand_asm_operands): Treat EXTRA_CONSTRAINT like g or X.
+
+       * config/ia64/ia64-protos.h: Update.
+       * config/ia64/ia64.c (gr_register_operand): New.
+       (fr_register_operand, grfr_register_operand): New.
+       (gr_nonimmediate_operand, grfr_nonimmediate_operand): New.
+       (grfr_reg_or_8bit_operand): New.
+       (gr_reg_or_0_operand): Rename from reg_or_0_operand and 
+       use gr_register_operand.
+       (gr_reg_or_5bit_operand, gr_reg_or_6bit_operand): Likewise.
+       (gr_reg_or_8bit_operand, gr_reg_or_8bit_adjusted_operand): Likewise.
+       (gr_reg_or_8bit_and_adjusted_operand): Likewise.
+       (gr_reg_or_14bit_operand, gr_reg_or_22bit_operand): Likewise.
+       (fr_reg_or_fp01_operand): Likewise.
+       (not_postinc_memory_operand): New.
+       (ia64_split_timode): Remove unused variables.
+       (rtx_needs_barrier): Check arguments to cmpxchg.
+       (builtin_description): Remove.
+       (bdesc_2argsi, bdesc_2argdi): Remove.
+       (ia64_init_builtins): Declare all builtins directly.
+       (ia64_expand_fetch_and_op): Rewrite to be called from
+       ia64_expand_builtin directly.  Use expand_binop and co.
+       (ia64_expand_op_and_fetch): Likewise.
+       (ia64_expand_compare_and_swap): Likewise.
+       (ia64_expand_binop_builtin): Remove.
+       (ia64_expand_lock_test_and_set): New.
+       (ia64_expand_lock_release): New.
+       (ia64_expand_builtin): Use them.
+       * config/ia64/ia64.h (CONSTRAINT_OK_FOR_S): New.
+       (EXTRA_CONSTRAINT): Use it.
+       (PREDICATE_CODES): Update.
+       * config/ia64/ia64.md (*): Use gr_register_operand and co.
+       (mf): Indicate that we set memory as well as use it.
+       (fetchadd_acq_si): Show memory being modified as well.
+       (fetchadd_acq_di, cmpxchg_acq_si, cmpxchg_acq_di): Likewise. 
+       (val_compare_and_swap_si, val_compare_and_swap_di): Remove.
+       (lock_test_and_set_si, lock_test_and_set_di): Remove.
+       (fetch_and_add_si, fetch_and_sub_si, fetch_and_or_si): Remove.
+       (fetch_and_and_si, fetch_and_xor_si, fetch_and_nand_si): Remove.
+       (fetch_and_add_di, fetch_and_sub_di, fetch_and_or_di): Remove.
+       (fetch_and_and_di, fetch_and_xor_di, fetch_and_nand_di): Remove.
+       (add_and_fetch_di, sub_and_fetch_di, or_and_fetch_di): Remove.
+       (and_and_fetch_di, xor_and_fetch_di, nand_and_fetch_di): Remove.
+       (add_and_fetch_si, sub_and_fetch_si, or_and_fetch_si): Remove.
+       (and_and_fetch_si, xor_and_fetch_si, nand_and_fetch_si): Remove.
+       * config/ia64/ia64intrin.h (*): Cast result to the appropriate
+       return type.  Pretty print definitions.
+
+2000-08-24  Jim Wilson  <wilson@cygnus.com>
+
+       * config/ia64/ia64.md (movdi): Don't call gen_movdi_symbolic if
+       we have a SYMBOL_REF with SYMBOL_REF_FLAG set.
+
+2000-08-24  Jason Merrill  <jason@redhat.com>
+
+       * dwarf2out.c (AT_flag, AT_int, AT_unsigned, AT_string, AT_ref,
+       AT_loc, AT_addr, AT_lbl): Abort on unsuitable input.
+       (get_AT_low_pc, get_AT_hi_pc, get_AT_string, get_AT_flag, 
+       get_AT_unsigned, get_AT_ref): Don't call them if get_AT fails.
+
+2000-08-24  Greg McGary  <greg@mcgary.org>
+
+       * optabs.c (init_optabs): Initialize fixtab, fixtrunctab, floattab,
+       and extendtab within their proper array boundaries.
+       * emit-rtl.c (init_emit_once): Pass `const_tiny_rtx' with bounds
+       for the entire array.
+
+       * config/arm/arm.c (arm_override_options): Use ARRAY_SIZE.
+       * config/alpha/alpha.c (alpha_lookup_xfloating_lib_func): Likewise.
+       * config/avr/avr.c (order_regs_for_local_alloc): Likewise.
+       * config/fr30/fr30.c (fr30_print_operand): Likewise.
+       * config/i386/dgux.c (output_options): Likewise.
+       * config/i386/dgux.h (ASM_FILE_START): Likewise.
+       * config/m88k/m88k.c (output_options): Likewise.
+       * config/m88k/m88k.h (ASM_FILE_START): Likewise.
+       * config/mcore/mcore.c (mcore_output_inline_const_forced,
+       layout_mcore_frame, handle_structs_in_regs): Likewise.
+       * config/mips/mips.c (output_block_move): Likewise.
+       * config/rs6000/rs6000.c (rs6000_override_options,
+       rs6000_file_start): Likewise.
+       * config/sparc/sparc.c (sparc_add_gc_roots): Likewise.
+       * fixinc/fixfixes.c (FIX_TABLE_CT): Likewise.
+       * fixinc/fixtests.c (TEST_TABLE_CT): Likewise.
+       * builtins.c (expand_builtin_setjmp): Likewise.
+       * expr.c (safe_from_p): Likewise.
+       * flow.c (life_analysis): Likewise.
+       * fold-const.c (size_int_type_wide): Likewise.
+       * gcc.c (translate_options, init_spec, set_spec, main): Likewise.
+       * genattrtab.c (make_length_attrs): Likewise.
+       * genopinit.c (gen_insn): Likewise.
+       * genrecog.c (NUM_KNOWN_PREDS, NUM_SPECIAL_MODE_PREDS): Likewise.
+       * global.c (global_alloc): Likewise.
+       * local-alloc.c (find_free_reg): Likewise.
+       * mips-tdump.c (print_symbol): Likewise.
+       * mips-tfile.c (parse_def, parse_input): Likewise.
+       * reload1.c (NUM_ELIMINABLE_REGS): Likewise.
+       * stmt.c (expand_nl_goto_receiver): Likewise.
+       * stor-layout.c (set_sizetype): Likewise.
+       * varasm.c (decode_reg_name): Likewise.
+       * toplev.c (decode_f_option, decode_W_option,
+       set_target_switch, print_switch_values): Likewise.
+       (NUM_ELEM): Remove macro.
+       (display_help, main): s/NUM_ELEM/ARRAY_SIZE/
+
+2000-08-24  Greg McGary  <greg@mcgary.org>
+
+       * tree.h (enum tree_index): New member `TI_MAIN_IDENTIFIER'.
+       (MAIN_NAME_P, main_identifier_node): New macros.
+       * c-common.c (c_common_nodes_and_builtins): Init main_identifier_node.
+       * c-decl.c (start_decl, grokdeclarator, start_function,
+       store_parm_decls, finish_function): Use MAIN_NAME_P.
+       * config/avr/avr.c (function_prologue, function_epilogue): Likewise.
+       * config/i386/cygwin.h (SUBTARGET_PROLOGUE): Likewise.
+       * config/i386/win32.h (SUBTARGET_PROLOGUE): Likewise.
+       * config/pdp11/pdp11.c (output_function_prologue): Likewise.
+
+2000-08-24  Greg McGary  <greg@mcgary.org>
+
+       * cppfiles.c (actual_directory): Don't write beyond `dir'
+       when it contains "".
+       * real.c (asctoeg): Stay within bounds of etens[][].
+
+2000-08-24  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * dependence.c (dependence_string, direction_string,
+       dump_one_node, dump_node_dependence): Hide unused identifiers.
+       (get_low_bound, normalize_coefficients): Match definition to
+       static prototype.
+       (get_one_coefficient): Initialize variables `value0_is_idx' and
+       `value1_is_idx'.
+       (ziv_test, gcd_test): Mark parameters with ATTRIBUTE_UNUSED.
+       (ziv_test): Delete variable `idx', use parameter `sub' instead.
+       (direction_merge): Avoid automatic aggregate initialization.
+       (have_dependence_p): Use `src' not `dest' to set `src_idx'.
+       Initialize variables `dest_idx' and `src_idx'.
+       (end_dependence_analysis): Avoid C89 style function definition.
+
+2000-08-24  Joseph S. Myers  <jsm28@cam.ac.uk>
+
+       * c-common.c (time_char_table): Don't allow width with %F.
+       (check_format_info): Don't allow "Z" length with scanf.
+
+2000-08-24  Gabriel Dos Reis  <gdr@codesourcery.com>
+
+       * diagnostic.c (finish_diagnostic): Define.
+       (output_do_printf): Use wrap_text instead of output_add_string.
+       (default_print_error_function): Avoid embedded '\n'.
+
+       * diagnostic.h (flush_diagnostic_buffer): Declare.
+
+2000-08-23  Alexandre Oliva  <aoliva@redhat.com>
+
+       * dependence.c: Replace `[][]' with `[][MAX_SUBSCRIPTS]'.
+
+2000-08-23  Hans-Peter Nilsson  <hp@axis.com>
+
+       * Makefile.in (GCC_PASSES): Add specs.
+
+2000-08-23  Jim Wilson  <wilson@cygnus.com>
+
+       * frame.h (IA64_UNW_EHANDLER, IA64_UNW_UHANDLER): New.
+       * config/ia64/frame-ia64.c (__get_personality): Return zero if neither
+       EHANDLER nor UHANDLER bit is set.
+       (__get_except_table): Likewise.
+
+2000-08-23  Nick Clifton  <nickc@redhat.com>
+
+       * config/arm/lib1funcs.asm: Replace upper case condition codes
+       with lower case versions.
+
+       * config/arm/arm.h (STRUCT_VALUE): Define.
+       (STRUCT_VALUE_REGNUM): Delete.
+
+2000-08-23  Zack Weinberg  <zack@wolery.cumb.org>
+
+       * cpphash.h (IN_I): New flag for directive table.
+       * cpplib.c (DIRECTIVE_TABLE): Mark #define, #undef, #ident, and
+       #pragma with IN_I.
+       (_cpp_check_directive): If -fpreprocessed, execute directives
+       marked with IN_I.  Issue no warnings in this case.
+       * cpplex.c (_cpp_get_token): Expand no macros if -fpreprocessed.
+
+2000-08-23  Joseph S. Myers  <jsm28@cam.ac.uk>
+
+       * c-common.c (print_char_table): Allow 'I' flag with %d, %i and
+       %u.
+       (check_format_info): Support printf 'I' flag; warn about it with
+       -pedantic.
+
+2000-08-23  Richard Earnshaw  (rearnsha@arm.com)
+
+       * arm.c (arm_expand_prologue): Ensure that the stack-adjustment
+       barrier can't be ignored by the alias analysis code.
+
+2000-08-12  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * fixinc/inclhack.def (sysv68_string): Fix the Sed script so it
+       works inside fixincl.
+
+Wed Aug 23 04:55:48 2000  Alexandre Oliva  <aoliva@redhat.com>
+
+       * simplify-rtx.c (simplify_rtx): Don't pass VOIDmode to
+       simplify_relational_operation() unless both operands are of
+       VOIDmode.
+       * cse.c (fold_rtx): Likewise.
+
+Tue Aug 22 23:53:27 EDT 2000  John Wehle  (john@feith.com)
+
+       * rtlanal.c (rtx_unstable_p): The pic register is stable
+       (within one function) and the actual rtx should be used
+       when checking the registers.
+       (rtx_addr_can_trap_p): Pic memory addresses can't trap.
+
+       * alias.c (true_dependence, write_dependence_p): Fix
+       bug in previous patch.
+
+       * i386.c (ix86_GOT_alias_set): New.
+       (legitimize_pic_address): Use it.
+
+       * rtlanal.c (rtx_unstable_p): An unchanging MEM is
+       only stable if its address is stable.
+       (rtx_varies_p): An unchanging MEM can't vary if
+       its address doesn't vary.
+
 2000-08-22  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        * c-parse.in (unop +): Restrict -Wtraditional warnings to user code.
 2000-08-22  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        * c-parse.in (unop +): Restrict -Wtraditional warnings to user code.
@@ -54,13 +1031,13 @@ Tue Aug 22 20:34:52 2000  Kaz Kojima <kkojima@rr.iij4u.or.jp>
 2000-08-22  David Edelsohn  <edelsohn@gnu.org>
 
        * aix.h (ASM_DECLARE_FUNCTION_NAME): Call named_section() or
 2000-08-22  David Edelsohn  <edelsohn@gnu.org>
 
        * aix.h (ASM_DECLARE_FUNCTION_NAME): Call named_section() or
-        text_section() as appropriate instead of emitting text csect
+       text_section() as appropriate instead of emitting text csect
        pseudo-op directly.
        (TEXT_SECTION_ASM_OP): Only require default 32-bit alignment.
        (UNIQUE_SECTION): Define macro.
        (ASM_OUTPUT_SECTION_NAME): Define macro.
        * rs6000.c (rs6000_override_options): Disable -ffunction-sections
        pseudo-op directly.
        (TEXT_SECTION_ASM_OP): Only require default 32-bit alignment.
        (UNIQUE_SECTION): Define macro.
        (ASM_OUTPUT_SECTION_NAME): Define macro.
        * rs6000.c (rs6000_override_options): Disable -ffunction-sections
-        on AIX if debugging and -fdata-sections always.
+       on AIX if debugging and -fdata-sections always.
 
 2000-08-22  Steven King  <sxking@uswest.net>
 
 
 2000-08-22  Steven King  <sxking@uswest.net>
 
@@ -74,15 +1051,17 @@ Tue Aug 22 20:34:52 2000  Kaz Kojima <kkojima@rr.iij4u.or.jp>
 
 2000-08-22  Stan Cox  <scox@redhat.com>
 
 
 2000-08-22  Stan Cox  <scox@redhat.com>
 
-        * Makefile.in (OBJS): Add dependence.o.
-        * dependence.c: New file.
-        
-2000-08-22  Alexandre Oliva  <aoliva@redhat.com>
+       * Makefile.in (OBJS): Add dependence.o.
+       * dependence.c: New file.
+       
+2000-08-22  Alexandre Oliva  <aoliva@redhat.com>, John David Anglin  <dave.anglin@nrc.ca>
 
        * calls.c (check_sibcall_argument_overlap_1): Adjust for
        ARGS_GROW_DOWNWARD.
        (check_sibcall_argument_overlap): Likewise.
 
 
        * calls.c (check_sibcall_argument_overlap_1): Adjust for
        ARGS_GROW_DOWNWARD.
        (check_sibcall_argument_overlap): Likewise.
 
+2000-08-22  Alexandre Oliva  <aoliva@redhat.com>
+
        * invoke.texi (SH Options): Document -m4-nofpu,
        -m4-single-only, -m4-single, -m4, -mbigtable, -mfmovd,
        -mhitachi, -mnomacsave, -misize, -mpadstruct, -mspace.
        * invoke.texi (SH Options): Document -m4-nofpu,
        -m4-single-only, -m4-single, -m4, -mbigtable, -mfmovd,
        -mhitachi, -mnomacsave, -misize, -mpadstruct, -mspace.
@@ -163,19 +1142,19 @@ Tue Aug 22 02:31:26 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
        Remove dead comment.
 
        * gcc.texi (The Configuration File): Document HOST_BIT_BUCKET.
        Remove dead comment.
 
        * gcc.texi (The Configuration File): Document HOST_BIT_BUCKET.
-        * system.h (HOST_BIT_BUCKET): Default to "/dev/null".
-        * config/i386/xm-dos.h (HOST_BIT_BUCKET): Define as "NUL".
-        * config/i386/xm-os2.h, config/winnt/winnt.h: Likewise.
+       * system.h (HOST_BIT_BUCKET): Default to "/dev/null".
+       * config/i386/xm-dos.h (HOST_BIT_BUCKET): Define as "NUL".
+       * config/i386/xm-os2.h, config/winnt/winnt.h: Likewise.
 
 
-        * protoize.c (munge_compile_params): Use HOST_BIT_BUCKET (if
+       * protoize.c (munge_compile_params): Use HOST_BIT_BUCKET (if
        writable) instead of hardcoded value.
 
        * toplev.c (compile_file): Output to a file even if -fsyntax-only.
 
        writable) instead of hardcoded value.
 
        * toplev.c (compile_file): Output to a file even if -fsyntax-only.
 
-        * gcc.c, config/i386/xm-dos.h, config/i386/xm-os2.h: Kill
-        MKTEMP_EACH_FILE.
+       * gcc.c, config/i386/xm-dos.h, config/i386/xm-os2.h: Kill
+       MKTEMP_EACH_FILE.
 
 
-        * gcc.c (cc1_options): Do not process -o or run the assembler if
+       * gcc.c (cc1_options): Do not process -o or run the assembler if
        -fsyntax-only.
        * objc/lang-spec.h: Likewise.
 
        -fsyntax-only.
        * objc/lang-spec.h: Likewise.
 
@@ -284,17 +1263,17 @@ Mon Aug 21 07:41:12 2000  Jeffrey A Law  (law@cygnus.com)
 
 Sun Aug 20 01:41:35 2000  Dennis Chernoivanov  <cdi@sparc.spb.su>
 
 
 Sun Aug 20 01:41:35 2000  Dennis Chernoivanov  <cdi@sparc.spb.su>
 
-        * cpplex.c (cpp_scan_buffer): Move `output_line_command' just
-        before `process_directive' so that newlines won't be missed
-        for directives.
-        (cpp_printf): Increment `print->lineno' when newline is emitted.
+       * cpplex.c (cpp_scan_buffer): Move `output_line_command' just
+       before `process_directive' so that newlines won't be missed
+       for directives.
+       (cpp_printf): Increment `print->lineno' when newline is emitted.
 
 
-        * cppmain.c (cb_ident): Likewise.
-        (cb_define): Likewise.
-        (cb_undef): Likewise.
-        (cb_include): Likewise.
-        (cb_def_pragma): Likewise.
-        (dump_macros_helper): Likewise.
+       * cppmain.c (cb_ident): Likewise.
+       (cb_define): Likewise.
+       (cb_undef): Likewise.
+       (cb_include): Likewise.
+       (cb_def_pragma): Likewise.
+       (dump_macros_helper): Likewise.
 
 2000-08-20  Richard Henderson  <rth@cygnus.com>
 
 
 2000-08-20  Richard Henderson  <rth@cygnus.com>
 
@@ -902,17 +1881,17 @@ Thu Aug 10 22:47:09 2000  Ovidiu Predescu  <ovidiu@cup.hp.com>
 
 2000-08-10  Kazu Hirata  <kazu@hxi.com>
 
 
 2000-08-10  Kazu Hirata  <kazu@hxi.com>
 
-        * h8300.c (expand_a_rotate): New.
-        (emit_a_rotate): Likewise.
-        (h8300_adjust_insn_length): Add support for the rotate insns.
-        * h8300.md (rotlqi3): New.
-        (*rotlqi3_1): Likewise.
-        (rotlhi3): Likewise.
-        (*rotlhi3_1): Likewise.
-        (rotlhi3): Likewise.
-        (*rotlhi3_1): Likewise.
-        * h8300-proto.h: Add prototypes for expand_a_rotate and
-        emit_a_rotate.
+       * h8300.c (expand_a_rotate): New.
+       (emit_a_rotate): Likewise.
+       (h8300_adjust_insn_length): Add support for the rotate insns.
+       * h8300.md (rotlqi3): New.
+       (*rotlqi3_1): Likewise.
+       (rotlhi3): Likewise.
+       (*rotlhi3_1): Likewise.
+       (rotlhi3): Likewise.
+       (*rotlhi3_1): Likewise.
+       * h8300-proto.h: Add prototypes for expand_a_rotate and
+       emit_a_rotate.
 
        * h8300.c: Fix comment typos.
        (dosize): Declare the variable amount as unsigned.
 
        * h8300.c: Fix comment typos.
        (dosize): Declare the variable amount as unsigned.
@@ -1341,8 +2320,8 @@ Sun Aug  6 00:54:42 2000  Ovidiu Predescu  <ovidiu@cup.hp.com>
 
 2000-08-05  Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
 
 
 2000-08-05  Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
 
-        * config/c4x/c4x.md (return_indirect_internal): New.
-        * config/c4x/c4x.c (c4x_expand_epilogue): Use it.
+       * config/c4x/c4x.md (return_indirect_internal): New.
+       * config/c4x/c4x.c (c4x_expand_epilogue): Use it.
 
 2000-08-04  Joseph S. Myers  <jsm28@cam.ac.uk>
 
 
 2000-08-04  Joseph S. Myers  <jsm28@cam.ac.uk>
 
@@ -1646,8 +2625,8 @@ Fri Aug  4 06:53:46 2000  Clinton Popetz  <cpopetz@cygnus.com>
 
 2000-08-03  Richard Henderson  <rth@cygnus.com>
 
 
 2000-08-03  Richard Henderson  <rth@cygnus.com>
 
-        * config/i386/i386.md (return_indirect_internal): New.
-        * config/i386/i386.c (ix86_expand_epilogue): Use it.
+       * config/i386/i386.md (return_indirect_internal): New.
+       * config/i386/i386.c (ix86_expand_epilogue): Use it.
 
 2000-08-03  Zack Weinberg  <zack@wolery.cumb.org>
 
 
 2000-08-03  Zack Weinberg  <zack@wolery.cumb.org>
 
This page took 0.058814 seconds and 5 git commands to generate.