Commit Graph

34273 Commits

Author SHA1 Message Date
Andrew Haley 3e02b1c3e8 gcj.texi (Configure-time Options): Add -fcheck-references.
2001-02-07  Andrew Haley  <aph@redhat.com>

	* gcj.texi (Configure-time Options): Add -fcheck-references.
	* expr.c (build_java_indirect_ref): New function.
	(java_check_reference): New function.
	(build_java_array_length_access): Use build_java_indirect_ref to
	check for null references.
	(build_java_arrayaccess): Likewise.
	(build_get_class): Likewise.
	(build_field_ref): Likewise.
	(invoke_build_dtable): Likewise.
	(build_invokeinterface): Likewise.
	* lang.c (lang_f_options): Add flag_check_references.
	* jvspec.c (jvgenmain_spec): Add flag_check_references.
	* java-tree.h (flag_check_references): New variable.
	* lang.c (flag_check_references): Likewise.
	* parse.y (patch_invoke): Use java_check_reference.
	(patch_assignment): Allow for extra nesting in
	_Jv_CheckArrayStore.

From-SVN: r40782
2001-03-23 17:31:42 +00:00
J"orn Rennecke 25caaba84b * stor-layout.c (layout_type): Give OFFSET_TYPE a MODE_INT type.
From-SVN: r40781
2001-03-23 16:59:56 +00:00
Andrew Haley 4ff17c6a1a gcj.texi (Configure-time Options): Add -fcheck-references.
2001-02-07  Andrew Haley  <aph@redhat.com>

        * gcj.texi (Configure-time Options): Add -fcheck-references.
        * expr.c (build_java_indirect_ref): New function.
        (build_java_array_length_access): Use build_java_indirect_ref to
        check for null references.
        (build_java_arrayaccess): Likewise.
        (build_get_class): Likewise.
        (build_field_ref): Likewise.
        (invoke_build_dtable): Likewise.
        (build_invokeinterface): Likewise.
        * lang.c (lang_f_options): Add flag_check_references.
        * jvspec.c (jvgenmain_spec): Add flag_check_references.
        * java-tree.h (flag_check_references): New variable.
        * lang.c (flag_check_references): Likewise.

From-SVN: r40780
2001-03-23 14:16:33 +00:00
Jakub Jelinek 8e4ce833ab decl.c (local_names): Define.
* decl.c (local_names): Define.
	(push_local_name): New.
	(grok_reference_init): Return init if initializing static reference
	variable with non-constant instead of emitting it.
	Move expand_static_init call to cp_finish_decl.
	(layout_var_decl): Call push_local_name.
	(maybe_commonize_var): Allow inlining functions even if they have
	static local variables, use comdat_linkage for them if flag_weak.
	(check_initializer): Call obscure_complex_init if
	grok_reference_init returned non-zero.
	(save_function_data): Clear x_local_names.
	(pop_cp_function_context): Free x_local_names.
	(mark_inlined_fns): Remove.
	(mark_lang_function): Mark x_local_names.
	(lang_mark_tree): Don't mark DECL_ACCESS for DECL_DISCRIMINATOR_P.
	Mark inlined_fns as tree, remove call to mark_inlined_fns.
	* class.c (alter_access): Ensure DECL_ACCESS is never set if
	DECL_DISCRIMINATOR_P.
	* cp-tree.h (cp_language_function): Add x_local_names.
	(lang_decl_flags): Add discriminator into u2.
	(lang_decl_inlined_fns): Remove.
	(lang_decl): inlined_fns is now a TREE_VEC.
	(DECL_DISCRIMINATOR_P, DECL_DISCRIMINATOR): Define.
	* optimize.c (inlinable_function_p): DECL_INLINED_FNS is now a
	TREE_VEC, not a custom structure.
	(optimize_function): Likewise.
	* mangle.c (discriminator_for_local_entity): Discriminate among
	VAR_DECL local entities.
	* search.c (dfs_access_in_type): If DECL_DISCRIMINATOR_P, DECL_ACCESS
	is not valid.

	* g++.old-deja/g++.other/mangle3.C: New test.

