Andreas Jaeger [Mon, 17 Dec 2001 08:22:50 +0000 (09:22 +0100)]
* c-common.def: Fix typo in comment.
From-SVN: r48096
GCC Administrator [Mon, 17 Dec 2001 08:16:12 +0000 (08:16 +0000)]
Daily bump.
From-SVN: r48094
David O'Brien [Mon, 17 Dec 2001 07:33:07 +0000 (07:33 +0000)]
config.gcc (sparc64-*-freebsd*): Add target.
2001-12-16 David O'Brien <obrien@FreeBSD.org>
* config.gcc (sparc64-*-freebsd*): Add target.
* config/sparc/freebsd.h: New file.
* config/sparc/sparc.h (LIB_SPEC, LINK_SPEC): Don't define.
* config/sparc/sunos4.h (LIB_SPEC, LINK_SPEC): Define.
* config/sparc/sysv4.h (CPP_PREDEFINES): Undefine before defining.
Approved by: Richard Henderson <rth@redhat.com>
Message-ID: <
20011215175143.A8758@redhat.com>
From-SVN: r48093
Aldy Hernandez [Mon, 17 Dec 2001 06:52:09 +0000 (06:52 +0000)]
fix spaces
From-SVN: r48092
Aldy Hernandez [Mon, 17 Dec 2001 06:41:56 +0000 (06:41 +0000)]
rs6000.c (rs6000_legitimize_address): Force both PLUS operands into registers for altivec mode.
* config/rs6000/rs6000.c (rs6000_legitimize_address): Force both
PLUS operands into registers for altivec mode.
From-SVN: r48091
Aldy Hernandez [Mon, 17 Dec 2001 06:12:34 +0000 (06:12 +0000)]
* builtins.c (apply_args_size): Change regno to unsigned.
From-SVN: r48090
Aldy Hernandez [Mon, 17 Dec 2001 05:37:05 +0000 (05:37 +0000)]
rs6000.h (FUNCTION_ARG_REGNO_P): Change ALTIVEC_ARG_MAX_REG to ALTIVEC_ARG_NUM_REG.
2001-12-16 Aldy Hernandez <aldyh@redhat.com>
* rs6000.h (FUNCTION_ARG_REGNO_P): Change ALTIVEC_ARG_MAX_REG to
ALTIVEC_ARG_NUM_REG.
From-SVN: r48089
Zack Weinberg [Mon, 17 Dec 2001 04:43:03 +0000 (04:43 +0000)]
c-typeck.c (error_init, [...]): Call gettext on argument before printing.
* c-typeck.c (error_init, pedwarn_init, warning_init): Call
gettext on argument before printing.
* fold-const.c (negate_expr): Always call fold on new
NEGATE_EXPR.
From-SVN: r48088
Zack Weinberg [Mon, 17 Dec 2001 04:19:08 +0000 (04:19 +0000)]
c-typeck.c (error_init, [...]): Call gettext on argument before printing.
* c-typeck.c (error_init, pedwarn_init, warning_init): Call
gettext on argument before printing.
* fold-const.c (negate_expr): Always call fold on new
NEGATE_EXPR.
From-SVN: r48087
Jeff Sturm [Mon, 17 Dec 2001 03:24:50 +0000 (03:24 +0000)]
dyn_load.c: Define ElfW (if needed) for all targets, not just GNU/Linux.
* dyn_load.c: Define ElfW (if needed) for all targets,
not just GNU/Linux.
(GC_FirstDLOpenedLinkMap): Use it.
(GC_register_dynamic_libraries_dl): Use it.
* include/private/gcconfig.h: Define CPP_WORDSZ, ELF_CLASS
for sparcv9.
From-SVN: r48086
Joseph Myers [Mon, 17 Dec 2001 01:18:41 +0000 (01:18 +0000)]
re PR c/5105 (compound literal patch broken with inlining)
* c-common.def (COMPOUND_LITERAL_EXPR): Contain a DECL_STMT, not
a DECL directly.
* c-common.h (COMPOUND_LITERAL_EXPR_DECL_STMT): New.
(COMPOUND_LITERAL_EXPR_DECL): Adjust definition.
* c-decl.c (build_compound_literal): Put the decl inside a
DECL_STMT.
* doc/c-tree.texi (COMPOUND_LITERAL_EXPR): Update documentation.
Fixes PR c/5105.
testsuite:
* gcc.c-torture/compile/
20011217-1.c: New test.
From-SVN: r48085
Aldy Hernandez [Mon, 17 Dec 2001 00:00:35 +0000 (00:00 +0000)]
* config.gcc: Add powerpc-*-eabisimaltivec*.
From-SVN: r48084
Tom Tromey [Sun, 16 Dec 2001 22:53:02 +0000 (22:53 +0000)]
re PR java/5088 (Can't create a java.lang.Object from CNI)
* mangle.c (mangle_method_decl): Never emit `C2' constructor.
Fixes PR java/5088.
From-SVN: r48083
Tom Tromey [Sun, 16 Dec 2001 22:33:02 +0000 (22:33 +0000)]
For PR libgcj/5103:
* include/jvm.h (__GCJ_JNI_IMPL__): Define.
* include/config.h.in: Rebuilt.
* configure: Rebuilt.
* configure.in: Define JV_HAVE_INTTYPES_H if inttypes.h found.
Added comment for HAVE_DLOPEN to avoid autoheader error.
* gcj/libgcj-config.h.in (JV_HAVE_INTTYPES_H): Added.
* include/jni.h: Include <gcj/libgcj-config.h>. Don't include
CNI-specific headers if we are compiling ordinary JNI code with a
C++ compiler. Include <inttypes.h> and JNIWeakRef.h when
appropriate.
* jni.cc: Don't include JNIWeakRef.h.
From-SVN: r48082
Tom Tromey [Sun, 16 Dec 2001 22:28:35 +0000 (22:28 +0000)]
For PR java/5088:
* java/lang/natClassLoader.cc (_Jv_InitNewClassFields): New
function.
(_Jv_NewClass): Use it.
(defineClass0): Use it.
* prims.cc (_Jv_InitPrimClass): Adjust vtable here.
(_Jv_InitPrimClass): Use _Jv_InitNewClassFields.
(_Jv_NewArray): Don't abort; just throw exception.
Include InternalError.h.
* java/lang/Class.h (Class::Class): Declare, don't define.
(Class): Declare _Jv_InitNewClassFields as a friend.
(union _Jv_Self): Removed.
From-SVN: r48081
Tom Tromey [Sun, 16 Dec 2001 22:25:14 +0000 (22:25 +0000)]
Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
* Makefile.am (ordinary_java_source_files): Removed old file;
added new file.
* gnu/java/math/MPN.java: New file.
* gnu/gcj/math/MPN.java: Removed.
* java/math/BigInteger.java: Merged with Classpath.
From-SVN: r48080
Neil Booth [Sun, 16 Dec 2001 20:42:54 +0000 (20:42 +0000)]
c-common.c, c-common.h (back_end_hook): Remove.
* c-common.c, c-common.h (back_end_hook): Remove.
* c-lang.c (finish_file): Remove back_end_hook.
cp:
* decl2.c (finish_file): Remove back_end_hook.
From-SVN: r48079
Paolo Carlini [Sun, 16 Dec 2001 20:21:20 +0000 (21:21 +0100)]
assign.cc (test01): Add tests.
2001-12-16 Paolo Carlini <pcarlini@unitus.it>
* testsuite/21_strings/assign.cc (test01): Add tests.
From-SVN: r48078
Richard Kenner [Sun, 16 Dec 2001 18:19:34 +0000 (18:19 +0000)]
expr.c (highest_pow2_factor, [...]): Fix error in last change.
* expr.c (highest_pow2_factor, case INTEGER_CST): Fix error in
last change.
From-SVN: r48077
Richard Henderson [Sun, 16 Dec 2001 16:47:00 +0000 (08:47 -0800)]
toplev.c (parse_options_and_default_flags): Don't enable flag_cprop_registers at -O1.
* toplev.c (parse_options_and_default_flags): Don't enable
flag_cprop_registers at -O1.
From-SVN: r48076
Joseph Myers [Sun, 16 Dec 2001 16:23:50 +0000 (16:23 +0000)]
ChangeLog, [...]: Fix spelling errors.
* ChangeLog, Make-lang.in, class.c, expr.c, gcj.texi, java-tree.h,
jcf-parse.c, jcf-write.c, lex.c, parse.h, parse.y, verify.c: Fix
spelling errors.
From-SVN: r48075
Joseph Myers [Sun, 16 Dec 2001 16:10:10 +0000 (16:10 +0000)]
* news.texi: Fix spelling errors.
From-SVN: r48074
Kaveh R. Ghazi [Sun, 16 Dec 2001 16:09:06 +0000 (16:09 +0000)]
avr.c (avr_simplify_comparision_p, [...]): Don't use the 'U' suffix.
* avr.c (avr_simplify_comparision_p, adjust_insn_length,
mask_one_bit_p, output_reload_insisf): Don't use the 'U' suffix.
* avr.h (reg_class): Likewise.
* avr.md: Likewise.
* mcore.c (try_constant_tricks, mcore_byte_offset,
mcore_halfword_offset): Likewise.
* sh.c (shl_sext_kind, gen_block_redirect, split_branches): Likewise.
* v850.c (not_power_of_two_operand): Likewise.
From-SVN: r48073
Joseph Myers [Sun, 16 Dec 2001 16:07:01 +0000 (16:07 +0000)]
ChangeLog.1, [...]: Fix spelling errors.
* ChangeLog.1, ChangeLog.2, ChangeLog, NEWS, call.c, class.c,
cp-tree.h, decl.c, decl2.c, except.c, operators.def, optimize.c,
pt.c, rtti.c, semantics.c, typeck.c: Fix spelling errors.
From-SVN: r48072
Kaveh R. Ghazi [Sun, 16 Dec 2001 15:43:41 +0000 (15:43 +0000)]
clix.h (ASM_OUTPUT_ASCII): Avoid signed/unsigned warnings.
* clipper/clix.h (ASM_OUTPUT_ASCII): Avoid signed/unsigned
warnings.
* convex.h (ASM_OUTPUT_ASCII): Likewise.
* i370.h (ASM_OUTPUT_ASCII): Likewise.
* i386/att.h (ASM_OUTPUT_ASCII): Likewise.
* i386/i386-interix.h (ASM_OUTPUT_ASCII): Likewise.
* i386/i386elf.h (ASM_OUTPUT_ASCII): Likewise.
* i386/ptx4-i.h (ASM_OUTPUT_ASCII): Likewise.
* i386/sco5.h (ASM_OUTPUT_ASCII): Likewise.
* i386/sun386.h (ASM_OUTPUT_ASCII): Likewise.
* i386/sysv4.h (ASM_OUTPUT_ASCII): Likewise.
* i860/bsd.h (ASM_OUTPUT_ASCII): Likewise.
* m68k/3b1.h (ASM_OUTPUT_ASCII): Likewise.
* m68k/amix.h (ASM_OUTPUT_ASCII): Likewise.
* m68k/atari.h (ASM_OUTPUT_ASCII): Likewise.
* m68k/crds.h (ASM_OUTPUT_ASCII): Likewise.
* m68k/hp320.h (ASM_OUTPUT_ASCII): Likewise.
* m68k/m68kv4.h (ASM_OUTPUT_ASCII): Likewise.
* m68k/mot3300.h (ASM_OUTPUT_ASCII): Likewise.
* m68k/sgs.h (ASM_OUTPUT_ASCII): Likewise.
* m68k/tower-as.h (ASM_OUTPUT_ASCII): Likewise.
* mips/bsd-5.h (ASM_OUTPUT_ASCII): Likewise.
* mips/mips-5.h (ASM_OUTPUT_ASCII): Likewise.
* mips/svr3-5.h (ASM_OUTPUT_ASCII): Likewise.
* mips/svr4-5.h (ASM_OUTPUT_ASCII): Likewise.
* ns32k/encore.h (ASM_OUTPUT_ASCII): Likewise.
* vax/vaxv.h (ASM_OUTPUT_ASCII): Likewise.
* we32k/we32k.h (ASM_OUTPUT_ASCII): Likewise.
From-SVN: r48071
Kaveh R. Ghazi [Sun, 16 Dec 2001 15:40:58 +0000 (15:40 +0000)]
uwin.h (MD_STARTFILE_PREFIX): Avoid redefinition warnings.
* i386/uwin.h (MD_STARTFILE_PREFIX): Avoid redefinition warnings.
* interix.h (TARGET_MEM_FUNCTIONS): Likewise.
* psos.h (CPP_PREDEFINES): Likewise.
* rs6000/linux64.h (ROUND_TYPE_ALIGN): Likewise.
* rs6000/xcoff.h (RS6000_MCOUNT, RS6000_ITRUNC, RS6000_UITRUNC,
ASM_OUTPUT_EXTERNAL): Likewise.
* sparc/liteelf.h (DWARF_DEBUGGING_INFO, DWARF2_DEBUGGING_INFO):
Likewise.
* sparc/sp64-elf.h (UNALIGNED_DOUBLE_INT_ASM_OP): Likewise.
* sparc/sp86x-elf.h (DWARF_DEBUGGING_INFO, DWARF2_DEBUGGING_INFO):
Likewise.
* sparc/sunos4.h (SUNOS4_SHARED_LIBRARIES): Likewise.
From-SVN: r48070
Kaveh R. Ghazi [Sun, 16 Dec 2001 15:38:28 +0000 (15:38 +0000)]
Make-lang.in (f/version.o): Depend on f/version.h.
* Make-lang.in (f/version.o): Depend on f/version.h.
* version.c: Include ansidecl.h and f/version.h.
From-SVN: r48069
Kaveh R. Ghazi [Sun, 16 Dec 2001 13:58:07 +0000 (13:58 +0000)]
c-lex.c (lex_number): Use ISXDIGIT/hex_value.
* c-lex.c (lex_number): Use ISXDIGIT/hex_value.
* vax/xm-vms.h (FILE_NAME_NONDIRECTORY): Use ISUPPER/TOLOWER.
* fold-const.c (real_hex_to_f): Use hex_value.
* real.c (asctoeg): Use hex_value & ISXDIGIT.
* toplev.c (toplev_main): Call hex_init.
* tradcpp.c (main): Call hex_init.
From-SVN: r48068
Kaveh R. Ghazi [Sun, 16 Dec 2001 13:42:53 +0000 (13:42 +0000)]
nextstep-protos.h: New file.
* nextstep-protos.h: New file.
* nextstep.c: Include "rtl.h", "output.h" & "tm_p.h".
* nextstep.h (INCLUDE_DEFAULTS): Delete LOCAL_INCLUDE_DIR and
STANDARD_INCLUDE_DIR from the CROSS_COMPILE clause.
(nextstep_asm_out_constructor, nextstep_asm_out_destructor,
handle_pragma): Move prototypes to nextstep-protos.h.
* config.gcc (i[34567]86-next-*, m68k-next-nextstep2*,
m68k-next-nextstep[34]*): Append nextstep-protos.h to tm_p_file.
From-SVN: r48067
GCC Administrator [Sun, 16 Dec 2001 08:16:42 +0000 (08:16 +0000)]
Daily bump.
From-SVN: r48066
Craig Rodrigues [Sun, 16 Dec 2001 07:21:17 +0000 (07:21 +0000)]
re PR other/3725 (changed to configure.in's for autoconf 2.50)
2001-12-16 Craig Rodrigues <rodrigc@gcc.gnu.org>
PR other/3725
* configure.in: Add AC_SUBST(target_alias).
* configure: Regenerated.
From-SVN: r48064
Craig Rodrigues [Sun, 16 Dec 2001 07:12:04 +0000 (07:12 +0000)]
re PR other/3725 (changed to configure.in's for autoconf 2.50)
2001-12-16 Craig Rodrigues <rodrigc@gcc.gnu.org>
PR other/3725
* configure.in: Add AC_SUBST(target_alias).
* configure: Regenerated.
From-SVN: r48063
Bryce McKinlay [Sun, 16 Dec 2001 06:09:46 +0000 (06:09 +0000)]
decl.c (java_init_decl_processing): Build otable_type correctly.
* decl.c (java_init_decl_processing): Build otable_type correctly.
otable_decl is an otable_type.
From-SVN: r48062
Richard Henderson [Sun, 16 Dec 2001 05:40:26 +0000 (21:40 -0800)]
alpha.md (sibcall_osf_1_er): New.
* config/alpha/alpha.md (sibcall_osf_1_er): New.
(sibcall_value_osf_1_er): New.
From-SVN: r48061
Richard Henderson [Sun, 16 Dec 2001 04:46:34 +0000 (20:46 -0800)]
* sem_ch7.adb: Wrap comment.
From-SVN: r48060
Dan Nicolaescu [Sun, 16 Dec 2001 02:26:58 +0000 (02:26 +0000)]
sparc.c (mems_ok_for_ldd_peep): Rename from addrs_ok_for_ldd_peep_withmem...
* config/sparc/sparc.c (mems_ok_for_ldd_peep): Rename from
addrs_ok_for_ldd_peep_withmem; take MEMs as parameters, not
addrs; eliminate restriction of only using fp and sp as base
registers.
* config/sparc/sparc-protos.h: Update.
* config/sparc/sparc.md (movdi): Use TARGET_V9 not TARGET_ARCH64.
(*cmp_cc_set, *cmp_ccx_set64, *movdi_zero): New insns derived
from old define_peepholes.
Convert all the ldd/std peepholes to peephole2.
From-SVN: r48059
Ulrich Weigand [Sun, 16 Dec 2001 01:48:16 +0000 (01:48 +0000)]
s390.md (prologue, [...]): New.
* s390.md (prologue, epilogue, *return_si, *return_di): New.
s390.c (find_unused_clobbered_reg, s390_frame_info,
save_fpr, restore_fpr, s390_emit_prologue, s390_emit_epilogue): New.
s390-protos.h (s390_emit_prologue, s390_emit_epilogue): Declare.
s390.c (s390_arg_frame_offset): Use s390_frame_info.
(leaf_function_flag, cur_is_leaf_function,
save_fprs, restore_fprs, force_const_mem_late): Remove.
(s390_function_prologue, s390_function_epilogue): Mostly remove.
s390.md (lit): New. Uses ...
s390.c (s390_output_constant_pool): ... this, so adapt and make global.
s390-protos.h (s390_output_constant_pool): Declare.
s390.md (load_multiple, store_multiple): Allow use after reload.
s390.c (load_multiple_operation, store_multiple_operation): Likewise.
s390.h (INCOMING_FRAME_SP_OFFSET): Define.
s390.h (CALL_REALLY_USED_REGISTERS): Define.
config/s390/linux64.h (CALL_USED_REGISTERS): Remove, now handled ...
s390.h (CONDITIONAL_REGISTER_USAGE): ... here.
s390.c (s390_sr_alias_set): New global variable, initialized ...
(override_options): ... here. New.
s390-protos.h (override_options): Declare.
s390.h (OVERRIDE_OPTIONS): Call it.
s390.c (s390_function_profiler): New.
s390-protos.h (s390_function_profiler): Declare.
s390.h (FUNCTION_PROFILER): Call it.
s390.c (s390_profile): Remove.
* s390.c (reg_used_in_mem_p): PC reload counts as memory access.
(addr_generation_dependency_p): Consider literal pool register loads.
(s390_adjust_priority): Do not schedule load_multiple.
s390.md (attribute "type"): Define some additional types.
(function_unit "integer"): Adapt.
(many insns): Adapt "type" attribute setting.
* s390.c (general_s_operand, s_imm_operand): New.
(s_operand): Remove old definition, call general_s_operand instead.
s390-protos.h (s_imm_operand): Declare.
s390.c (base_n_index_p, r_or_s_operand, r_or_s_or_im8_operand,
r_or_x_or_im16_operand, r_or_im8_operand): Remove.
s390-protos.h (r_or_s_operand, r_or_s_or_im8_operand,
r_or_x_or_im16_operand, r_or_im8_operand): Likewise.
s390.h (PREDICATE_CODES): Add s_imm_operand, remove r_or_s*_operand.
s390.md (many insns): Rework insn predicates.
* s390.c (legitimate_pic_operand_p, legitimate_constant_p): Accept all
non-symbolic constants. Reload will force them because of ...
(s390_preferred_reload_class): ... this. New.
s390-protos.h (s390_preferred_reload_class): Declare.
s390.h (PREFERRED_RELOAD_CLASS): Call it.
s390.md (movdi, movsi, movdf, movsf, *reload_la_64 splitters,
*reload_la_31 splitters): Handle constants after reload.
(many insns): no longer force all constants immediately.
s390.c (legitimate_reload_constant_p): New helper routine.
s390-protos.h (legitimate_reload_constant_p): Declare.
s390.c (print_operand): Clean up CONST_INT case, add CONST_DOUBLE case.
* s390.h (FIRST_PSEUDO_REGISTER, FRAME_POINTER_REGNUM,
HARD_FRAME_POINTER_REGNUM, REGISTER_NAMES): Add virtual frame pointer.
(CALL_USED_REGISTERS, CALL_REALLY_USED_REGISTERS): Update.
(ELIMINABLE_REGS, INITIAL_ELIMINATION_OFFSET): Likewise.
(REGNO_OK_FOR_INDEX_P, REG_OK_FOR_INDEX_NONSTRICT_P): Likewise.
(DWARF_FRAME_REGISTERS): Define.
s390.c (regclass_map): Add virtual frame pointer.
(legitimate_la_operand_p): Allow use of virtual frame pointer.
s390.md (*la_ccclobber, *addaddr_ccclobber): New.
(addaddr, addsi_64): Delete.
* s390.h (HARD_REGNO_MODE_OK): Allow SImode and DImode values in
floating point registers.
(CLASS_CANNOT_CHANGE_MODE, CLASS_CANNOT_CHANGE_MODE_P): Define.
(ADDR_FP_REGS, GENERAL_FP_REGS): New register classes.
(REG_CLASS_NAMES, REG_CLASS_CONTENTS): Update.
* s390.md (movti): Replace multi-insn output with splitters.
(movdi_31, movdf_31): Likewise.
(movti_ss, movdi_ss, movsi_ss, movdf_ss, movsf_ss): New.
(movdi_lhi, movdi_lli, movdi_larl, movsi_lhi, movsi_lli): New.
(movdi_64, movdi_31, movsi, movdf_64, movdf_31): Adapt.
(movdf_soft_64, movdf_soft_31, movsf_soft): Remove.
(movsf_64, movsf_31): Remove, replace by ...
(movsf): ... this.
(movqi_64): Use lhi instead of llill.
(*movstrictqi, *movstricthi): Don't use (strict_low_part (mem)).
* s390.md (extendsidi2, *extendsidi2, extendhidi2, *extendhidi2,
extendqidi2, extendhisi2, *extendhisi2, extendqisi2,
extendqihi2 and associated splitters): Reworked.
(zero_extendsidi2, zero_extendsidi2, *zero_extendsidi2,
zero_extendhidi2, *zero_extendhidi2, zero_extendqidi2,
zero_extendqidi2, *zero_extendqidi2, zero_extendhisi2,
*zero_extendhisi2_64, zero_extendhisi2_31, zero_extendqisi2,
*zero_extendqisi2_64, *zero_extendqisi2_mem_31,
zero_extendqisi2_reg_31, zero_extendqihi2, *zero_extendqisi2_64,
zero_extendqihi2, zero_extendqihi2_64, zero_extendqihi2_31,
and associated splitters): Likewise.
(*sethighqisi, *sethighhisi, *sethighqidi_64, *sethighqidi_31
and associated splitters): New.
(truncdisi2, truncdihi2, truncdiqi2, truncsihi2, do_truncsihi2,
*truncsihi2_64, truncsiqi2, trunchiqi2): Remove.
(ashlhi3, ashrhi3, lshrhi3, abshi3): Remove.
s390.h (PROMOTE_PROTOTYPES): Remove.
config/s390/linux64.h (PROMOTE_PROTOTYPES): Likewise.
* s390.md (muldi3): Delete, use instead ...
(mulsidi3): ... this.
(*muldi3_64): Rename to muldi3.
(mulsi_6432): Fix template.
(divdi3, moddi3): Delete, replace by ...
(divmoddi4): ... this.
(divmodtidi3): Fix template.
(divmodtisi3): New.
(udivdi3, umoddi3): Delete, replace by ...
(udivmoddi4): ... this.
(udivmodtidi3): Fix template.
(divsi3, modsi3): Delete, replace by ...
(divmodsi4): ... this.
(divmoddisi3): Fix template.
(udivsi3, umodsi3): Adapt.
* s390.md (anddi3): Remove SS alternative, use instead ...
(anddi3_ss, anddi3_ss_inv): ... these.
(anddi3_ni): New.
(andsi3*, andhi3*, andqi3*): Likewise.
(iordi3): Remove SS alternative, use instead ...
(iordi3_ss, iordi3_ss_inv): ... these.
(iordi3_oi): New.
(iorsi3*, iorhi3*, iorqi3*): Likewise.
(iordi3_cc, iordi3_cconly, iorsi3_cc, iorsi3_cconly): New.
(xordi3): Remove SS alternative, use instead ...
(xordi3_ss, xordi3_ss_inv): ... these.
(xordi3_oi): New.
(xorsi3*, xorhi3*, xorqi3*): Likewise.
(xordi3_cc, xordi3_cconly, xorsi3_cc, xorsi3_cconly): New.
(one_cmpldi2, one_cmplsi2, one_cmplhi2, one_cmplqi2):
Expand to XOR with -1.
(*one_cmpldi2, *one_cmplsi2, *one_cmplhi2): Remove.
(cmpdi_tm): Delete, replace by ...
(cmpdi_tm_reg, cmpdi_tm_mem): ... these.
(cmpsi_cct): Delete, replace by ...
(cmpsi_tm_reg, cmpsi_tm_mem): ... these.
(cmpdi_tm2, cmpsi_tm2): Improve.
(cmphi_tm_sub, cmpqi_tm_sub, cmpqi_tm2, cmpqi_tm): New.
s390.c (s390_single_hi, s390_extract_hi,
s390_single_qi, s390_extract_qi): New helper routines.
s390-protos.h (s390_single_hi, s390_extract_hi,
s390_single_qi, s390_extract_qi): Declare.
s390.c (tmxx_operand, const1_operand): Remove.
s390-protos.h (tmxx_operand, const1_operand): Likewise.
s390.h (PREDICATE_CODES): Likewise.
* s390.md (sqrtdf2, sqrtsf2): New.
* s390.h (CRT_CALL_STATIC_FUNCTION): Define.
(check_and_change_labels): Remove section-change special case.
* s390.h (RETURN_ADDR_RTX): Fix use of __builtin_return_address
in leaf functions. Needs ...
(DYNAMIC_CHAIN_RTX): ... this. New.
* s390.c (emit_pic_move): Don't generate pseudos if no_new_pseudos.
* s390.md (movstrdix_64, movstrsix_31, movstrdi_64, movstrsi_31,
clrstrsi_64, clrstrsi_31, cmpstr_64, cmpstr_31): Do not clobber
input operands using a match_dup clause.
(movstrdi, movstrsi, clrstrdi, clrstrsi, cmpstrdi, cmpstrsi): Adapt.
* s390.md (floatdidf2, floatdisf2, floatsidf2, floatsidf2_ieee,
floatsisf2, floatsisf2_ieee): Add missing CC clobber.
* s390.md (floatsidf2_ibm): Use correct operand.
* s390.md (fixuns_truncdfdi2, fixuns_truncdfsi2, fix_truncdfsi2,
fixuns_truncsfdi2, fixuns_truncsfsi2, floatsidf2): Remove use of
non-portable constants.
s390.c (s390_gen_rtx_const_DI): New helper routine.
s390-protos.h (s390_gen_rtx_const_DI): Declare.
* s390.h (ASM_OUTPUT_SPECIAL_POOL_ENTRY): Fix alignment.
* config/s390/linux.h (ASM_OUTPUT_SHORT, ASM_OUTPUT_CHAR,
ASM_OUTPUT_BYTE): Clean up assembly output.
(ASM_OUTPUT_SKIP, ASM_OUTPUT_ALIGN): Remove duplicate definitions.
(ASM_OUTPUT_ASCII): Remove.
* config/s390/t-linux (CRTSTUFF_T_CFLAGS_S): Define.
From-SVN: r48058
Richard Kenner [Sun, 16 Dec 2001 01:38:45 +0000 (20:38 -0500)]
Add newline in copyright block.
From-SVN: r48057
Zack Weinberg [Sun, 16 Dec 2001 01:27:57 +0000 (17:27 -0800)]
unwind-dw2-fde-glibc.c: #define _Unwind_Find_FDE to itself before including unwind-dw2-fde.c...
* unwind-dw2-fde-glibc.c: #define _Unwind_Find_FDE to itself
before including unwind-dw2-fde.c, if we are not using the
special code in this file.
From-SVN: r48056
Joseph Myers [Sun, 16 Dec 2001 01:13:56 +0000 (01:13 +0000)]
5ataprop.adb, [...]: Fix spelling errors.
* 5ataprop.adb, 5atpopsp.adb, 5ftaprop.adb, 5gmastop.adb,
5gtaprop.adb, 5htaprop.adb, 5itaprop.adb, 5lintman.adb,
5omastop.adb, 5oosinte.adb, 5otaprop.adb, 5staprop.adb,
5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb, 5wintman.adb,
5wtaprop.adb, 5zinterr.adb, 5ztaprop.adb, 6vcstrea.adb,
7sintman.adb, 7staprop.adb, 9drpc.adb, ChangeLog, Makefile.in,
a-except.adb, a-tags.ads, a-tasatt.adb, a-teioed.adb,
a-textio.ads, a-witeio.ads, a-wtedit.adb, ali.ads, comperr.adb,
cstand.adb, einfo.ads, errout.adb, exp_ch11.adb, exp_ch2.adb,
exp_ch3.adb, exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch9.adb,
exp_util.adb, exp_util.ads, fname-uf.adb, g-cgi.ads, g-exctra.ads,
g-expect.ads, g-regist.adb, g-spipat.adb, gnatchop.adb,
gnatlink.adb, gnatls.adb, gnatmain.adb, gnatmem.adb, init.c,
make.adb, make.ads, mdlltool.adb, nlists.ads, osint.ads,
par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb, par.adb,
repinfo.adb, s-fatflt.ads, s-fatlfl.ads, s-fatllf.ads,
s-fatsfl.ads, s-finimp.adb, s-finimp.ads, s-interr.adb,
s-secsta.ads, s-shasto.ads, s-stalib.adb, s-stalib.ads,
s-tarest.ads, s-tasdeb.adb, s-tassta.adb, s-tassta.ads,
s-vaflop.ads, scans.ads, scn.adb, sem.ads, sem_aggr.adb,
sem_attr.adb, sem_case.ads, sem_ch10.adb, sem_ch12.adb,
sem_ch13.adb, sem_ch3.adb, sem_ch3.ads, sem_ch5.adb, sem_ch7.adb,
sem_ch8.adb, sem_ch8.ads, sem_type.adb, sem_util.ads, sinfo.ads,
sprint.adb, tbuild.ads, types.ads, utils.c, xeinfo.adb: Fix
spelling errors.
From-SVN: r48055
Richard Henderson [Sun, 16 Dec 2001 01:05:01 +0000 (17:05 -0800)]
alpha.h (TARGET_SWITCHES): Turn on MASK_EXPLICIT_RELOCS if the assembler supports it.
* config/alpha/alpha.h (TARGET_SWITCHES): Turn on
MASK_EXPLICIT_RELOCS if the assembler supports it.
* configure.in (HAVE_AS_EXPLICIT_RELOCS): New.
* configure, config.in: Rebuild.
From-SVN: r48054
Paolo Carlini [Sun, 16 Dec 2001 01:02:17 +0000 (02:02 +0100)]
2001-12-15 Paolo Carlini <pcarlini@unitus.it>
Nathan Myers <ncm@cantrip.org>
* include/bits/basic_string.h
(assign(__str, __pos, __n), assign(__s, __n)): Optimize
by avoiding unnecessary temporaries.
(assign(__s)): Call assign(__s, __n).
* include/bits/basic_string.tcc (_M_replace_safe): Adjust comment.
* include/bits/std_string.h: include stl_function.h.
* testsuite/21_strings/assign.cc (test02, test03): New tests.
Co-Authored-By: Nathan Myers <ncm@cantrip.org>
From-SVN: r48053
Geert Bosch [Sun, 16 Dec 2001 00:56:17 +0000 (01:56 +0100)]
osint.adb (Create_Debug_File): When an object file is specified...
* osint.adb(Create_Debug_File): When an object file is specified,
put the .dg file in the same directory as the object file.
* osint.adb: Minor reformatting
* lib-xref.adb (Output_Instantiation): New procedure to generate
instantiation references.
* lib-xref.ads: Add documentation of handling of generic references.
* ali.adb (Read_Instantiation_Ref): New procedure to read
instantiation references
* ali.ads: Add spec for storing instantiation references
* bindusg.adb: Minor reformatting
* switch.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
* usage.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
* gnatcmd.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
* csets.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
* csets.ads:
Fix header format
Add 2001 to copyright date
Add entry for Latin-5 (Cyrillic ISO-8859-5)
* adaint.c: mktemp is a macro on Lynx and can not be used as an
expression.
* misc.c (gnat_expand_constant): Do not strip UNCHECKED_CONVERT_EXPR
if operand is CONSTRUCTOR.
* trans.c (tree_transform, case N_Assignment_Statement): Set lineno
before emiting check on right-hand side, so that exception information
is correct.
* utils.c (create_var_decl): Throw away initializing expression
if just annotating types and non-constant.
* prj-nmsc.adb: (Ada_Check): Migrate drom Ada_Default_... to
Default_Ada_...
* prj.adb: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
Remove functions.
(Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move to spec.
* prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
Remove functions.
(Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move from body.
From-SVN: r48052
Joseph Myers [Sun, 16 Dec 2001 00:53:08 +0000 (00:53 +0000)]
* ChangeLog: Remove piece of diff output.
From-SVN: r48051
Bryce McKinlay [Sun, 16 Dec 2001 00:14:57 +0000 (00:14 +0000)]
DataOutputStream (write (byte[], int, int)): Update "written" correctly.
* java/io/DataOutputStream (write (byte[], int, int)): Update
"written" correctly. Fix from the ORP team.
From-SVN: r48050
Richard Kenner [Sat, 15 Dec 2001 23:00:00 +0000 (23:00 +0000)]
calls.c (emit_call_1): If ECF_SP_DEPRESSED, pretend have adjusted for rounded_stack_size.
* calls.c (emit_call_1): If ECF_SP_DEPRESSED, pretend have adjusted
for rounded_stack_size.
From-SVN: r48049
Joseph Myers [Sat, 15 Dec 2001 20:31:07 +0000 (20:31 +0000)]
c-typeck.c, [...]: Use "built-in" and "bit-field" spellings in messages.
* c-typeck.c, config/i386/i386.h, config/mcore/mcore.h,
config/ns32k/ns32k.h, config/rs6000/sysv4.h, fold-const.c,
toplev.c, cppinit.c, cppmacro.c, gcc.c: Use "built-in" and
"bit-field" spellings in messages.
* po/gcc.pot: Regenerate.
ch:
* expr.c: Use "built-in" spelling in messages.
From-SVN: r48048
Joseph Myers [Sat, 15 Dec 2001 20:06:12 +0000 (20:06 +0000)]
gcc.c, [...]: Use American spelling in messages.
* gcc.c, config/fr30/fr30.c, config/v850/v850-c.c, toplev.c: Use
American spelling in messages.
* po/gcc.pot: Regenerate.
ch:
* decl.c, parse.c, typeck.c: Use American spelling in messages.
cp:
* lang-options.h: Use American spelling in messages.
From-SVN: r48047
Benjamin Kosnik [Sat, 15 Dec 2001 18:58:49 +0000 (18:58 +0000)]
acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Enable gnu locale model on linux by default.
2001-12-15 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Enable gnu locale model
on linux by default.
* aclocal.m4: Regenerate.
* configure: Regenerate.
From-SVN: r48046
Kazu Hirata [Sat, 15 Dec 2001 18:26:26 +0000 (18:26 +0000)]
h8300.md: Adjust whitespacing.
* config/h8300/h8300.md: Adjust whitespacing. Remove
constraints from expanders. Replace \@ with @.
From-SVN: r48045
Richard Earnshaw [Sat, 15 Dec 2001 16:46:57 +0000 (16:46 +0000)]
* arm/unknown-elf.h (CPP_PREDEFINES): Add a suitable default.
From-SVN: r48044
Ulrich Weigand [Sat, 15 Dec 2001 15:36:14 +0000 (15:36 +0000)]
regrename.c (copyprop_hardreg_forward): Do not keep register value data live across abnormal call or eh egdes.
* regrename.c (copyprop_hardreg_forward): Do not keep register
value data live across abnormal call or eh egdes.
From-SVN: r48043
Richard Kenner [Sat, 15 Dec 2001 13:37:16 +0000 (08:37 -0500)]
expr.c (highest_pow2_factor, [...]): Return BIGGEST_ALIGNMENT for 0.
* expr.c (highest_pow2_factor, case INTEGER_CST): Return
BIGGEST_ALIGNMENT for 0.
From-SVN: r48042
Jan Hubicka [Sat, 15 Dec 2001 13:14:06 +0000 (14:14 +0100)]
predict.def (PRED_NORETURN, [...]): Make probabilities match reality.
* predict.def (PRED_NORETURN, PRED_OPCODE_POSITIVE, PRED_OPCODE_NONEQUAL,
PRED_ERROR_RETURN): Make probabilities match reality.
From-SVN: r48041
Jakub Jelinek [Sat, 15 Dec 2001 11:49:18 +0000 (12:49 +0100)]
configure.in: Check for ld.
* configure.in: Check for ld.
(HAVE_LD_EH_FRAME_HDR): Define if ld supports --eh-frame-hdr option.
* configure, config.in: Rebuilt.
* config.gcc: Add crtbeginT.o to extra_parts where needed.
* config/t-linux (LIB2ADDEH, LIB2ADDEHDEP): Use unwind-dw2-fde-glibc
frame unwinding on Linux.
* config/t-linux-gnulibc1 (LIB2ADDEH, LIB2ADDEHDEP): Use unwind-dw2-fde
frame unwinding.
* config/linux.h (STARTFILE_SPEC): Use crtbeginT.o for -static.
(LINK_EH_SPEC): Define.
* config/i386/gnu.h (STARTFILE_SPEC): Use crtbeginT.o for -static.
* config/ia64/linux.h (STARTFILE_SPEC, LINK_EH_SPEC): Define.
* config/ia64/fde-glibc.c (_Unwind_IteratePhdrCallback): Don't
iterate further if pc falls into current library, but fde was not
found.
* config/sparc/linux.h (STARTFILE_SPEC): Use crtbeginT.o for -static
if using glibc.
(LINK_EH_SPEC): Define.
* config/sparc/linux64.h (STARTFILE_SPEC32, STARTFILE_SPEC64):
Use crtbeginT.o for -static.
(LINK_EH_SPEC): Define.
* config/sparc/t-linux64 (EXTRA_MULTILIB_PARTS): Add crtbeginT.o.
* Makefile.in (crtbeginT.o): Add rule.
* gcc.c (init_gcc_specs): For -static-libgcc, use -lgcc -lgcc_eh.
If neither -static-libgcc nor -shared-libgcc is passed and -shared,
use -lgcc if LINK_EH_SPEC is defined and -lgcc_s -lgcc if not.
If none of the above switches are passed, use -lgcc -lgcc_eh.
(init_spec): If LINK_EH_SPEC is defined, prepend it to link_spec.
* mklibgcc.in: Don't include LIB2ADDEH objects into libgcc.a if
creating libgcc_s.so, put them into separate libgcc_eh.a instead.
* unwind-dw2-fde.c: Don't include any headers if this file
is included from other .c file.
* unwind-dw2-fde-glibc.c: New file.
* crtstuff.c (USE_PT_GNU_EH_FRAME, USE_EH_FRAME_REGISTRY): Define.
Use it instead of EH_FRAME_SECTION_NAME where appropriate.
From-SVN: r48039
Bryce McKinlay [Sat, 15 Dec 2001 08:31:49 +0000 (08:31 +0000)]
java-tree.h (otable_methods, [...]): New field/global tree definitions.
gcc/java:
* java-tree.h (otable_methods, otable_decl, otable_syms_decl,
otable_type, otable_ptr_type, method_symbol_type,
method_symbols_array_type, method_symbols_array_ptr_type): New
field/global tree definitions.
(flag_indirect_dispatch): New flag.
* decl.c (java_init_decl_processing): Initialize new otable and
otable_syms type nodes and decls. Add new field "index" to
method_type_node.
* class.c (build_method_symbols_entry): New function.
(make_method_value): Set "index" to to method's vtable index for
virtual methods when indirect-dispatch is not used.
(make_class_data): For indirect-dispatch, dont emit the dtable_decl,
and set vtable_method_count to -1. Set otable and otable_syms field
if indirect-dispatch is used and there was something to put in them.
(build_method_symbols_entry): New function.
(emit_offset_symbol_table): New function.
* expr.c (get_offset_table_index): New function.
(build_invokevirtual): Build array reference to otable at the index
returned by get_offset_table_index, and use the result as the vtable
offset.
(build_invokeinterface): Similar.
* jcf-parse.c (yyparse): If indirect-dispatch, call
emit_offset_symbol_table at the end of compilation, after all classes
have been generated.
* jvspec.c: Don't pass findirect-dispatch to jvgenmain.
* lang.c (flag_indirect_dispatch): Define.
(lang_f_options): Add indirect-dispatch flag.
libjava:
* include/jvm.h (_Jv_VTable::idx_to_offset): New method.
* java/lang/natClassLoader.cc (_Jv_PrepareCompiledClass): Call
_Jv_MakeVTable and _Jv_LinkOffsetTable if needed.
* java/lang/Class.h (_Jv_Method): Add "index" field.
(_Jv_MethodSymbol): New struct type.
(_Jv_LinkOffsetTable, _Jv_LayoutVTableMethods, _Jv_SetVTableEntries,
_Jv_MakeVTable): Friends.
(otable, otable_syms): New Class fields.
* java/lang/natClass.cc (_Jv_LinkOffsetTable): New function.
(isVirtualMethod): New static function.
(_Jv_LayoutVTableMethods): New function.
(_Jv_SetVTableEntries): New function.
(_Jv_MakeVTable): New function.
From-SVN: r48038
GCC Administrator [Sat, 15 Dec 2001 08:16:09 +0000 (08:16 +0000)]
Daily bump.
From-SVN: r48036
Bryce McKinlay [Sat, 15 Dec 2001 07:47:03 +0000 (07:47 +0000)]
Collections drop from Classpath:
2001-12-15 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* java/util/BitSet.java (and): Fix off-by-one bug, don't skip part of
the bitset.
(andNot): Likewise.
(xor): Likewise.
2001-12-15 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* java/util/LinkedList.java (LinkedListItr.add): Don't skip the next
entry.
2001-12-15 Eric Blake <ebb9@email.byu.edu>
* java/util/TreeMap.java (removeNode): Fix bug in node removal.
2001-12-15 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* java/util/AbstractCollection.java (containsAll): Use size of the
correct collection for loop bound.
* java/util/AbstractList.java (iterator.next): Increment pos after
calling get on backing list.
(listIterator.next): Likewise.
* java/util/LinkedList.java (addLastEntry): Don't increment size before
checking for size == 0.
(addFirstEntry): Rearrange to match addLastEntry.
(add): Do not increment size before inserting the new entry.
* java/util/AbstractCollection.java (addAll): Use size of the
correct collection for loop bound.
2001-12-15 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* java/util/AbstractSet.java (removeAll): Fix scoping thinko.
* java/util/HashMap.java (putAllInternal): Set size here.
* java/util/Hashtable.java (putAllInternal): New method. Copy contents
of a map efficiently without calling put() or putAll().
(Hashtable (map)): Use putAllInternal.
(clone): Likewise.
2001-12-15 Eric Blake <ebb9@email.byu.edu>
* java/util/Collections.java:
* java/util/Vector.java:
* java/util/WeakHashMap.java: Fix spelling errors.
2001-12-15 Eric Blake <ebb9@email.byu.edu>
* java/util/AbstractCollection.java (removeAllInternal),
(retainAllInternal): Add hooks for use by ArrayList.
* java/util/AbstractList.java: Minor code updates. Fix some
scoping.
* java/util/AbstractMap.java: ditto
* java/util/ArrayList.java (readObject, writeObject): ditto
(removeAllInternal, retainAllInternal): Optimize.
* java/util/Arrays.java: ditto
* java/util/Collections.java: ditto. Change order of parameters
to equals(Object, Object) to match specs.
* java/util/Dictionary.java: Improve javadoc.
(Dictionary): Add explicit constructor.
* java/util/HashMap.java: Improve javadoc. Rearrange methods to
follow order in JDK. Cleanups related to recent code migration to
AbstractMap. Fix some scoping.
(entrySet): Cache the result.
(modCount): Ensure that this is updated correctly.
* java/util/HashSet.java: Improve javadoc. Fix some scoping.
(init): Add hooks for LinkedHashSet.
(map): Use "" instead of Boolean.TRUE in backing map. Use
package-private API where possible for less overhead.
(readObject, writeObject): Fix serialization.
* java/util/Hashtable.java: Improve javadoc. Fix some scoping.
(entrySet, keySet, values): Cache the result.
(modCount): Ensure that this is updated correctly.
(contains, remove): Fix NullPointer checking to match specs.
(class Enumeration): Make more like HashIterator.
* java/util/IdentityHashMap.java: Minor code updates.
(modCount): Ensure that this is updated correctly.
(readObject, writeObject): Fix serialization.
* java/util/LinkedHashMap.java: Minor code updates. Cleanups
related to recent code migration to AbstractMap.
* java/util/LinkedHashSet.java: New file.
* java/util/LinkedList.java:
(readObject, writeObject): Fix serialization.
* java/util/Makefile.am: List recently added files.
* java/util/Stack.java: Minor code updates.
* java/util/TreeMap.java: Improve javadoc. Overhaul the class to
be more efficient. Fix some scoping. Rearrange the methods.
(nil): Ensure that this can be thread-safe, and make it a static
final. Initialize it to be more useful as a sentinal node.
(Node): Specify color in constructor.
(deleteFixup, insertFixup): Improve comments and algorithm.
(fabricateTree): Redesign with less overhead.
(lowestGreaterThan): Add parameter first to make SubMap easier.
(removeNode): Patch hole where nil was being modified. Choose
predecessor instead of successor so in-place swap works.
(class VerifyResult, verifyTree, verifySub, verifyError): Remove
this dead code after verifying the class works.
(class SubMap): Rewrite several algorithms to avoid problems with
comparing nil.
* java/util/TreeSet.java: Improve javadoc. Fix some scoping.
(clone): Fix ClassCastException when cloning subSet().
(readObject, writeObject): Fix serialization.
* java/util/WeakHashMap.java: Improve javadoc. Fix some scoping.
(NULL_KEY): Make it compare as null, for ease elsewhere.
(Class WeakEntry): Rename from Entry, to avoid shadowing
Map.Entry. Add missing toString.
(modCount): Ensure that this is updated correctly.
(clear, containsValue, keySet, putAll, values, WeakHashMap(Map)):
Add missing methods and constructor.
2001-12-15 Eric Blake <ebb9@email.byu.edu>
* java/util/ArrayList.java (checkBoundExclusive),
(checkBoundInclusive): Rename from range??clusive, to match
AbstractList.
* java/util/LinkedList.java (checkBoundsExclusive),
(checkBoundsInclusive): ditto
* java/util/Vector.java (checkBoundExclusive),
(checkBoundInclusive): Move bounds checking into common methods.
2001-12-15 Eric Blake <ebb9@email.byu.edu>
* java/util/AbstractList.java:
(modCount): Make sure it is updated in all needed places.
* java/util/ArrayList.java: Improve javadoc. Implements
RandomAccess. Add serialVersionUID. Reorder methods.
(modCount): Make sure it is updated in all needed places.
(rangeExclusive, rangeInclusive): Add common methods for bounds
check.
(isEmpty): Add missing method.
* java/util/Collections.java: (class SynchronizedList): Make
package visible.
* java/util/ConcurrentModificationException.java: Improve
javadoc.
* java/util/EmptyStackException.java: Improve javadoc.
* java/util/LinkedList.java: Improve javadoc.
(modCount): Make sure it is updated in all needed places.
(rangeExclusive, rangeInclusive): Add common methods for bounds
check.
* java/util/NoSuchElementException.java: Improve javadoc.
* java/util/Stack.java: Improve javadoc. Fix synchronization
issues.
(modCount): Make sure it is updated in all needed places.
* java/util/Vector.java: Improve javadoc. Fix synchronization
issues. Implements RandomAccess. Reorder methods.
(modCount): Make sure it is updated in all needed places.
(setSize): Fix according to specifications: this does not dictate
the backing array size.
(removeAll, retainAll): Faster implementations.
2001-12-15 Eric Blake <ebb9@email.byu.edu>
* java/util/BitSet.java: Improve javadoc.
(cardinality(), clear(), clear(int, int), flip(int)),
(flip(int, int), get(int, int), intersects(BitSet), isEmpty()),
(nextClearBit(int), nextSetBit(int), set(int, boolean)),
(set(int, int), set(int, int, boolean)): Add new JDK 1.4 methods.
(clone): Fix so subclasses clone correctly.
2001-12-15 Eric Blake <ebb9@email.byu.edu>
* java/util/AbstractCollection.java: Improve javadoc.
(AbstractCollection()): Make constructor protected.
(equals(Object, Object), hashCode(Object)): Add utility methods.
* java/util/AbstractList.java: Improve javadoc.
(AbstractList()): Make constructor protected.
(indexOf(Object)): Call listIterator(), not listIterator(int).
(iterator()): Follow Sun's requirement to not use listIterator(0).
(listIterator(int)): Make AbstractListItr anonymous.
(subList(int, int)): Add support for RandomAccess.
(SubList.add(int, Object), SubList.remove(Object)): Fix bug with
modCount tracking.
(SubList.addAll(Collection)): Add missing method.
(SubList.listIterator(int)): Fix bugs in indexing, modCount
tracking.
(class RandomAccessSubList): Add new class.
* java/util/AbstractMap.java: Improve javadoc.
(keys, values, KEYS, VALUES, ENTRIES): Consolidate common map
fields.
(AbstractMap()): Make constructor protected.
(equals(Object, Object), hashCode(Object)): Add utility methods.
(equals(Object)): Change algorithm to
entrySet().equals(m.entrySet()), as documented by Sun.
(keySet(), values()): Cache the collections.
* java/util/AbstractSequentialList.java: Improve javadoc.
(AbstractSequentialList()): Make constructor protected.
* java/util/AbstractSet.java: Improve javadoc.
(AbstractSet()): Make constructor protected.
(removeAll(Collection)): Add missing method.
* java/util/Arrays.java: Improve javadoc, rearrange method orders.
(defaultComparator): Remove, in favor of
Collections.compare(Object, Object, Comparator).
(binarySearch, equals, sort): Fix natural order comparison of
floats and doubles. Also improve Object comparison - when
comparator is null, use natural order.
(fill, sort): Add missing checks for IllegalArgumentException.
(sort, qsort): Fix sorting bugs, rework the code for more
legibility.
(mergeSort): Inline into sort(Object[], int, int, Comparator).
(class ArrayList): Rename from ListImpl, and make compatible with
JDK serialization. Add methods which more efficiently override
those of AbstractList.
* java/util/Collections: Improve javadoc.
(isSequential(List)): Add and use a method for deciding between
RandomAccess and sequential algorithms on lists.
(class Empty*, class Synchronized*, class Unmodifiable*): Make
compliant with JDK serializability.
(class Singleton*, class CopiesList, class RevereseComparator),
(class UnmodifiableMap.UnmodifiableEntrySet),
(class *RandomAccessList): New classes for serial compatibility.
(class Empty*, class Singleton*, class CopiesList): Add methods
which more efficiently override those of Abstract*.
(search): Inline into binarySearch(List, Object, Comparator).
(binarySearch): Make sequential search only do log(n) comparisons,
instead of n.
(copy(List, List)): Do bounds checking before starting.
(indexOfSubList, lastIndexOfSubList, list, replaceAll, rotate),
(swap): Add new JDK 1.4 methods.
(binarySearch, max, min, sort): Allow null comparator to represent
natural ordering.
(reverse(List)): Avoid unnecessary swap.
(shuffle(List, Random)): Do shuffle in-place for RandomAccess
lists.
(SingletonList.get): Fix logic bug.
(SingletonMap.entrySet): Make the entry immutable, and cache the
returned set.
(SynchronizedCollection, SynchronizedMap, UnmodifiableCollection),
(UnmodifiableMap): Detect null pointer in construction.
(SynchronizedMap, UnmodifiableMap): Cache collection views.
* java/util/BasicMapEntry: Improve javadoc.
From-SVN: r48035
Benjamin Kosnik [Sat, 15 Dec 2001 07:05:04 +0000 (07:05 +0000)]
Clean up initialization and simplfy caching of underlying "C" locale objects.
2001-12-14 Benjamin Kosnik <bkoz@redhat.com>
Clean up initialization and simplfy caching of underlying "C"
locale objects.
* src/localename.cc (locale::_Impl::_Impl(string, size_t):
Unconditionally create __clocale object for all named locales,
including "C" and "POSIX".
* config/locale/c_locale_generic.cc
(locale::facet::_S_create_c_locale): Always set __cloc to zero.
* config/locale/c_locale_gnu.cc: Always delete.
* include/bits/localefwd.h (locale::facet::_S_c_locale): New.
* src/locale.cc (locale::classic()): Initialize
locale::facet::_S_c_locale.
(locale::facet::_S_c_locale): Define.
* include/bits/locale_facets.h: Add ctype_byname<wchar_t> ctor
specialization.
* src/locale.cc: Add definition here.
* config/os/gnu-linux/bits/ctype_inline.h: Tweak.
* config/os/gnu-linux/bits/ctype_noninline.h: Adjust initializations.
* include/bits/locale_facets.h (ctype<char>::_M_c_locale_ctype): Add.
Adjust ctors, dtors.
(ctype<char>::_M_toupper): Remove const&.
(ctype<char>::_M_tolower): Remove const&.
(ctype<char>::_M_ctable): Remove const&.
* include/bits/locale_facets.h (collate): Clean up initialization
of _M_c_locale_collate in ctors and dtors.
* config/locale/collate_members_gnu.cc: Always use extended
functions.
* include/bits/locale_facets.h (messages): Clean up inits in ctor/dtor.
(messages_byname): Same.
* config/locale/messages_members_generic.h (messages::~messages):
Remove.
* config/locale/messages_members_gnu.h: Same.
* include/bits/localefwd.h: Clean. Move dtor definitions to
* src/locale.cc: Here.
* testsuite/22_locale/facet.cc: Fix spelling.
Named locale support for ctype<wchar_t>.
* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Add variable
ctype_members_* bits.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* src/Makefile.am (sources): Add ctype.cc.
* src/Makefile.in: Regenerate.
* config/locale/ctype_members_generic.cc: New file.
* config/locale/ctype_members_gnu.cc: New file.
* src/locale.cc: Remove ctype<wchart_t> definitions.
From-SVN: r48034
Kaveh R. Ghazi [Sat, 15 Dec 2001 04:12:42 +0000 (04:12 +0000)]
builtins.c (expand_builtin_memcmp): Mark parameter with ATTRIBUTE_UNUSED.
* builtins.c (expand_builtin_memcmp): Mark parameter with
ATTRIBUTE_UNUSED.
* cfgcleanup.c (insns_match_p): Likewise.
* regrename.c (mode_change_ok): Likewise.
* gcc.c (execute): Const-ify.
From-SVN: r48033
Aldy Hernandez [Sat, 15 Dec 2001 04:06:05 +0000 (04:06 +0000)]
c-parse.in (typename): Do not split attributes.
* c-parse.in (typename): Do not split attributes.
Remove unsupported attributes warning.
* c-decl.c (groktypename): Apply attributes.
From-SVN: r48032
Aldy Hernandez [Sat, 15 Dec 2001 04:04:28 +0000 (04:04 +0000)]
* testsuite/gcc.dg/
20011214-1.c: New.
From-SVN: r48031
Richard Henderson [Sat, 15 Dec 2001 02:28:33 +0000 (18:28 -0800)]
ia64.c (spill_restore_mem): Mark iterator initialization as possibly dead.
* config/ia64/ia64.c (spill_restore_mem): Mark iterator
initialization as possibly dead.
From-SVN: r48030
Richard Henderson [Sat, 15 Dec 2001 02:25:41 +0000 (18:25 -0800)]
regrename.c (mode_change_ok): New.
* regrename.c (mode_change_ok): New.
(find_oldest_value_reg): Use it.
From-SVN: r48029
Richard Henderson [Sat, 15 Dec 2001 02:24:21 +0000 (18:24 -0800)]
regrename.c (struct value_data): Add max_value_regs.
* regrename.c (struct value_data): Add max_value_regs.
(init_value_data): Initialize it.
(kill_value): Kill values that overlap the dying register.
(set_value_regno): New.
(kill_set_value, kill_autoinc_value, copy_value): Use it.
(copyprop_hardreg_forward_1): Kill earlyclobber operands
before looking at inputs.
From-SVN: r48028
David Edelsohn [Sat, 15 Dec 2001 02:16:37 +0000 (02:16 +0000)]
rs6000.h (ASM_OUTPUT_DEF_FROM_DECLS): Handle DECL_WEAK for function descriptors.
* config/rs6000/rs6000.h (ASM_OUTPUT_DEF_FROM_DECLS): Handle
DECL_WEAK for function descriptors.
* config/rs6000/xcoff.h (HANDLE_PRAGMA_WEAK): Define if assembler
weak support present.
(ASM_WEAKEN_LABEL): Same.
From-SVN: r48027
Kazu Hirata [Sat, 15 Dec 2001 01:33:51 +0000 (01:33 +0000)]
h8300.md (anonymous pattern): Add a missing mode.
* config/h8300/h8300.md (anonymous pattern): Add a missing
mode.
From-SVN: r48026
Kazu Hirata [Sat, 15 Dec 2001 01:31:00 +0000 (01:31 +0000)]
h8300.c (h8300_adjust_insn_length): Fix a comment typo.
* config/h8300/h8300.c (h8300_adjust_insn_length): Fix a
comment typo.
From-SVN: r48025
Kazu Hirata [Sat, 15 Dec 2001 01:26:57 +0000 (01:26 +0000)]
h8300.c (h8300_handle_eightbit_data_attribute): Remove the initialization requierment.
* config/h8300/h8300.c (h8300_handle_eightbit_data_attribute):
Remove the initialization requierment.
(h8300_handle_tiny_data_attribute): Likewise.
From-SVN: r48024
Kazu Hirata [Sat, 15 Dec 2001 01:16:28 +0000 (01:16 +0000)]
h8300.md (udivqi3): Remove.
* config/h8300/h8300.md (udivqi3): Remove.
(divqi3): Likewise.
(udivhi3): Likewise.
(divhi3): Likewise.
(umodqi3): Likewise.
(modqi3): Likewise.
(umodhi3): Likewise.
(modhi3): Likewise.
(udivmodqi3): New.
(divmodqi3): Likewise.
(udivmodhi3): Likewise.
(divmodhi3): Likewise.
From-SVN: r48023
Jan Hubicka [Sat, 15 Dec 2001 00:53:44 +0000 (01:53 +0100)]
cfgcleanup.c (flow_find_cross_jump): Replace tests for note by active_insn_p; count conditional jump as instruction.
* cfgcleanup.c (flow_find_cross_jump): Replace tests for note
by active_insn_p; count conditional jump as instruction.
From-SVN: r48022
DJ Delorie [Fri, 14 Dec 2001 23:38:18 +0000 (18:38 -0500)]
cygwin.h (I386_PE_STRIP_ENCODING): Handle '*' at SYM_NAME[0] or SYM_NAME[3].
* config/i386/cygwin.h (I386_PE_STRIP_ENCODING): Handle '*'
at SYM_NAME[0] or SYM_NAME[3].
(STRIP_NAME_ENCODING): Don't check for leading '*'.
Co-Authored-By: Danny Smith <dannysmith@users.sourceforge.net>
From-SVN: r48020
Ira Ruben [Fri, 14 Dec 2001 23:17:18 +0000 (23:17 +0000)]
Added changes to support -### (previously ok'ed by R. Henderson).
Added changes to prevent -save-temps from clobbering the
input file (previously ok'ed by R. Henderson).
2001-12-14 Ira Ruben <ira@apple.com>
Add -### option (displays driver-generated commands without
executing and quotes all arguments).
* doc/invoke.texi: Add -###.
* gcc.c (verbose_only_flag) - New flag.
* (execute): If -### write quoted arguments and return.
* (display_help): Print meaning of -###.
* (process_command): Handle -###.
2001-12-14 Ira Ruben <ira@apple.com>
Fix to no allow -save-temps to clobber user's source file.
* gcc.c: Add static globals input_stat and input_stat_set.
(do_spec_1): For 'g', 'u', 'U' case with save_temps_flag
set, check that user's input file is not overwritten.
(set_input): Reset input_stat_set for each new file.
From-SVN: r48019
Matthias Klose [Fri, 14 Dec 2001 22:52:17 +0000 (22:52 +0000)]
gcj.texi: Markup for man page generation.
* gcj.texi: Markup for man page generation. Document missing
options printed by <tool> --help.
Terminate description of gij's -ms option with a dot.
* Make-lang.in ($(srcdir)/java/*.1): New targets.
(java.generated-manpages java.install-man, java.uninstall,
java-maintainer-clean) Updated.
From-SVN: r48016
Matthias Klose [Fri, 14 Dec 2001 22:46:31 +0000 (22:46 +0000)]
texi2pod.pl: Merge changes from binutils' texi2pod.pl.
2001-12-12 Matthias Klose <doko@debian.org>
* texi2pod.pl: Merge changes from binutils' texi2pod.pl. Allows
generation of more than one man page from one source.
Add '-' to set of valid chars for an identifier.
Let -D option accept flags of the form <flag>=<value>.
Use \s+ for whitespace detection in '@c man' lines.
Handle @set and @clear independent of $output.
Substitute all @value{}'s in a line.
From-SVN: r48015
Geert Bosch [Fri, 14 Dec 2001 22:31:14 +0000 (23:31 +0100)]
config-lang.in: Update copyright notice
* config-lang.in: Update copyright notice
* layout.adb: Remove commented out code.
* mdllfile.ads: Update copyright notice. Fix header format.
* sem_case.ads: Likewise.
* sem_ch3.adb: Minor reformatting.
From-SVN: r48014
Tom Tromey [Fri, 14 Dec 2001 21:56:29 +0000 (21:56 +0000)]
For PR libgcj/5103:
* libjava.jni/cxxtest.out: New file.
* libjava.jni/cxxtest.cc: New file.
* libjava.jni/cxxtest.java: New file.
* libjava.jni/jni.exp (gcj_jni_test_one): If there is no .c file,
assume there is a .cc file.
From-SVN: r48012
Jan Hubicka [Fri, 14 Dec 2001 21:28:49 +0000 (22:28 +0100)]
* predict.c (estimate_probability): Fix LOOP_EXIT heuristic.
From-SVN: r48010
Zack Weinberg [Fri, 14 Dec 2001 21:20:03 +0000 (21:20 +0000)]
combine.c (record_dead_and_set_regs): Use regs_invalidated_by_call.
* combine.c (record_dead_and_set_regs): Use
regs_invalidated_by_call. Don't note stores for CALL_INSNs.
From-SVN: r48009
Andreas Jaeger [Fri, 14 Dec 2001 21:06:35 +0000 (22:06 +0100)]
builtins.def: Rename BUILT_IN_FSQRT to BUILT_IN_SQRT and __builtin_fsqrt to __builtin_sqrt.
2001-12-14 Roger Sayle <roger@eyesopen.com>
* builtins.def: Rename BUILT_IN_FSQRT to BUILT_IN_SQRT and
__builtin_fsqrt to __builtin_sqrt.
* builtins.c (expand_builtin_mathfn,expand_builtin): Same.
* doc/extend.texi: Simplify documentation to match patch.
f:
* com-rt.def: Use __builtin_sqrt instead of __builtin_fsqrt.
* com.c (ffecom_init_0): Same, and fixed enumeration usage.
libstdc++-v3:
* acconfig.h: Test for __builtin_sqrt instead of
__builtin_fsqrt.
* acinclude.m4: Same.
* include/c_shadow/bits/std_cmath.h: Same.
* aclocal.m4: Regenerated.
* config.h.in: Regenerated.
* configure: Regenerated.
From-SVN: r48008
Jan Hubicka [Fri, 14 Dec 2001 20:43:41 +0000 (20:43 +0000)]
config.gcc: Revamp target_cpu_default2 to strings; support new x86 variants.
* config.gcc: Revamp target_cpu_default2 to strings;
support new x86 variants.
From-SVN: r48007
Jan Hubicka [Fri, 14 Dec 2001 20:27:05 +0000 (20:27 +0000)]
config.gcc: Revamp target_cpu_default2 to strings; support new x86 variants.
* config.gcc: Revamp target_cpu_default2 to strings;
support new x86 variants.
* i386.c (override_options): Default x86_cpu_string and x86_arch_string
properly; set prefetch_sse.
* i386.h (x86_prefetch_sse): Declare.
(TARGET_PREFETCH_SSE): New.
(CPP_CPU_DEFAULT_SPEC): Define according to the new macros.
(TARGET_CPU_DEFAULT_*): New.
* config/i386/i386.h (struct processor_costs): Add new members
prefetch_block and simultaneous_prefetches.
(PREFETCH_BLOCK, SIMULTANEOUS_PREFETCHES): New.
* config/i386/i386.c (processor_costs structs): Add values for
prefetch_block and simultaneous_prefetches.
* config/i386/i386.md (unspec values): Remove values for prefetch
operations, which now use the PREFETCH rtx code.
(prefetch_sse, prefetch_3dnow, prefetchw): Combine to use new
unified prefetch support.
From-SVN: r48006
Jason Merrill [Fri, 14 Dec 2001 20:13:55 +0000 (15:13 -0500)]
diagnostic.c (sorry): Increment sorrycount before saving the buffer state.
* diagnostic.c (sorry): Increment sorrycount before saving the
buffer state.
From-SVN: r48005
Hans Boehm [Fri, 14 Dec 2001 19:01:02 +0000 (19:01 +0000)]
class.c (get_dispatch_table): Fix java vtable layout for TARGET_VTABLE_USES_DESCRIPTORS.
* class.c (get_dispatch_table): Fix java vtable layout
for TARGET_VTABLE_USES_DESCRIPTORS.
* decl.c (java_init_decl_processing): Initialize
alloc_no_finalizer_node, finalize_identifier_node.
* expr.c (class_has_finalize_method): New function.
(expand_java_NEW): Generate calls for finalizer-free allocation.
(build_invokevirtual): Fix java vtable layout for
TARGET_VTABLE_USES_DESCRIPTORS.
* java-tree.h (enum java_tree_index): New entries:
JTI_ALLOC_NO_FINALIZER_NODE, JTI_FINALIZE_IDENTIFIER_NODE.
(alloc_no_finalizer_node, finalize_deintifier_node): New macros.
(class_has_finalize_method): declare.
(HAS_FINALIZER_P): New macro.
* parse.y (patch_invoke): Generate calls for finalizer-free
allocation.
From-SVN: r48004
Jan Hubicka [Fri, 14 Dec 2001 18:54:46 +0000 (19:54 +0100)]
* i386.md (sqrt?f): Fix conditionals.
From-SVN: r48003
Hans Boehm [Fri, 14 Dec 2001 18:43:55 +0000 (18:43 +0000)]
prims.cc: Some old cleanups.
* libjava/prims.cc: Some old cleanups. The collector now
handles test for out of memory.
* libjava/prims.cc, libjava/gcj/javaprims.h:
(_Jv_AllocObjectNoInitNoFinalizer, _Jv_AllocObjectNoFinalizer):
New functions for finalizer-free allocation.
(jvmpi_notify_alloc): Became separate function.
* libjava/java/lang/Object.h, libjava/include/jvm.h: Adjust for
revised vtable layout on IA64. With TARGET_VTABLE_USES_DESCRIPTORS,
there is only one extra descriptor.
From-SVN: r48002
Douglas B Rupp [Fri, 14 Dec 2001 12:55:07 +0000 (07:55 -0500)]
config.gcc (alpha64-dec-*vms*): New case.
* config.gcc (alpha64-dec-*vms*): New case.
* config/alpha/t-vms64, config/alpha/vms-crt0-64.c: New files.
* config/alpha/vms-psxcrt0-64.c, config/alpha/vms64.h: Likewise.
* config/alpha/xm-vms64.h: Likewise.
From-SVN: r48001
Douglas B Rupp [Fri, 14 Dec 2001 12:39:08 +0000 (07:39 -0500)]
alpha.c (vms_attribute_table): Add new attributes.
* config/alpha/alpha.c (vms_attribute_table): Add new attributes.
(alpha_write_linkage): Test for null alpha_links.
(SECTION_VMS_GLOBAL, SECTION_VMS_INITIALIZE): New section attributes.
(vms_section_type_flags, vms_asm_named_section): Handle them.
From-SVN: r48000
Jan Hubicka [Fri, 14 Dec 2001 11:20:27 +0000 (12:20 +0100)]
i386.c (ix86_fpmath, [...]): New.
Fri Dec 14 12:05:14 CET 2001 Jan Hubicka <jh@suse.cz>
* i386.c (ix86_fpmath, ix86_fpmath_string): New.
(override_option): Set ix86_fpmath.
* i386.h (MASK_MIX_SSE_I387): Remove.
(TARGET_SSE_MATH): New.
(TARGET_MIX_SSE_I387): Use ix86_fpmath.
(TARGET_SWITCHES): Remove "mix-sse-i387".
(fpmath_unit): New enum.
(ix86_fpmath, ix86_fpmath_string): Declare.
* i386.md (swapsf): Fix condition.
(add?f, sub?f, mul?f, div?f, sqrt?f, min?f): Use TARGET_SSE_MATH.
(fp_?f_*_nosse): New.
(fp_*): Use TARGET_SSE_MATH.
* invoke.texi (-mfpmath): Document.
(-msse2): Add.
From-SVN: r47999
Jason Merrill [Fri, 14 Dec 2001 11:19:28 +0000 (06:19 -0500)]
tweak comment
From-SVN: r47998
Jason Merrill [Fri, 14 Dec 2001 11:15:36 +0000 (06:15 -0500)]
dwarf2out.c (output_die): Print the string in the comment for a DW_FORM_strp.
* dwarf2out.c (output_die): Print the string in the comment for
a DW_FORM_strp.
From-SVN: r47997
Richard Earnshaw [Fri, 14 Dec 2001 11:03:49 +0000 (11:03 +0000)]
* netbsd.h (COLLECT_SHARED_INIT_FUNC)
(COLLECT_SHARD_FINI_FUNC): Remove redundant semicolon.
* doc/tm.texi (COLLECT_SHARED_INIT_FUNC)
(COLLECT_SHARD_FINI_FUNC): Use @code where appropriate.
From-SVN: r47996
GCC Administrator [Fri, 14 Dec 2001 08:16:45 +0000 (08:16 +0000)]
Daily bump.
From-SVN: r47995
Richard Henderson [Fri, 14 Dec 2001 06:47:56 +0000 (22:47 -0800)]
regrename.c (kill_value_regno): Simplify chain removal.
* regrename.c (kill_value_regno): Simplify chain removal.
(kill_value): Kill all of HARD_REGNO_NREGS.
(kill_set_value): Use kill_value not kill_value_regno.
(kill_autoinc_value): Likewise.
(copyprop_hardreg_forward): Don't collect refresh_blocks.
Call delete_noop_moves.
From-SVN: r47992
Aldy Hernandez [Fri, 14 Dec 2001 06:37:02 +0000 (06:37 +0000)]
altivec-4.c: New.
2001-12-13 Aldy Hernandez <aldyh@redhat.com>
* gcc.dg/altivec-4.c: New.
From-SVN: r47991
Aldy Hernandez [Fri, 14 Dec 2001 06:36:14 +0000 (06:36 +0000)]
attribs.c (c_common_attribute_table): Swap decl_req and type_req for the mode attribute.
* attribs.c (c_common_attribute_table): Swap decl_req and type_req
for the mode attribute.
(handle_mode_attribute): Handle types, not decls.
From-SVN: r47990
Aldy Hernandez [Fri, 14 Dec 2001 06:27:51 +0000 (06:27 +0000)]
attribs.c (c_common_attribute_table): Swap decl_req and type_req for the mode attribute.
2001-12-09 Aldy Hernandez <aldyh@redhat.com>
* attribs.c (c_common_attribute_table): Swap decl_req and type_req
for the mode attribute.
(handle_mode_attribute): Handle types, not decls.
From-SVN: r47989
Jason Merrill [Fri, 14 Dec 2001 03:08:50 +0000 (22:08 -0500)]
c-common.h (COMPOUND_STMT_BODY_BLOCK): New macro.
* c-common.h (COMPOUND_STMT_BODY_BLOCK): New macro.
Use cleanups to run base and member destructors.
* init.c (push_base_cleanups): New function, split out from...
(build_delete): ...here. Lose !TYPE_HAS_DESTRUCTOR code.
* decl.c (finish_destructor_body): Move vbase destruction code to
push_base_cleanups.
(begin_function_body, finish_function_body): New fns.
(finish_function): Move [cd]tor handling and call_poplevel to
finish_function_body.
(pushdecl): Skip the new level.
* semantics.c (genrtl_try_block): Don't call end_protect_partials.
(setup_vtbl_ptr): Call push_base_cleanups.
* method.c (synthesize_method): Call {begin,end}_function_body.
* pt.c (tsubst_expr): Handle COMPOUND_STMT_BODY_BLOCK.
* cp-tree.h: Declare new fns.
* parse.y (function_body, .begin_function_body): New nonterminals.
(fndef, pending_inline, function_try_block): Use function_body.
(ctor_initializer_opt, function_try_block): No longer has a value.
(base_init): Remove .set_base_init token.
(.set_base_init, compstmt_or_error): Remove.
* Make-lang.in (parse.c): Expect two fewer s/r conflicts.
From-SVN: r47988
Jason Merrill [Fri, 14 Dec 2001 03:01:59 +0000 (22:01 -0500)]
c-common.h (COMPOUND_STMT_BODY_BLOCK): New macro.
* c-common.h (COMPOUND_STMT_BODY_BLOCK): New macro.
* Make-lang.in (parse.h): Separate rule, just depend on parse.c.
Use cleanups to run base and member destructors.
* init.c (push_base_cleanups): New function, split out from...
(build_delete): ...here. Lose !TYPE_HAS_DESTRUCTOR code.
* decl.c (finish_destructor_body): Move vbase destruction code to
push_base_cleanups.
(begin_function_body, finish_function_body): New fns.
(finish_function): Move [cd]tor handling and call_poplevel to
finish_function_body.
(pushdecl): Skip the new level.
* semantics.c (genrtl_try_block): Don't call end_protect_partials.
(setup_vtbl_ptr): Call push_base_cleanups.
* method.c (synthesize_method): Call {begin,end}_function_body.
* pt.c (tsubst_expr): Handle COMPOUND_STMT_BODY_BLOCK.
* cp-tree.h: Declare new fns.
* parse.y (function_body, .begin_function_body): New nonterminals.
(fndef, pending_inline, function_try_block): Use function_body.
(ctor_initializer_opt, function_try_block): No longer has a value.
(base_init): Remove .set_base_init token.
(.set_base_init, compstmt_or_error): Remove.
* Make-lang.in (parse.c): Expect two fewer s/r conflicts.
From-SVN: r47987
Aldy Hernandez [Fri, 14 Dec 2001 02:43:26 +0000 (02:43 +0000)]
rs6000.md (eh_set_lr_di): Change scratch constraint to base register.
2001-12-13 Aldy Hernandez <aldyh@redhat.com>
* config/rs6000/rs6000.md (eh_set_lr_di): Change scratch
constraint to base register.
(eh_set_lr_si): Same.
From-SVN: r47986