This is the mail archive of the
gcc-regression@gcc.gnu.org
mailing list for the GCC project.
13 GCC regressions, 0 new, with your patch on 2001-04-04T06:40:04Z.
- To: gcc-regression at gcc dot gnu dot org
- Subject: 13 GCC regressions, 0 new, with your patch on 2001-04-04T06:40:04Z.
- From: "GCC regression checker" <regress at maat dot cygnus dot com>
- Date: Wed, 4 Apr 2001 08:27:14 +0000
- CC: john at feith dot com
- Reply-To: gcc-regression at gcc dot gnu dot org
With your recent patch, GCC has some regression test failures, which
used to pass. There are 0 new failures, and 13
failures that existed before and after that patch; 0 failures
have been fixed.
The old failures, which were not fixed or introduced by your patch, are:
powerpc-eabisim g++.sum g++.brendan/err-msg3.C
powerpc-eabisim g++.sum g++.law/code-gen5.C
powerpc-eabisim g++.sum g++.law/ctors17.C
powerpc-eabisim g++.sum g++.law/cvt2.C
powerpc-eabisim g++.sum g++.robertl/eb30.C
powerpc-eabisim g++.sum g++.robertl/eb33.C
powerpc-eabisim gdb.sum gdb.c++/misc.exp:
native g++.sum g++.brendan/err-msg3.C
native g++.sum g++.law/code-gen5.C
native g++.sum g++.law/ctors17.C
native g++.sum g++.law/cvt2.C
native g++.sum g++.robertl/eb30.C
native g++.sum g++.robertl/eb33.C
For more information, see <http://www.cygnus.com/~geoffk/gcc-regression/>.
--- /maat/heart/tbox/changelog_pass/gcc/ChangeLog Fri Mar 23 18:45:26 2001
+++ gcc/ChangeLog Sun Apr 1 18:30:11 2001
@@ -1,3 +1,14 @@
+2001-04-01 Alexandre Oliva <aoliva@redhat.com>
+
+ * Makefile.in (CXX_FOR_TARGET_FOR_RECURSIVE_MAKE, RECURSE_FLAGS):
+ New macros.
+ (bootstrap, cross): Use RECURSE_FLAGS.
+ * configure.in: Subst CXX_FOR_TARGET_FOR_RECURSIVE_MAKE.
+
+2001-03-27 Alexandre Oliva <aoliva@redhat.com>
+
+ * configure.in (CXX_FOR_TARGET): Use xgcc for libstdc++-v3.
+
2001-03-22 Colin Howell <chowell@redhat.com>
* Makefile.in (DO_X): Do not backslash single-quotes in
--- /maat/heart/tbox/changelog_pass/gcc/gcc/ChangeLog Tue Mar 27 16:55:15 2001
+++ gcc/gcc/ChangeLog Tue Apr 3 23:40:17 2001
@@ -1,3 +1,750 @@
+Wed Apr 4 00:45:38 EDT 2001 John Wehle (john@feith.com)
+
+ * rtl.h (set_noop_p): Declare.
+ * flow.c (set_noop_p): Move from here ...
+ * rtlanal.c (set_noop_p): ... to here and enhance.
+ * cse.c (delete_trivially_dead_insns): Use it.
+ * gcse.c (hash_scan_set): Likewise.
+ * jump.c (delete_noop_moves): Likewise.
+ * recog.c (split_all_insns): Likewise.
+
+2001-04-04 Alan Modra <alan@linuxcare.com.au>
+
+ * dwarf2out.c (dwarf2out_frame_debug_expr): Support adjusting
+ stack pointer via a LO_SUM. Ditto for setting a temp register
+ used to save to the stack. Set cfa_temp when setting fp, and
+ allow matches to cfa_temp in addition to cfa_store when saving
+ regs. Handle POST_INC and LO_SUM register stores. Document the
+ changes and errors in rule 12 doco.
+
+ * pa.c (set_reg_plus_d, store_reg, load_reg): Return last insn.
+ (actual_fsize, local_fsize, save_fregs): Move for store_reg to see.
+ (load_reg): Move closer to epilogue code.
+ (DO_FRAME_NOTES): Define to control the following..
+ (FRP): Define to set RTX_FRAME_RELATED_P on insns.
+ (hppa_expand_prologue): Use FRP and REG_FRAME_RELATED_EXPR
+ notes as necessary.
+ (hppa_expand_epilogue): Likewise.
+
+2001-04-03 Richard Henderson <rth@redhat.com>
+
+ * configure.in (gcc_cv_as_leb128): Reject gas before 2.11.
+ * configure: Rebuild.
+
+2001-04-03 Richard Henderson <rth@redhat.com>
+
+ * rtl.h (LCT_THROW): New.
+ * calls.c (emit_library_call_value_1): Handle it.
+ * except.c (connect_post_landing_pads): Use it.
+
+2001-04-03 Zack Weinberg <zackw@stanford.edu>
+
+ * gansidecl.h: Delete file.
+ * configure.in: Change all refs to gansidecl.h to use
+ ansidecl.h. Adjust *_file_list so they know where ansidecl.h
+ lives.
+ * configure: Regenerate.
+
+ * Makefile.in (intl.o): Don't depend on gansidecl.h.
+ * defaults.h: s/gansidecl.h/ansidecl.h/ in comment.
+ * ggc.h, config/fr30/fr30.h, config/mcore/mcore.c:
+ Don't include gansidecl.h.
+ * intl.c, main.c, version.c, fixinc/fixlib.h,
+ fixinc/procopen.c, fixinc/server.c: Include ansidecl.h not
+ gansidecl.h.
+
+Tue Apr 3 19:41:21 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_force_to_memory, ix86_free_from_memory):
+ Update for 64bit.
+
+2001-04-03 Zack Weinberg <zackw@stanford.edu>
+
+ * config/i386/xm-beos.h, config/i386/xm-isc.h,
+ config/i386/xm-next.h, config/i386/xm-sco.h,
+ config/i386/xm-sco5.h, config/m68k/xm-plexus.h,
+ config/m88k/xm-m88k.h: Delete.
+
+ * config/i386/xm-djgpp.h: Don't define __MSDOS__.
+ * config/romp/xm-romp.h: Don't define bcopy.
+ * config/rs6000/xm-beos.h: Don't define bcopy, HAVE_VPRINTF,
+ HAVE_PUTENV, HAVE_RENAME, or USE_C_ALLOCA.
+
+ * config.gcc: Remove references to deleted files.
+
+ 14 xm-host.h remain, 1 xm-cpu.h.
+
+2001-04-03 Jakub Jelinek <jakub@redhat.com>
+ David S. Miller <davem@pierdol.cobaltmicro.com>
+ Andrew MacLeod <amacleod@redhat.com>
+
+ Use byte offsets in SUBREGs instead of words.
+
+ * alias.c (nonlocal_mentioned_p): Use subreg_regno function.
+ * caller-save.c (mark_set_regs): Change callers of subreg_hard_regno
+ to pass new argument.
+ (add_stored_regs): Use subreg_regno_offset function.
+ * calls.c (expand_call): For non-paradoxical SUBREG take endianess
+ into account.
+ (precompute_arguments): Use gen_lowpart_SUBREG.
+ * combine.c (try_combine): Replace explicit XEXP with SUBREG_REG.
+ (combine_simplify_rtx): Rework to use SUBREG_BYTE.
+ (simplify_set): Rework to use SUBREG_BYTE.
+ (expand_field_assignment): Use SUBREG_BYTE.
+ (make_extraction): Use SUBREG_BYTE.
+ (if_then_else_cond): Use SUBREG_BYTE.
+ (apply_distributive_law): Use SUBREG_BYTE and fixup subreg comments.
+ (gen_lowpart_for_combine): Compute full byte offset.
+ * cse.c (mention_regs): Use SUBREG_BYTE.
+ (remove_invalid_subreg_refs): Rework to use SUBREG_BYTE.
+ (canon_hash): Use SUBREG_BYTE.
+ (fold_rtx): Pass SUBREG_BYTE div UNITS_PER_WORD to operand_subword.
+ (gen_lowpart_if_possible): Formatting.
+ * dbxout.c (dbxout_symbol_location): Compute SUBREG hard regnos
+ correctly.
+ * dwarf2out.c (is_pseudo_reg): Fixup explicit XEXP into SUBREG_REG
+ (mem_loc_descriptor): Fixup explicit XEXP into SUBREG_REG
+ (loc_descriptor): Fixup explicit XEXP into SUBREG_REG
+ * dwarfout.c (is_pseudo_reg): Fixup explicit XEXP into SUBREG_REG
+ (output_mem_loc_descriptor): Fixup explicit XEXP into SUBREG_REG
+ (output_loc_descriptor): Fixup explicit XEXP into SUBREG_REG
+ * emit-rtl.c (gen_rtx_SUBREG): New function, used to verify
+ certain invariants about SUBREGs the compiler creates.
+ (gen_lowpart_SUBREG): New function.
+ (subreg_hard_regno): New function to get the final register number.
+ (gen_lowpart_common): Use SUBREG_BYTE.
+ (gen_imagpart): Spacing nits.
+ (subreg_realpart_p): Use SUBREG_BYTE.
+ (gen_highpart): Use SUBREG_BYTE.
+ (subreg_lowpart_p): Always compute endian corrected goal offset,
+ even at the byte level, then compare against that.
+ (constant_subword): New function, pulled out all constant cases
+ from operand_subword and changed second argument name to offset.
+ (operand_subword): Detect non REG/SUBREG/CONCAT/MEM cases early
+ and call constant_subword to do the work. Return const0_rtx if
+ looking for a word outside of OP.
+ (operand_subword_force): Change second arg name to offset.
+ * expmed.c (store_bit_field): Use SUBREG_BYTE.
+ (store_split_bit_field): Use SUBREG_BYTE.
+ (extract_bit_field): Use SUBREG_BYTE.
+ (extract_split_bit_field): Use SUBREG_BYTE.
+ (expand_shift): Use SUBREG_BYTE.
+ * expr.c (store_expr, expand_expr): Use gen_lowpart_SUBREG.
+ * final.c (alter_subreg) Use subreg_hard_regno and SUBREG_BYTE.
+ * flow.c (set_noop_p): Use SUBREG_BYTE.
+ (mark_set_1): Remove ALTER_HARD_SUBREG. Use subreg_regno_offset instead.
+ * function.c (fixup_var_refs_1): Fixup explicit XEXP into a SUBREG_REG.
+ (fixup_memory_subreg): Use SUBREG_BYTE and remove byte endian
+ correction code.
+ (optimize_bit_field): Use SUBREG_BYTE.
+ (purge_addressof_1): Use SUBREG_BYTE.
+ (purge_single_hard_subreg_set): Use subreg_regno_offset function.
+ (assign_params): Mark arguments SUBREG_PROMOTED_VAR_P if they are
+ actually promoted by the caller and PROMOTE_FOR_CALLS_ONLY is true.
+ * gengenrtl.c (special_rtx): Add SUBREG.
+ * global.c (mark_reg_store): Use SUBREG_BYTE.
+ (set_preference): Rework to use subreg_regno_offset and SUBREG_BYTE.
+ * ifcvt (noce_emit_move_insn): Use SUBREG_BYTE.
+ * integrate.c (copy_rtx_and_substitute): Use SUBREG_BYTE and make sure
+ final byte offset is congruent to subreg's mode size.
+ (subst_constants): Use SUBREG_BYTE.
+ (mark_stores): Use subreg_regno_offset function.
+ * jump.c (rtx_renumbered_equal_p, true_regnum): Use subreg_regno_offset
+ function and SUBREG_BYTE.
+ * local-alloc.c (combine_regs): Use subreg_regno_offset function.
+ (reg_is_born): Use subreg_hard_regno.
+ * recog.c (valid_replace_rtx_1): Use SUBREG_BYTE and remove byte
+ endian correction code. Don't combine subregs unless resulting
+ offset aligns with type. Fix subreg constant extraction for DImode.
+ Simplify SUBREG of VOIDmode CONST_DOUBLE.
+ (general_operand): Remove dead mode_altering_drug code.
+ (indirect_operand): Use SUBREG_BYTE.
+ (constrain_operands): Use subreg_regno_offset function.
+ * reg-stack.c (get_true_reg): Use subreg_regno_offset function.
+ * regmove.c (regmove_optimize): Use SUBREG_BYTE.
+ (optimize_reg_copy_3): Use gen_lowpart_SUBREG.
+ * regs.h (REG_SIZE): Allow target to override.
+ (REGMODE_NATURAL_SIZE): New macro which target can override.
+ * reload.c (reload_inner_reg_of_subreg): subreg_regno should be used
+ on the entire subreg rtx.
+ (push_reload): Use SUBREG_BYTE in comments and code.
+ (find_dummy_reload): Use subreg_regno_offset. Only adjust offsets
+ for hard registers inside subregs.
+ (operands_match_p): Use subreg_regno_offset.
+ (find_reloads): Use SUBREG_BYTE and only advance offset for subregs
+ containing hard regs.
+ (find_reload_toplev): Use SUBREG_BYTE. Remove byte endian
+ corrections when fixing up MEM subregs.
+ (find_reloads_address_1): Use SUBREG_BYTE, subreg_regno, and
+ subreg_regno_offset where appropriate.
+ (find_reloads_subreg_address): Use SUBREG_BYTE. Remove
+ byte endian corrections when fixing up MEM subregs.
+ (subst_reloads): When combining two subregs, make sure final
+ offset is congruent to subreg's mode size.
+ (find_replacement): Use SUBREG_BYTE and subreg_regno_offset.
+ (refers_to_regno_for_reload_p): Use subreg_regno.
+ (reg_overlap_mentioned_for_reload_p): Use subreg_regno_offset.
+ * reload1.c (eliminate_regs) Use SUBREG_BYTE. Remove byte endian
+ correction code for memory subreg fixups.
+ (forget_old_reload_1): Use subreg_regno_offset.
+ (choose_reload_regs): Use subreg_regno.
+ (emit_input_reload_insns): Use SUBREG_BYTE.
+ (reload_combine_note_store): Use subreg_regno_offset.
+ (move2add_note_store): Use subreg_regno_offset.
+ * resource.c (update_live_status, mark_referenced_resources): Use
+ subreg_regno function.
+ (mark_set_resources): Use subreg_regno function.
+ * rtl.h (SUBREG_WORD): Rename to SUBREG_BYTE.
+ (subreg_regno_offset, subreg_regno): Define prototypes.
+ (subreg_hard_regno, constant_subword, gen_rtx_SUBREG): Newi functions.
+ (gen_lowpart_SUBREG): Add prototype.
+ * rtl.texi (subreg): Update to reflect new byte offset representation.
+ Add mentioning of the effect that BYTES_BIG_ENDIAN has on subregs now.
+ * rtlanal.c (refers_to_regno_p): Use subreg_regno.
+ (reg_overlap_mentioned_p): Use subreg_regno.
+ (replace_regs); Make sure final offset of combined subreg is
+ congruent to size of subreg's mode.
+ (subreg_regno_offset): New function.
+ (subreg_regno): New function.
+ * sched-vis.c (print_value): Change SUBREG_WORD to SUBREG_BYTE.
+ * sdbout.c (sdbout_symbol): Compute offset using alter_subreg.
+ * stmt.c (expand_anon_union_decl): Use gen_lowpart_SUBREG.
+ * tm.texi (ALTER_HARD_SUBREG): Remove, it is now dead.
+ (SUBREG_REGNO_OFFSET): Describe SUBREG_REGNO_OFFSET overrides.
+ * config/a29k/a29k.c (gpc_reg_operand): Use subreg_regno.
+ (a29k_get_reloaded_address): Use SUBREG_BYTE.
+ (print_operand): Use SUBREG_BYTE.
+ * config/alpha/alpha.c (print_operand_address): Use SUBREG_BYTE.
+ * config/arm/arm.c (arm_reload_in_hi): Use SUBREG_BYTE.
+ (arm_reload_out_hi): Use SUBREG_BYTE.
+ * config/d30v/d30v.c (d30v_split_double): Use subreg_regno_offset
+ instead of SUBREG_WORD.
+ (d30v_print_operand_memory_reference): Use subreg_regno_offset.
+ * config/dsp16xx/dsp16xx.md (extendqihi2, zero_extendqihi2): Fix
+ SUBREG creation to use byte offset.
+ * config/h8300/h8300.md (Unnamed HImode zero extraction and 16bit
+ inverted load insns): Fix explicit rtl subregs to use byte
+ offsets.
+ * config/i370/i370.md (cmpstrsi, movstrsi, mulsi3, divsi3,
+ udivsi3, umodsi3): Generate SUBREGs with byte offsets.
+ * config/i860/i860.c (single_insn_src_p): Use SUBREG_BYTE.
+ * config/i860/i860.md (mulsi3_big): Fixup explicit SUBREGs in rtl
+ to use byte offsets.
+ (unnamed fmlow.dd insn): Fixup SUBREGS to use byte offsets.
+ * config/i960/i960.md (extendhisi2): Generate SUBREGs with byte
+ offsets, also make sure it is congruent to SUBREG's mode size.
+ (extendqisi2, extendqihi2, zero_extendhisi2, zero_extendqisi2,
+ unnamed ldob insn): Generate SUBREGs with byte offset.
+ (zero_extendqihi2): SUBREG's are byte offsets.
+ * config/m68hc11/m68hc11.c (m68hc11_gen_lowpart): Use SUBREG_BYTE.
+ (m68hc11_gen_highpart): Use SUBREG_BYTE.
+ * config/m68k/m68k.md (zero_extendhisi2, zero_extendqihi2,
+ zero-extendqisi2): Generate SUBREGs with byte offset.
+ (umulsidi3, mulsidi3, subreghi1ashrdi_const32,
+ subregsi1ashrdi_const32, subreg1lshrdi_const32): Fixup explicit
+ subregs in rtl to use byte offsets.
+ * config/m88k/m88k.md (extendsidi2): fixup subregs to use byte offset.
+ * config/mips/mips.c (mips_move_1word): Use subreg_regno_offset.
+ (mips_move_2words): Use subreg_regno_offset.
+ (mips_secondary_reload_class): Use subreg_regno_offset.
+ * config/mips/mips.md (DImode plus, minus, move, and logical op
+ splits): Fixup explicit subregs in rtl to use byte offsets.
+ * config/mn10200/mn10200.c (print_operand): Use subreg_regno function.
+ * config/mn10300/mn10300.c (print_operand): Use subreg_regno function.
+ * config/ns32k/ns32k.md (udivmoddisi4): Fix explicit subregs in
+ rtl to use byte offsets.
+ * config/pa/pa.c (emit_move_sequence): Use SUBREG_BYTE.
+ * config/pa/pa.md (floatunssisf2, floatunssidf2, mulsi3): fix explicit
+ subregs to use byte offsets.
+ * config/pdp11/pdp11.md (zero_extendhisi2, modhi3, modhi3+1):
+ Fixup explicit subregs in rtl to use byte offsets.
+ * config/romp/romp.c (memory_offset_in_range_p): Use SUBREG_BYTE
+ and remove byte endian correction code.
+ * config/sh/sh.c (output_movedouble): Use subreg_regno.
+ (gen_ashift_hi): Use SUBREG_BYTE.
+ (regs_used): Use subreg_regno_offset.
+ (machine_dependent_reorg): Use subreg_regno_offset.
+ * config/sh/sh.h (INDEX_REGISTER_RTX_P): Use SUBREG_BYTE.
+ * config/sh/sh.md (DImode and DFmode move splits): Use subreg_regno.
+ (movdf_i4): Subregs are byte offsets now.
+ * config/sparc/sparc.c (ultra_find_type): Use SUBREG_BYTE.
+ * config/sparc/sparc.h (ALTER_HARD_SUBREG): Removed.
+ (REGMODE_NATURAL_SIZE): Override.
+ (REG_SIZE): For SUBREG check float mode on SUBREG_REG's mode.
+ * config/sparc/sparc.md (TFmode move splits): Generate SUBREGs
+ with byte offsets.
+ (zero_extendhisi2, zero_extendqidi2_insn, extendhisi2,
+ extendqihi2, sign_extendqihi2_insn, sign_extendqisi2_insn,
+ extendqidi2): Generate SUBREGs with byte offsets, also make sure
+ it is congruent to SUBREG's mode size.
+ (smulsi3_highpart_v8plus): Fix explicit subregs in rtl to use byte
+ offsets.
+ (cmp_siqi_trunc, cmp_siqi_trunc_set, cmp_diqi_trunc,
+ cmp_diqi_trunc_set, lshrdi3_v8plus+1, lshrdi3_v8plus+2,
+ lshrdi3_v8plus+3, lshrdi3_v8plus+4): Use proper
+ SUBREG_BYTE offset for non-paradoxical subregs in patterns.
+ * config/v850/v850.c (print_operand, output_move_double): Use
+ subreg_regno function.
+
+2001-04-03 Alexandre Oliva <aoliva@redhat.com>
+
+ * configure.in (target_subdir): Use target_alias, not target.
+ * configure: Rebuilt.
+
+ * config/sh/crtn.asm (init, fini): Restore r15 from r14, not the
+ other way round.
+ * config/sh/crti.asm: Fix typos in comments.
+
+2001-04-03 Alan Modra <alan@linuxcare.com.au>
+
+ * pa.h: Revise comments for TARGET_NO_SPACE_REGS and
+ TARGET_FAST_INDIRECT_CALLS.
+ * pa.c (override_options): TARGET_NO_SPACE_REGS is now OK with
+ -fPIC. Don't warn.
+ (return_addr_rtx): Short circuit export stub matching when
+ TARGET_NO_SPACE_REGS.
+ (output_millicode_call): For out of range calls, make -fPIC
+ take precedence, then TARGET_PORTABLE_RUNTIME, then ble. Don't
+ return before delay slot checks when TARGET_PORTABLE_RUNTIME.
+ * pa.md: Modify length attr calculation of all millicode insns to
+ match above.
+
+2001-04-02 Geoffrey Keating <geoffk@redhat.com>
+
+ * configure.in (gcc_cv_as_leb128): Correct name of cache variable.
+ Require at least 2.11 in the version test. Specifically check
+ for and reject GAS version 2.10.90.
+ * configure: regenerate.
+
+2001-04-03 Alan Modra <alan@linuxcare.com.au>
+
+ * pa.c (override_options): Remove PIC profiling warning.
+ (hp_profile_labelno): Delete.
+ (hp_profile_label_rtx): Delete.
+ (hp_profile_label_name): Delete.
+ (pa_add_gc_roots): Remove reference to hp_profile_label_rtx.
+ (output_function_prologue): Remove profiling code and all tests on
+ profile_flag. Move store of PIC_OFFSET_TABLE_REGNUM now that
+ merge_sp_adjust_with_store can work for PIC and profiling.
+ (hppa_expand_epilogue): Remove profile_flag test.
+ (hppa_can_use_return_insn_p): Likewise.
+ (hppa_init_pic_save): Emit before tail_recursion_reentry, and
+ cater for PROFILE_HOOK.
+ (hppa_profile_hook): New function.
+ * pa.h (FUNCTION_PROFILER): Now does nothing.
+ (PROFILE_HOOK): Define.
+ (hppa_profile_hook): Declare.
+ (PROFILE_BEFORE_PROLOGUE): Delete.
+ (ASM_OUTPUT_REG_PUSH): Delete.
+ (ASM_OUTPUT_REG_POP): Delete.
+ * pa.md (call_profiler): Turn it into a call insn, and don't `use'
+ r24. Accept function name operand, and use this and a locally
+ generated label to calculate pc-rel offset to func start.
+
+2001-04-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * $(HOST_PREFIX_1)errors.o, $(HOST_PREFIX_1)ggc-none.o,
+ ggc-common.o, ggc-simple.o, ggc-page.o, ggc-none.o: Depend on
+ $(SYSTEM_H).
+
+2001-04-03 Alan Modra <alan@linuxcare.com.au>
+
+ * dwarf2out.c (dwarf2out_frame_debug_expr): Move errant HIGH and
+ LO_SUM cases to where they belong.
+
+2001-04-02 Richard Henderson <rth@redhat.com>
+
+ * except.h (lang_eh_type_covers): Mark extern.
+ (lang_eh_runtime_type): Likewise.
+
+2001-04-02 Zack Weinberg <zackw@stanford.edu>
+
+ * genattr.c, gencheck.c, gencodes.c, genconfig.c, genflags.c,
+ gengenrtl.c: Wrap generated header in multiple-include guard.
+ Improve error checking.
+
+2001-04-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * configure.in: Don't check for putenv.
+ * configure: Regenerate.
+ * gcc.c (putenv): Don't define.
+ * vax/xm-vms.h: Handle putenv.
+
+2001-04-02 Jakub Jelinek <jakub@redhat.com>
+
+ * ifcvt.c (noce_emit_move_insn): New.
+ (noce_try_store_flag, noce_try_store_flag_constants,
+ noce_try_store_flag_inc, noce_try_store_flag_mask,
+ noce_try_cmove, noce_try_cmove_arith, noce_try_minmax,
+ noce_try_abs): Use it.
+ (noce_process_if_block): Likewise.
+ For STRICT_LOW_PART, take mode from its SUBREG.
+
+2001-04-02 Jakub Jelinek <jakub@redhat.com>
+
+ * fold-const.c (fold): Before optimizing unsigned comparison with
+ 0x7fffffffU, make sure arg0 is integral type.
+
+2001-04-02 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-tree.texi: Document representation of wide strings.
+
+2001-04-01 Richard Henderson <rth@redhat.com>
+
+ * except.h (expand_builtin_dwarf_fp_regnum): Declare.
+
+Sun Apr 1 11:49:05 CEST 2001 Jan Hubicka <jH@suse.cz>
+
+ * i386.md: remove obsoleted comments.
+ (adddi_?): Rename to adddi_?_rex64; disable for 32bit.
+ (x86_movsicc_0_m1_rex64): Rename to x86_movdicc_0_m1_rex64;
+ fix output template.
+
+2001-03-31 Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * config/avr/libgcc.S (__mulhi3): Optimize previous change.
+
+2001-03-30 Bernd Schmidt <bernds@redhat.com>
+
+ * loop.c (load_mems): When generating a load from a pseudo, update
+ REGNO_LAST_UID.
+
+Fri Mar 30 17:36:43 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_split_long_move): Use change address to compensate
+ stack pointer change in push instruction.
+
+Fri Mar 30 00:31:00 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (sse_movdfcc_eq): Fix constraint (sse_mov?fcc splitter): Use operands_match_p
+ instead of rtx_equal_p; fix the output template.
+
+Fri Mar 30 00:21:41 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_expand_setcc): Support 64bit.
+ (ix86_expand_int_movcc): Likewise.
+ * i386.md (movdicc_rex64, x86_movsicc_0_m1_rex64, movdicc_c_rex64):
+ New patterns.
+
+ * i386.md (allocate_stack_worker): Turn to expander.
+ (allocate_stack_worker_1, allocate_stack_worker_rex64): New insns.
+
+ * i386.c (print_reg): Do not print x86_64 style regs on IA-32
+
+2001-03-29 Richard Henderson <rth@redhat.com>
+
+ * libgcc2.c [L__main]: Include unwind-dw2-fde.h instead of frame.h.
+
+2001-03-28 Matthew Hiller <hiller@redhat.com>
+
+ * config/mn10300/mn10300.md (cmpsi): Fix first alternative's
+ output template.
+
+ * MAINTAINERS: Added self.
+
+2001-03-28 Richard Henderson <rth@redhat.com>
+
+ * Makefile.in (cs-tconfig.h): Depend on CONFIG_H, not GCONFIG_H.
+ Use ALL_CFLAGS not HOST_CFLAGS for sjlj detection.
+
+2001-03-28 Jim Wilson <wilson@redhat.com>
+
+ * config/ia64/ia64.md (movtf): Change DImode to TFmode in calls to
+ operand_subword.
+
+2001-03-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * toplev.h (fatal_error): Add ATTRIBUTE_NORETURN.
+
+ * tradcif.y (yyerror): Likewise. Add format specifier in call to
+ `error'.
+
+ * tradcpp.c (macroexpand): Likewise for call to `error_with_line'.
+
+2001-03-28 DJ Delorie <dj@redhat.com>
+
+ * Makefile.in (stage1_build): Revert CFLAGS patch.
+
+2001-03-28 Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * config/avr/libgcc.S (__mulhi3): Correct tests to exit the loop
+ when multiplier or multiplicand is zero.
+
+2001-03-28 Bernd Schmidt <bernds@redhat.com>
+
+ * cselib.c (hash_rtx): Don't do tail recursion elimination by hand.
+
+ * config/ia64/ia64.c (update_set_flags): New function, broken out of
+ rtx_needs_barrier.
+ (set_src_needs_barrier): Likewise.
+ (rtx_needs_barrier): For SET case, use these two functions. Rework
+ PARALLEL case to handle all inputs before all outputs.
+ (emit_insn_group_barriers): Call init_insn_group_barriers only if we
+ saw a label and no stop bit since then.
+ (maybe_rotate, process_epilogue): Add prototypes.
+
+2001-03-28 Richard Henderson <rth@redhat.com>
+
+ * config/rs6000/rs6000.h (EPILOGUE_USES): Use TARGET_AIX,
+ not TARGET_TOC for special toc restore handling.
+ * config/rs6000/rs6000.md (eh_return): Likewise.
+
+2001-03-28 Richard Henderson <rth@redhat.com>
+
+ * config/sparc/sparc.c (eligible_for_epilogue_delay): False if
+ current_function_calls_eh_return.
+ (output_function_epilogue): Handle eh_return.
+ * config/sparc/sparc.h (DOESNT_NEED_UNWINDER): Remove.
+ (EH_RETURN_DATA_REGNO): New.
+ (EH_RETURN_STACKADJ_RTX): New.
+ (EH_RETURN_HANDLER_RTX): New.
+ * config/sparc/sparc.md (call/short branch peepholes): Check
+ can_throw_internal instead of in_same_eh_region.
+
+ * config/rs6000/rs6000.c (rs6000_stack_info): Allocate space
+ for eh_return data registers.
+ (rs6000_emit_prologue): Save eh_return data registers.
+ (rs6000_emit_epilogue): Force inline restores if eh_return.
+ Restore eh_return data registers. Mind EH_RETURN_STACKADJ_RTX.
+ * config/rs6000/rs6000.h (rs6000_stack_t): Add ehrd_offset.
+ (EH_RETURN_DATA_REGNO, EH_RETURN_STACKADJ_RTX): New.
+ (EPILOGUE_USES): True for TOC_REGISTER if calls_eh_return and
+ the target uses one.
+ * config/rs6000/rs6000.md (eh_epilogue, eh_reg_restore): Remove.
+ (return_eh_si, return_eh_di): Remove.
+ (eh_return): New, from corpse of eh_epilogue.
+ (eh_set_lr_si, eh_set_lr_di): New.
+
+ * config/i386/i386.c (general_no_elim_operand): Disallow virtual regs.
+ (ix86_save_reg): If maybe_eh_return, true for EH_RETURN_DATA_REGNOs.
+ True for pic register if current_function_calls_eh_return.
+ (ix86_expand_epilogue): Change "emit_return" argument into "style".
+ Handle eh_return requirements.
+ * config/i386/i386.h (EH_RETURN_DATA_REGNO): New.
+ (EH_RETURN_STACKADJ_RTX): New.
+ * config/i386/i386.md (exception_receiver): Remove.
+ (eh_return, eh_return_1): New.
+ * config/i386/linux.h (MD_FALLBACK_FRAME_STATE_FOR): New.
+
+ * config/alpha/alpha.c (alpha_sa_mask): Add EH_RETURN_DATA_REGNOs.
+ (alpha_mark_machine_status): No eh_epilogue_sp_ofs ...
+ (alpha_expand_epilogue): ... use EH_RETURN_STACKADJ_RTX instead.
+ * config/alpha/alpha.h (machine_function): Remove eh_epilogue_sp_ofs.
+ (EH_RETURN_DATA_REGNO): New.
+ (EH_RETURN_STACKADJ_RTX, EH_RETURN_HANDLER_RTX): New.
+ * config/alpha/alpha.md (eh_epilogue): Remove.
+ (exception_receiver): Use $26 for ldgp input.
+ * config/alpha/linux.h (MD_FALLBACK_FRAME_STATE_FOR): New.
+
+2001-03-28 Richard Henderson <rth@redhat.com>
+
+ * except.c: Rewrite entirely for IA-64 ABI exception handling.
+ * except.h: Likewise.
+
+ * Makefile.in (LIB2ADDEH): Mention unwind-dw2*.c
+ (LIB2ADDEHDEP): New.
+ (LIB2FUNCS_EH): Remove.
+ (LIB2ADD): Remove LIB2ADDEH.
+ (libgcc.mk): Pass LIB2ADDEHDEP, don't pass LIB2FUNCS_EH.
+ (LIBGCC_DEPS): Use LIB2ADDEHDEP.
+ (crt{begin,end}[S].o): Likewise.
+ (except.o): Update includes.
+ * mklibgcc.in: Remove LIB2FUNCS_EH, add LIB2ADDEH, LIB2ADDEHDEP.
+ (libgcc2_c_dep): Use LIB2ADDEHDEP.
+
+ * basic-block.h (struct basic_block_def): Remove eh_beg, eh_end.
+ * bb-reorder.c (reorder_basic_blocks): Don't disable for EH.
+ * builtins.def (BUILT_IN_EH_RETURN_DATA_REGNO): New.
+ * builtins.c (expand_builtin): Implement it.
+ [BUILT_IN_EH_RETURN]: Update for nr arguments change.
+ * c-common.c (c_common_nodes_and_builtins): Declare it.
+ * c-decl.c (init_decl_processing): Update __builtin_eh_return.
+ * calls.c (libfunc_nothrow): Remove.
+ (emit_library_call_value_1): Don't call it.
+ * crtstuff.c: Include unwind-dw2-fde.h instead of frame.h.
+ * dwarf2.h (dwarf_call_frame_info): Add dwarf2.1 elements.
+ (DW_EH_PE_*): New defines for pointer encoding in .eh_frame.
+ * dwarf2out.c (struct dw_fde_struct): Add uses_eh_lsda, funcdef_number.
+ (current_funcdef_number): Globalize.
+ (output_call_frame_info): Emit frame data if an lsda is needed.
+ Generate augmentation for personality routine. Don't play with
+ difference symbols.
+ (dwarf2out_begin_prologue): Record funcdef_number.
+ * dwarf2out.h (current_funcdef_number): Declare.
+ * expr.c (expand_expr): Update for except.h name changes.
+ Remove POPDCC_EXPR, POPDHC_EXPR. Add EXC_PTR_EXPR.
+ * expr.h (LTI_throw, LTI_rethrow): Remove.
+ (LTI_sjthrow, LTI_sjpopnthrow, LTI_terminate): Remove.
+ (LTI_eh_rtime_match): Remove.
+ (LTI_unwind_resume, LTI_eh_personality): Add.
+ (LTI_unwind_sjlj_register, LTI_unwind_sjlj_unregister): Add.
+ * final.c (final): Don't call check_exception_handler_labels,
+ init_insn_eh_region, or free_insn_eh_region.
+ (final_scan_insn): Always emit debug labels for
+ NOTE_INSN_EH_REGION notes.
+ * flags.h (flag_new_exceptions): Remove.
+ * flow.c (entry_exit_blocks): Remove eh_beg, eh_end.
+ (record_active_eh_regions): Remove.
+ (count_basic_blocks): Check all instructions for REG_EH_REGION.
+ Use can_throw_internal.
+ (find_basic_blocks_1): Likewise.
+ (move_stray_eh_region_notes): Remove.
+ (find_label_refs): No eh_return_stub_label.
+ (make_edges): Likewise. No init/free_eh_nesting_info. Handle RESX.
+ (make_eh_edge): No eh_nest_info. Update for reachable_handlers
+ changes.
+ (delete_unreachable_blocks): Don't track deleted handlers.
+ (flow_delete_block): Use maybe_remove_eh_handler.
+ (delete_eh_regions): Remove.
+ (merge_blocks): Don't check for eh region match.
+ (mark_regs_live_at_end): Handle EH_RETURN_DATA_REGNO,
+ EH_RETURN_STACKADJ_RTX, EH_RETURN_HANDLER_RTX.
+ (init_propagate_block_info): Disable dead frame store optimization
+ when current_function_calls_eh_return.
+ (dump_bb): Don't print eh_beg, eh_end.
+ * function.c (fixup_var_refs): No catch_clauses.
+ (expand_function_end): Likewise. Call expand_eh_return before
+ the return register use. Call sjlj_emit_function_exit_after.
+ (expand_function_start): Force pseudo DECL_RESULT if sjlj exceptions.
+ * function.h (struct function): Add calls_eh_return, uses_eh_lsda.
+ * ifcvt.c (dead_or_predicable): Remove eh region check.
+ * integrate.c (function_cannot_inline_p): Disallow __builtin_eh_return.
+ Don't check for EH vs parameters.
+ (expand_inline_function_eh_labelmap, eif_eh_map): Remove.
+ (expand_inline_function): Call duplicate_eh_regions.
+ (copy_insn_list): Don't handle NOTE_INSN_EH_REGION_BEG/END.
+ (copy_insn_notes): Remap REG_EH_REGION notes.
+ (copy_rtx_and_substitute): Remove SYMBOL_REF_NEED_ADJUST check.
+ * integrate.h (struct inline_remap): Add local_return_label.
+ * jump.c (jump_optimize_1): Don't init/free_insn_eh_region, nor
+ check_exception_handler_labels, nor exception_optimize.
+ (find_cross_jump): No EH region check.
+ * optabs.c (init_optabs): Update for changed eh libfuncs.
+ * rtl.def (RESX): New.
+ * rtl.h (SYMBOL_REF_NEED_ADJUST): Remove.
+ * stmt.c (expand_decl_cleanup): Simplify using_eh_for_cleanups_p
+ checks. Update for except.h name changes.
+ (expand_cleanups): Likewise.
+ (expand_dcc_cleanup, expand_dhc_cleanup): Remove.
+ * toplev.c (dump_file_index, dump_file): Add .02.eh dump.
+ (compile_file): Call init_eh before init_optabs. Don't
+ output_exception_table here.
+ (rest_of_compilation): Call convert_from_eh_region_ranges,
+ convert_to_eh_region_ranges, output_function_exception_table.
+ Don't emit_eh_context.
+ * tree.def (POPDHC_EXPR, POPDCC_EXPR): Remove.
+ (EXC_PTR_EXPR): New.
+
+ * md.texi (eh_epilogue): Remove.
+ (eh_return): Document.
+ * tm.texi (EH_RETURN_DATA_REGNO): Document.
+ (EH_RETURN_STACKADJ_RTX, EH_RETURN_HANDLER_RTX): Document.
+
+ * eh-common.h: Remove file.
+ * frame-dwarf2.c, frame.c, frame.h: Remove files.
+ * libgcc2.c (L_eh): Remove.
+
+ * unwind-dw2-fde.c: New file, largely copied from frame.c.
+ * unwind-dw2-fde.h: New file.
+ * unwind-dw2.c: New file, largely cribbed from frame-dwarf2.c.
+ * unwind-sjlj.c, unwind.h, unwind.inc: New files.
+ * libgcc-std.ver: Update for eh symbols.
+
+2001-03-27 Richard Henderson <rth@redhat.com>
+
+ * regmove.c (perhaps_ends_bb_p): Use can_throw_internal to
+ reduce false positives.
+ (regmove_optimize): Disable if flag_non_call_exceptions.
+
+ * stmt.c (expand_return): Remove always true predicate.
+ (expand_decl_cleanup_no_eh): Remove dead code.
+
+ * sched-deps.c (sched_analyze_insn): Consolidate scheduling
+ barrier code. Add a scheduling barrier if a non-call insn
+ can throw internally.
+
+ * rtlanal.c (rtx_addr_can_trap_p): Virtual registers cannot trap.
+ Auto-inc addresses trap only if their base register does.
+
+ * except.c (can_throw_internal): Rename from can_throw.
+ * except.h, resource.c: Update references.
+
+ * integrate.c (copy_insn_list): Use returnjump_p.
+ (copy_insn_notes): Recurse for CALL_PLACEHOLDER.
+
+ * function.h (struct function): Move all boolean valued fields
+ to single bit fields at the end of the struct.
+
+ * bb-reorder.c, dwarf2out.c, except.c, except.h, flow.c,
+ jump.c, toplev.c:
+ Rename asynchronous_exceptions to flag_non_call_exceptions.
+
+ * gthr-single.h (UNUSED): New. Distinguish between how C
+ and C++ mark unused function arguments. Use throughout.
+
+ * Makefile.in (cs-tconfig.h): Copy USING_SJLJ_EXCEPTIONS
+ value to target configuration header.
+ * configure.in (CONFIG_SJLJ_EXCEPTIONS): New.
+ * config.in, configure: Rebuild.
+ * except.h (USING_SJLJ_EXCEPTIONS): New. Define based on
+ configuration and target defines.
+ (exceptions_via_longjmp): Remove.
+ * dwarf2out.c, except.c, final.c, toplev.c, config/ia64/ia64.c:
+ Use USING_SJLJ_EXCEPTIONS instead of exceptions_via_longjmp.
+
+ * except.h (flag_non_call_exceptions): Move ...
+ * flags.h: ... here.
+
+ * combine.c (distribute_notes) [REG_EH_REGION]: If non-call
+ exceptions, put the note on the trapping instruction.
+
+ * flags.h (flag_new_exceptions): Remove.
+ * toplev.c: Don't set it.
+ * final.c: Don't check it.
+ * except.c: Provide stub definition.
+
+ * flow.c (tidy_fallthru_edges): Don't combine complex edges.
+ (calculate_global_regs_live): Kill call-clobbered registers
+ across exception edges.
+ * reg-stack.c (convert_regs_1): Kill the entire target stack
+ across non-call exception edges.
+
+ * flow.c (cleanup_cfg): Take no argument.
+ * output.h, sibcall.c, toplev.c: Update all calls.
+
+2001-03-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * configure.in: Don't check for bcopy.
+ * configure, config.in: Regenerate.
+
+ * system.h: Don't define or prototype bcopy, instead poison it.
+
+2001-03-27 Richard Henderson <rth@redhat.com>
+
+ * function.c (expand_function_start): Set DECL_REGISTER on
+ a pseudo used for DECL_RESULT.
+
+ * rtl.h (LCT_NORETURN): New.
+ * calls.c (emit_library_call_value_1): Handle it.
+
+2001-03-27 Stan Shebs <shebs@apple.com>
+
+ * objc/objc-act.c (objc_init): Use dump_base_name.
+ (gen_declaration): Clear the buffer arg.
+ (gen_declaration_1): New function, body of gen_declaration.
+ (adorn_decl): Call gen_declaration_1 instead of gen_declaration.
+ (gen_method_decl): Ditto, plus always clear buffer arg.
+ (error_with_ivar): Simplify.
+ (warn_with_method): Ditto.
+ (build_message_expr): Don't clear buffers.
+ (dump_interface): Ditto.
+ (objc_debug): Ditto.
+ (build_keyword_selector): Clear the buffer by only zeroing
+ the first element.
+ (objc_implementation_context): Declare.
+ (start_class): Warn about missing @end.
+ (finish_objc): Ditto.
+
2001-03-28 John David Anglin <dave@hiauly1.hia.nrc.ca>
* reload1.c (eliminate_regs): Don't abort on MEM USEs.
@@ -4035,8 +4782,6 @@
2001-01-31 Alan Modra <alan@linuxcare.com.au>
- * (hppa_init_pic_save): Emit the pic offset table
- reg save after last_parm_insn.
* pa.c (hppa_init_pic_save): New function.
* pa.h (hppa_init_pic_save): Declare.
* pa.md (call, call_value, sibcall, sibcall_value): Use
--- /maat/heart/tbox/changelog_pass/gcc/gcc/cp/ChangeLog Tue Mar 27 16:55:16 2001
+++ gcc/gcc/cp/ChangeLog Tue Apr 3 21:55:15 2001
@@ -1,3 +1,99 @@
+2001-04-03 Mark Mitchell <mark@codesourcery.com>
+
+ * cp-tree.h (OPERATOR_ASSIGN_FORMAT): Remove.
+ (OPERATOR_FORMAT): Likewise.
+ (OPERATOR_TYPENAME_FORMAT): Likewise.
+ * operators.def: Remove old name-mangling information.
+ * decl.c (grok_op_properties): Adjust accordingly.
+ * lex.c (init_operators): Likewise.
+ * rtti.c (get_tinfo_decl): Issue error messages about types that
+ have variable size.
+
+2001-04-03 Mark Mitchell <mark@codesourcery.com>
+
+ * decl2.c (import_export_decl): Don't call import_export_class
+ when processing an inline member function.
+ * semantics.c (expand_body): Call import_export_decl before
+ emitting inline functions.
+
+2001-03-28 Richard Henderson <rth@redhat.com>
+
+ IA-64 ABI Exception Handling:
+ * cp-tree.def (EH_SPEC_BLOCK): New.
+ (MUST_NOT_THROW_EXPR): New.
+ * cp-tree.h: Update changed function declarations.
+ (CPTI_PUSH_EXCEPTION_IDENTIFIER): Remove.
+ (CPTI_CALL_UNEXPECTED): New.
+ (struct cp_language_function): Rename x_eh_spec_try_block
+ to x_eh_spec_block.
+ (EH_SPEC_STMTS, EH_SPEC_RAISES): New.
+ * decl.c (current_binding_level): If no current function
+ bindings, revert to scope_chain.
+ (initialize_predefined_identifiers): Remove __cp_push_exception.
+ (store_parm_decls): Use begin_eh_spec_block.
+ (finish_function): Use finish_eh_spec_block.
+ (mark_lang_function): Update for name changes.
+ * decl2.c (finish_file): No mark_all_runtime_matches.
+ * dump.c (cp_dump_tree): Handle new tree codes.
+ * error.c (dump_expr) [BIND_EXPR]: Fix typo.
+ * except.c (catch_language_init, catch_language): Remove.
+ (init_exception_processing): Don't set language code.
+ Initialize call_unexpected_node, protect_cleanup_actions,
+ eh_personality_libfunc, lang_eh_runtime_type.
+ (call_eh_info, push_eh_info, get_eh_info, get_eh_value): Remove.
+ (get_eh_type, get_eh_caught, get_eh_handlers): Remove.
+ (prepare_eh_type): Split out type canonicalizations ...
+ (build_eh_type_type): ... from here.
+ (build_eh_type_type_ref): Remove.
+ (mark_all_runtime_matches): Remove.
+ (build_exc_ptr): New.
+ (do_begin_catch, do_end_catch): New.
+ (do_pop_exception): Remove.
+ (build_terminate_handler): Remove.
+ (choose_personality_routine): Split out language choice from ...
+ (initialize_handler_parm): ... here.
+ Use MUST_NOT_THROW_EXPR.
+ (expand_start_catch_block): Use do_begin_catch. Simplify Java
+ exception object handling.
+ (expand_start_eh_spec, expand_end_eh_spec): Remove.
+ (expand_exception_blocks, alloc_eh_object): Remove.
+ (begin_eh_spec_block, finish_eh_spec_block): New.
+ (do_allocate_exception, do_free_exception): New.
+ (expand_throw): Merge into ...
+ (build_throw): ... here. Update for abi.
+ * expr.c (cplus_expand_expr): No expand_internal_throw.
+ Handle MUST_NOT_THROW_EXPR.
+ * pt.c (tsubst_expr): Handle EH_SPEC_BLOCK.
+ * semantics.c (*) Update for except.h name changes.
+ (genrtl_try_block): No protect_with_terminate.
+ (genrtl_eh_spec_block): New.
+ (genrtl_handler): Don't emit the goto here.
+ (cp_expand_stmt): Handle EH_SPEC_BLOCK.
+ (genrtl_finish_function): Don't expand_exception_blocks.
+ * tree.c (cp_statement_code_p): Handle EH_SPEC_BLOCK.
+
+2001-03-28 Richard Henderson <rth@redhat.com>
+
+ * decl.c (struct named_label_list): Rename eh_region to
+ in_try_scope, add in_catch_scope.
+ (struct binding_level): Rename eh_region to is_try_scope,
+ add is_catch_scope.
+ (note_level_for_try): Rename from note_level_for_eh.
+ (note_level_for_catch): New.
+ (poplevel): Copy both is_try_scope and is_catch_scope to
+ the named_label_list struct.
+ (check_previous_goto_1): Don't check for catch block via
+ DECL_ARTIFICIAL; use in_try_scope instead.
+ (check_goto): Likewise.
+ * cp-tree.h (note_level_for_try, note_level_for_catch): Declare.
+ * except.c (expand_start_catch_block): Call note_level_for_catch.
+ * semantics.c (begin_compound_stmt): Update for note_level_for_try.
+
+2001-03-27 Richard Henderson <rth@redhat.com>
+
+ * except.c: Use USING_SJLJ_EXCEPTIONS instead of
+ exceptions_via_longjmp.
+
2001-03-27 Phil Edwards <pme@sources.redhat.com>
* pt.c (check_default_tmpl_args): Make error messages clearer.
--- /maat/heart/tbox/changelog_pass/gcc/gcc/f/ChangeLog Tue Mar 27 15:10:19 2001
+++ gcc/gcc/f/ChangeLog Tue Apr 3 03:00:20 2001
@@ -1,3 +1,13 @@
+2001-04-02 Jakub Jelinek <jakub@redhat.com>
+
+ * lex.c (ffelex_hash_): Avoid eating one whole line after
+ #line.
+
+Mon Apr 2 22:38:09 2001 Toon Moene <toon@moene.indiv.nluug.nl>
+
+ * com.c (duplicate_decls): Fix thinko in lazy DECL_RTL patch
+ of 2001-03-04.
+
Tue Mar 27 17:40:08 2001 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* Make-lang.in: Depend on $(SYSTEM_H), not system.h.
--- /maat/heart/tbox/changelog_pass/gcc/gcc/java/ChangeLog Tue Mar 27 15:10:20 2001
+++ gcc/gcc/java/ChangeLog Tue Apr 3 18:25:14 2001
@@ -1,3 +1,102 @@
+2001-04-03 Zack Weinberg <zackw@stanford.edu>
+
+ * Make-lang.in (buffer.o, check-init.o, class.o): Don't depend
+ on gansidecl.h.
+ * buffer.c, jvgenmain.c: Don't include gansidecl.h.
+
+2001-04-02 Zack Weinberg <zackw@stanford.edu>
+
+ * expr.c (pop_type_0): Save the result of the first
+ lang_printable_name call in a scratch buffer, so it
+ won't be clobbered by the second call.
+
+2001-03-28 Hans Boehm <boehm@acm.org>
+
+ * boehm.c (PROCEDURE_OBJECT_DESCRIPTOR): Set to use `build_int_2.'
+ (get_boehm_type_descriptor): Set type on returned value to be a
+ pointer length integer.
+
+2001-03-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * expr.c (pop_type_0): Call `concat' rather than building the
+ string manually.
+ (pop_type): Add format specifier in call to `error'.
+
+ * parse.y (patch_method_invocation): Avoid casting away
+ const-ness.
+
+2001-03-28 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * jvgenmain.c (do_mangle_classname): End string constant with '\0'.
+
+2001-03-28 Richard Henderson <rth@redhat.com>
+
+ IA-64 ABI Exception Handling:
+ * Make-lang.in (except.o): Don't depend on eh-common.h.
+ * check-init.c (check_init): Handle EXC_PTR_EXPR.
+ * decl.c (init_decl_processing) [throw_node]: No _Jv_Sjlj_Throw.
+ [soft_exceptioninfo_call_node]: Remove.
+ [eh_personality_libfunc, lang_eh_runtime_type]: New.
+ (end_java_method): No emit_handlers.
+ * except.c (java_set_exception_lang_code): Remove.
+ (method_init_exceptions): Don't call it.
+ (prepare_eh_table_type): No CATCH_ALL_TYPE.
+ (build_exception_object_ref): New.
+ (expand_end_java_handler): Update for except.h name changes.
+ (emit_handlers, expand_resume_after_catch): Remove.
+ * expr.c (java_lang_expand_expr): Update for except.h name changes.
+ (process_jvm_instruction): Use build_exception_object_ref.
+ * java-tree.h (JTI_SOFT_EXCEPTIONINFO_CALL_NODE): Remove.
+ (soft_exceptioninfo_call_node): Remove.
+ (build_exception_object_ref): Declare.
+ * jcf-write.c (generate_bytecode_insns) [CALL_EXPR]: No
+ soft_exceptioninfo_call_node. Move processing ...
+ [EXC_PTR_EXPR]: ... here.
+ * parse.h (BUILD_ASSIGN_EXCEPTION_INFO): Remove dead code.
+ * parse.y (catch_clause_parameter): Use build_exception_object_ref.
+ (source_end_java_method): No java_set_exception_lang_code or
+ emit_handlers.
+ (build_dot_class_method): Use build_exception_object_ref.
+ (try_reference_assignconv): Check EXC_PTR_EXPR not
+ soft_exceptioninfo_call_node.
+
+2001-03-28 Richard Henderson <rth@redhat.com>
+
+ * java-tree.h (throw_node): Define as a single member of
+ java_global_trees instead of a separate array.
+ (JTI_THROW_NODE): New.
+ * decl.c (throw_node): Don't declare.
+ (init_decl_processing): Init a scalar throw_node.
+ Don't register it for gc.
+ * check-init.c (check_init): Reference scalar throw_node.
+ * expr.c (build_java_athrow): Likewise.
+ * jcf-write.c (generate_bytecode_insns): Likewise.
+ * parse.h (BUILD_THROW): Likewise.
+
+2001-03-28 Richard Henderson <rth@redhat.com>
+
+ * decl.c (end_java_method): Do not save and restore
+ flag_non_call_exceptions.
+ * parse.y (source_end_java_method): Likewise.
+ * lang.c (flag_exceptions): Don't declare.
+ (java_init_options): Set flag_non_call_exceptions. Set
+ flag_exceptions here ...
+ (java_init): ... not here.
+
+2001-03-27 Richard Henderson <rth@redhat.com>
+
+ * expr.c, parse.h: Use USING_SJLJ_EXCEPTIONS instead of
+ exceptions_via_longjmp.
+
+ * lang.c (flag_new_exceptions): Don't declare it.
+ (java_init_options): Or set it.
+
+2001-03-27 Richard Henderson <rth@redhat.com>
+
+ * decl.c (end_java_method): Rename asynchronous_exceptions to
+ flag_non_call_exceptions.
+ * parse.y (source_end_java_method): Likewise.
+
2001-03-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
**** TRUNCATED ****