From-SVN: r40779
2001-03-23 13:04:11 +01:00
GCC Administrator 4d2cd1b16a Daily bump.
From-SVN: r40777
2001-03-23 08:16:08 +00:00
Tom Tromey ae8a67c4c0 field.out: New file.
* libjava.jni/field.out: New file.
	* libjava.jni/field.c: New file.
	* libjava.jni/field.java: New file.

From-SVN: r40776
2001-03-23 05:57:00 +00:00
Bryce McKinlay e4c34f6a43 re PR libgcj/1736 ([irix 6.5] Cannot create libgcj - Arg list too long)
Fix for PR libgcj/1736. Thanks to Robert Boehne and Alexandre Oliva
	for libtool hacking.
	* Makefile.am (libgcj.la): New explicit rule. Echo the list of objects
	to a temporary file, then invoke libtool with the -objectlist
	paramater.
	(libgcjx.la): Likewise.
	* Makefile.in: Rebuilt.

From-SVN: r40775
2001-03-23 05:18:16 +00:00
Bryce McKinlay f2a29271d5 gjavah.c (cxx_keywords): Update from the definitive list in cp/lex.c.
* gjavah.c (cxx_keywords): Update from the definitive list in cp/lex.c.
	* lex.c (cxx_keywords): Likewise.

From-SVN: r40773
2001-03-23 05:16:13 +00:00
Joerg Brunsmann d7cfa17ce1 Context.java (SECURITY_CREDENTIALS): Fix typo.
2001-03-22  Joerg Brunsmann <joerg_brunsmann@yahoo.de>

	* javax/naming/Context.java (SECURITY_CREDENTIALS): Fix typo.

From-SVN: r40771
2001-03-23 02:35:39 +00:00
Bryce McKinlay 60c8748279 [multiple changes]
2001-03-23  Bryce McKinlay  <bryce@albatross.co.nz>

	* extend.texi: Document the "java_interface" attribute.

java/:
2001-03-21  Bryce McKinlay  <bryce@albatross.co.nz>

	* gjavah.c (process_file): Mark interface definitions with
	"__attribute__ ((java_interface))".

cp/:
2001-03-22  Bryce McKinlay  <bryce@albatross.co.nz>

	Add support for Java interface method calls.
	* cp-tree.h (struct lang_type): Add java_interface flag.
	(TYPE_JAVA_INTERFACE): New macro.
	* tree.c (cp_valid_lang_attribute): Handle "java_interface" attribute
	by setting TYPE_JAVA_INTERFACE.
	* call.c (java_iface_lookup_fn): New static.
	(build_over_call): If calling a method declared in a
	TYPE_JAVA_INTERFACE, call build_java_interface_fn_ref to generate the
	expression which resolves the function address.
	(build_java_interface_fn_ref): New function.

From-SVN: r40769
2001-03-23 01:49:11 +00:00
Tom Tromey 9450a9295b Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (ffitest_LDFLAGS): New macro.

From-SVN: r40768
2001-03-23 01:26:33 +00:00
Zack Weinberg 1b0ae0f9be mkconfig.sh: Use a subshell with redirected stdout...
* mkconfig.sh: Use a subshell with redirected stdout,
	instead of closing stdout and confusing commands that run
	afterward.  Throw away output of cmp.

From-SVN: r40765
2001-03-23 01:16:22 +00:00
Gordon Sadler b937498e30 * Makefile.in (stage1_build): Pass CFLAGS to stage1_build.
From-SVN: r40761
2001-03-22 16:48:15 -05:00
Jan Hubicka 123bf9e3f4 i386.md (zero_extendsidi2_32): Break out from ...
* i386.md (zero_extendsidi2_32): Break out from ...
	(zero_extendsidi2): ... here ; turn to expander.
	(zero_extendsidi2_rex64): New.
	(extendsidi2_32): Break out from ...
	(extendsidi2): ... here ; turn to expander.
	(extendsidi2_rex64): New.
	(zero_extendhidi2, zero_extendqidi2, extendhidi2, extendqidi2): New.
	(trunc?f?f splitters): Add 64bit versions.

From-SVN: r40759
2001-03-22 21:17:42 +00:00
Jan Hubicka 0ec259edcd i386.md (pushsi, [...]): Disable.
* i386.md (pushsi, pushsi2_prologue): Disable.
	(pushsi2_rex64): New.
	(movabs?i_1_rex64, movabs?i_2_rex64): New.
	(movqi_ext_1): Disable for 64bit.
	(movqi_ext_1_rex64): New.
	(pushdi2_rex64): New pattern, peep2s and splitter.
	(pushdi2_prologue_rex64): New pattern.
	(popdi1_epilogue_rex64, popdi1, movdi_xor_rex64, movdi_or_rex64):
	Likewise.
	(movdi splitters): Disable for 64bit.
	(movdi_1_rex64): New pattern, peep2s and splitters.
	(swapdi): New pattern.
	(pushsf): Disable for 64bit.
	(pushsf_rex64): New pattern and splitter.
	(pushdf_nointeger): Disable for 64bit.
	(pushdf_integer): Handle the 64bit case.
	(pushtf): Likewise; update splitters.

From-SVN: r40758
2001-03-22 20:43:26 +00:00
Tom Tromey ee402fc993 * Makefile.am (gctest_LDFLAGS): Use -shared-libgcc.
From-SVN: r40756
2001-03-22 19:03:01 +00:00
Richard Henderson 5e7f4a4ab9 mkconfig.sh: Include insn-flags.h.
* mkconfig.sh: Include insn-flags.h.
	* Makefile.in (CONFIG_H): Include insn-flags.h.
	(lots of objects): Remove insn-codes.h and insn-flags.h.

	* alias.c, bb-reorder.c, calls.c, do-loop.c, flow.c, haifa-sched.c,
	integrate.c, jump.c, loop.c, predict.c, profile.c, reg-stack.c,
	regmove.c, reorg.c, a29k/a29k.c, alpha/alpha.c, arc/arc.c, arm/arm.c,
	avr/avr.c, clipper/clipper.c, convex/convex.c, d30v/d30v.c,
	dsp16xx/dsp16xx.c, fr30/fr30.c, h8300/h8300.c, i370/i370.c,
	i386/i386.c, i860/i860.c, ia64/ia64.c, m32r/m32r.c, m68hc11/m68hc11.c,
	m68k/m68k.c, m88k/m88k.c, mcore/mcore.c, mn10200/mn10200.c,
	mn10300/mn10300.c, ns32k/ns32k.c, pa/pa.c, pdp11/pdp11.c,
	pj/pj.c, romp/romp.c, rs6000/rs6000.c, sh/sh.c, sparc/sparc.c,
	v850/v850.c, vax/vax.c:
	Don't include insn-flags.h.

	* diagnostic.c, expr.h, reload.c, toplev.c:
	Don't include insn-codes.h.

	* builtins.c, combine.c, except.c, explow.c, expmed.c, expr.c,
	final.c, function.c, optabs.c, recog.c, reload1.c, stmt.c,
	c4x/c4x.c, i960/i960.c, mips/mips.c:
	Don't include insn-codes.h or insn-flags.h.

	* genemit.c, genopinit.c, genoutput.c: Don't include insn-codes.h
	or insn-flags.h in the generated code.
	* genflags.c (gen_proto): Use "struct rtx_def *" instead of "rtx".
	(main): Forward declare struct rtx_def.

From-SVN: r40754
2001-03-22 10:48:52 -08:00
Richard Henderson 94c7f30b44 Make-lang.in (cp/except.o): Don't depend on insn-flags.h.
* Make-lang.in (cp/except.o): Don't depend on insn-flags.h.
        * except.c: Don't include it.

From-SVN: r40753
2001-03-22 10:47:21 -08:00
Gerald Pfeifer fd8b7a0ed9 parse.y (bad_decl, [...]): New nonterminals.
* parse.y (bad_decl, template_arg_list_ignore, arg_list_ignore):
	New nonterminals.
	(data_def, component_decl): Add reductions to bad_decl.

Co-Authored-By: Joe Buck <jbuck@synopsys.com>

From-SVN: r40752
2001-03-22 18:44:21 +00:00
Alexandre Oliva b6b14b1bb4 ltcf-c.sh: Clear ac_cv_prog_cc_pic for DJGPP.
Re-installed:
2001-01-02  Laurynas Biveinis  <lauras@softhome.net>
* ltcf-c.sh: Clear ac_cv_prog_cc_pic for DJGPP.  Do not add
'-DPIC' to ac_cv_prog_cc_pic for DJGPP.
* ltcf-cxx.sh: Likewise.
* ltcf-gcj.sh: Likewise.

From-SVN: r40749
2001-03-22 18:13:39 +00:00
Marcus G. Daniels 736458d64b jni.cc (add_char): Handle `.' like `/'.
2001-03-22  Marcus G. Daniels  <mgd@swarm.org>

	* jni.cc (add_char): Handle `.' like `/'.

From-SVN: r40748
2001-03-22 17:47:15 +00:00
Jakub Jelinek a1c2b86d84 method.c (do_build_assign_ref): Don't use build_modify_expr for anonymous aggregates...
* method.c (do_build_assign_ref): Don't use build_modify_expr for
	anonymous aggregates, since they don't have assignment operator
	method.
	* decl.c (fixup_anonymous_aggr): Disallow ctors, dtors and copy
	assignment operators for anonymous structure fields.

	* g++.old-deja/g++.other/anon8.C: New test.

From-SVN: r40746
2001-03-22 18:00:28 +01:00
Jim Blandy a519fba6e8 cp-demangle.c (string_list_delete): Don't forget to free the actual contents of the string.
* cp-demangle.c (string_list_delete): Don't forget to free the
actual contents of the string.

From-SVN: r40744
2001-03-22 15:15:18 +00:00
Gerald Pfeifer 1eb0b89d0e * MAINTAINERS: Add myself as "documentation co-maintainer".
From-SVN: r40738
2001-03-22 14:27:11 +00:00
Joseph Myers 8b87acb8ea invoke.texi (-ffast-math): Remove duplicate line about __FAST_MATH__.
* invoke.texi (-ffast-math): Remove duplicate line about
	__FAST_MATH__.

From-SVN: r40737
2001-03-22 12:01:34 +00:00
Joseph Myers 52a11d15fc gcc.texi: Remove more obsolete documentation of bugs and installation problems.
* gcc.texi: Remove more obsolete documentation of bugs and
	installation problems.

From-SVN: r40735
2001-03-22 11:54:08 +00:00
Jason Merrill a96237da38 new
From-SVN: r40734
2001-03-22 04:30:16 -05:00
GCC Administrator 3ae885c0ba Daily bump.
From-SVN: r40732
2001-03-22 08:16:08 +00:00
Alexandre Oliva 82e232360d ltconfig, [...]: Upgraded to libtool 1.4a 1.641.2.198.
* ltconfig, ltmain.sh, libtool.m4, ltcf-c.sh, ltcf-cxx.sh,
ltcf-gcj.sh: Upgraded to libtool 1.4a 1.641.2.198.

From-SVN: r40731
2001-03-22 06:48:32 +00:00
Bryce McKinlay 595420bfea Method.java (getExceptionTypes): Call getType() to initialize if exception_types is null.
* java/lang/reflect/Method.java (getExceptionTypes): Call getType() to
	initialize if exception_types is null.
	* java/lang/reflect/Constructor.java: Likewise.
	* java/lang/reflect/natConstructor.cc (getType): Initialize
	exception_types to an empty Object array.

From-SVN: r40730
2001-03-22 06:37:16 +00:00
Kazu Hirata b5f1747c30 h8300.md (movsi_h8300hs): Split the 2nd alternative into two parts.
2001-03-21  Kazu Hirata  <kazu@hxi.com>

	* config/h8300/h8300.md (movsi_h8300hs): Split the 2nd alternative
	into two parts.

From-SVN: r40725
2001-03-22 03:03:26 +00:00
Jason Merrill 46ccf50a6f pt.c (instantiate_decl): Abort if we see a member constant instantiation that doesn't already have its...
* pt.c (instantiate_decl): Abort if we see a member constant
        instantiation that doesn't already have its initializer.
        Downgrade explicit instantiation without definition to pedwarn.

        * cp-tree.h (DECL_TINFO_FN_P, SET_DECL_TINFO_FN_P): Remove.
        * class.c (build_vtable_entry): Don't check DECL_TINFO_FN_P.
        (import_export_decl): Check tinfo_decl_p, not DECL_TINFO_FN_P.

        * cp-tree.h (CLASSTYPE_VTABLE_NEEDS_WRITING): Remove.
        (pending_vtables): Remove.
        * decl2.c (pending_vtables): Remove.
        (import_export_vtable): Use CLASSTYPE_INTERFACE_ONLY, not
        CLASSTYPE_VTABLE_NEEDS_WRITING.
        (import_export_class): Likewise.
        (init_decl2): Don't mark pending_vtables.
        * lex.c (handle_pragma_vtable): Just sorry.
        * pt.c (instantiate_class_template): Don't mess with
        CLASSTYPE_VTABLE_NEEDS_WRITING.
        (mark_class_instantiated): Likewise.
        * ptree.c (print_lang_type): Don't print it.
        * semantics.c (begin_class_definition): Don't set it.

        * pt.c (template_tail): Replace with last_pending_template.
        (maybe_templates, maybe_template_tail): Remove.
        (add_pending_template): Adjust.
        (instantiate_pending_templates): Adjust.

        * cp-tree.h (struct saved_scope): Remove lang_stack field.
        (current_lang_stack): Remove.
        * decl.c (maybe_push_to_top_level): Don't initialize it.
        (duplicate_decls): Use current_lang_depth.
        (xref_basetypes): Likewise.
        * class.c (current_lang_depth): New fn.
        (push_lang_context): Use more varray functionality.
        (pop_lang_context): Likewise.

From-SVN: r40724
2001-03-21 19:55:13 -05:00
Jason Merrill 64d9c3fede collect2.c (is_ctor_dtor): Always use '_' in the file fn names, not '.' or '$'.
* collect2.c (is_ctor_dtor): Always use '_' in the file fn names,
        not '.' or '$'.
        * tree.c (FILE_FUNCTION_FORMAT): Likewise.
        * varasm.c (CHKR_PREFIX): Likewise.

        * error.c (GLOBAL_THING): Always use '__'.

From-SVN: r40723
2001-03-21 19:53:50 -05:00
Richard Kenner 52d76e1128 gcse.c (hash_scan_set): An expression is not anticipatible if it is part of a multi-SET insn.
* gcse.c (hash_scan_set): An expression is not anticipatible if it
	is part of a multi-SET insn.

From-SVN: r40722
2001-03-21 19:21:16 -05:00
Tom Tromey 64ec27c320 * config-ml.in: Handle GCJ and GCJFLAGS.
From-SVN: r40721
2001-03-21 23:55:58 +00:00
Alexandre Petit-Bianco 96c6f62867 re PR java/2333 (ICE in mark_reference_fields)
2001-03-21  Alexandre Petit-Bianco  <apbianco@redhat.com>

	* class.c (layout_class): Fixed push_super_field's second
	argument. Fixes PR java/2333.
	(jdep_resolve_class): Reset TYPE_SIZE if `error_mark_node', it's
	too early to lay innerclasses out.

(http://gcc.gnu.org/ml/gcc-patches/2001-03/msg01582.html)

From-SVN: r40719
2001-03-21 15:50:29 -08:00
Mark Mitchell 71cb928615 * class.c (build_clone): Clear DECL_ASSEMBLER_NAME.
From-SVN: r40717
2001-03-21 21:12:40 +00:00
Richard Kenner bca05d20b8 cse.c (find_comparison_args): Remove previous change.
* cse.c (find_comparison_args): Remove previous change.
	* ifcvt.c (noce_process_if_block): When moving an insn, remove any
	REG_EQUAL notes.

From-SVN: r40715
2001-03-21 15:19:21 -05:00
Richard Kenner 37c7da7b70 * config/i386/i386.md (conditional_trap): Remove warning.
From-SVN: r40714
2001-03-21 15:14:41 -05:00
Jim Blandy 7dce2effb4 cp-demangle.c (struct demangling_def): New fields: is_constructor and is_destructor.
* cp-demangle.c (struct demangling_def): New fields:
is_constructor and is_destructor.
(demangling_new): Initialize them.
(demangle_ctor_dtor_name): Set them, if we detect a constructor
or destructor.
(demangle_v3_with_details, is_gnu_v3_mangled_ctor,
is_gnu_v3_mangled_dtor): New functions.

From-SVN: r40713
2001-03-21 15:01:40 -05:00
Richard Kenner a8d1960882 recog.c (push_operand): Fix error in last change that caused undefined symbol on many targets.
* recog.c (push_operand): Fix error in last change that caused
	undefined symbol on many targets.

From-SVN: r40712
2001-03-21 14:49:54 -05:00
Richard Kenner 4eadbbd5bf sdbout.c: #include ggc.h.
* sdbout.c: #include ggc.h.
 	(sdbout_init): Move to end of file.
	Call ggc_add_tree_root for anonymous_types.
	(sdbout_symbol): Use DECL_NAME for local, not DECL_ASSEMBLER_NAME.
	(sdbout_one_type): Use DECL_NAME for field name.
	* Makefile.in (sdbout.o): Show includes ggc.h.

From-SVN: r40710
2001-03-21 14:43:36 -05:00
Jim Blandy 2d32013ffe demangle.h (enum gnu_v3_constructor_kinds, [...]): New declarations.
* demangle.h (enum gnu_v3_constructor_kinds,
is_gnu_v3_mangled_ctor, enum gnu_v3_destructor_kinds,
is_gnu_v3_mangled_dtor): New declarations.

From-SVN: r40709
2001-03-21 14:37:53 -05:00
Jan Hubicka 0d7d98ee65 i386.c (override_options): Default ix86_regparm to REGPARM_MAX.
* i386.c (override_options): Default ix86_regparm to REGPARM_MAX.
	(override_options): Use properlimits for preferred_stack_boundary.
	(ix86_valid_type_attribute_p): Disable stdcall and cdecl attributes
	on x86_64.
	(ext_register_operand): Accept DImode.
	(load_pic_register): Abort on 64bit.
	(gen_push): Use Pmode instead of SImode.
	(ix86_save_reg): Pic reg is never used on 64bit.
	(ix86_expand_prologue): Likewise.
	(ix86_emit_save_regs): Use Pmode instead of SImode.
	(legitimate_address_p): Check displacement for 64bit.
	(print_operand): Avoid outputting of (%rip) on 64bit.
	(print_operand_address): Output (%rip) where possible.
	(split_di): Abort on 64bit registers.
	(ix86_expand_branch): DImode comparison is simple for x86_64.
	(memory_address_length): Recognize memory addresses formed using PRE/POST modify.
	(ix86_data_alignment, ix86_local_alignment): Align arrays to 16 bytes for x86_64.
	* i386.h (TARGET_USE_SAHF): Disable for 64bit.

From-SVN: r40708
2001-03-21 19:35:48 +00:00
Michael Chastain 191de40709 * Makefile.in: all-m4 depends on all-texinfo.
From-SVN: r40707
2001-03-21 14:34:08 -05:00
Zack Weinberg 49ee944b86 make-temp-file.c: Always default DIR_SEPARATOR to '/'.
* make-temp-file.c: Always default DIR_SEPARATOR to '/'.
	Don't default P_tmpdir to anything.  Try /var/tmp before
	/usr/tmp.

From-SVN: r40706
2001-03-21 19:29:33 +00:00
Theodore Papadopoulo edb7d731b6 basic_file.h: Fix typos in comments.
2001-03-21  Theodore Papadopoulo  <Theodore.Papadopoulo@sophia.inria.fr>

    	* intclude/bits/basic_file.h: Fix typos in comments.

From-SVN: r40705
2001-03-21 19:26:49 +00:00
Tom Tromey 57df195483 uesc.java: New file.
* libjava.compile/uesc.java: New file.
	* libjava.compile/uesc.xfail: New file.

From-SVN: r40704
2001-03-21 18:52:24 +00:00
Tom Tromey 4aed89380c * lex.c (java_read_unicode): Only accept leading `u's.
From-SVN: r40702
2001-03-21 18:50:02 +00:00
Tom Tromey 7e0c895f0e configure: Rebuilt.
* configure: Rebuilt.
	* configure.in (GCJFLAGS): Subst.
	* Makefile.in: Rebuilt.
	* Makefile.am (jv_convert_LDFLAGS): Added -shared-libgcc.
	(gij_LDFLAGS): Likewise.
	(JC1FLAGS): Added GCJFLAGS and removed -g.

From-SVN: r40700
2001-03-21 18:43:03 +00:00