Commit Graph

26223 Commits

Author SHA1 Message Date
Alexandre Oliva
139cfaa75e * configure: Rebuilt.
From-SVN: r31893
2000-02-10 16:16:55 +00:00
Bruce Korb
547a21a8bc old fixincludes coup des gras
From-SVN: r31892
2000-02-10 15:00:06 +00:00
Bruce Korb
89b80b3ece Ian Taylor's new address
From-SVN: r31891
2000-02-10 14:54:27 +00:00
Clinton Popetz
98b7bb3848 function.c (thread_prologue_and_epilogue_insns): Uncomment last change.
* function.c (thread_prologue_and_epilogue_insns): Uncomment
	last change.

From-SVN: r31890
2000-02-10 09:16:33 -05:00
Mark Mitchell
9e4cc72218 ir.texi (ADDR_EXPR): Document the fact that an ADDR_EXPR can be used to create an implicit temporary.
* ir.texi (ADDR_EXPR): Document the fact that an ADDR_EXPR can be
	used to create an implicit temporary.

From-SVN: r31888
2000-02-10 09:07:59 +00:00
Jeff Law
76177fb35a Daily bump.
From-SVN: r31887
2000-02-10 01:45:06 -07:00
Mark Mitchell
64cfdfb8d2 class.c (dfs_modify_vtables): Tweak calculation of functions to override.
* class.c (dfs_modify_vtables): Tweak calculation of functions to
	override.

From-SVN: r31886
2000-02-10 08:24:15 +00:00
Richard Henderson
ae32f34a96 * jump.c (delete_insn): Don't delete user labels at -O0.
From-SVN: r31885
2000-02-09 23:25:24 -08:00
Robert Lipe
7e1878ef57 Makefile.in (gen-protos): Don't depend on HOST_LIBDEPS.
* Makefile.in (gen-protos): Don't depend on HOST_LIBDEPS.
	Don't link with HOST_LIBS.

From-SVN: r31884
2000-02-10 06:28:38 +00:00
Zack Weinberg
756ee60292 configure.in: Correct --help text for --with-dwarf2.
* configure.in: Correct --help text for --with-dwarf2.
	Put tm-dwarf2.h after other tm files, if it's requested.
	* configure: Regenerate.
	* config/tm-dwarf2.h: #undef PREFERRED_DEBUGGING_TYPE before
	defining it.

From-SVN: r31883
2000-02-10 05:32:04 +00:00
Zack Weinberg
bb52fa7f86 cpplib.h: Provide HASHNODE typedef and forward decl of struct hashnode only.
* cpplib.h: Provide HASHNODE typedef and forward decl of
	struct hashnode only.  Kill cpp_hashnode typedef.  MACRODEF,
	DEFINITION, struct hashnode, struct macrodef, struct
	definition, scan_decls prototype, default defn of
	INCLUDE_LEN_FUDGE moved elsewhere.

	* cpphash.h: MACRODEF, DEFINITION, struct macrodef, struct
	definition, and struct hashnode moved here. Remove the unused
	'predefined' field from struct definition.  Replace the 'args'
	union with its sole member.  All users updated (cpphash.c).
	Delete HASHSTEP and MAKE_POS macros, and hashf prototype.  Add
	multiple include guard.

	* cpphash.c (hashf): Make static; use better algorithm; drop
	HASHSIZE parameter; return an unsigned int.
	(cpp_lookup): Drop HASH parameter.  PFILE parameter is
	used. Calculate HASHSIZE modulus here.
	(cpp_install): Drop HASH parameter. Calculate HASHSIZE modulus
	here.
	(create_definition): Drop PREDEFINITION parameter.
	* cpplib.c (do_define): Don't calculate a hash value here.
	Don't pass (keyword == NULL) to create_definition.

	* scan.h: Prototype scan_decls here.
	* cppfiles.c: Move INCLUDE_LEN_FUDGE default defn here.
	* cppexp.c, cppfiles.c, cppinit.c, cpplib.c, fix-header.c: All
	callers of cpp_lookup and cpp_install updated.

From-SVN: r31881
2000-02-10 02:23:08 +00:00
Jonathan Larmour
ae6f3fe9f6 Use -static when testing --gc-sections on native targets
From-SVN: r31880
2000-02-10 01:30:43 +00:00
Zack Weinberg
564ad5f49e cpphash.c (macarg): Hoist all the flag diddling out of the function...
* cpphash.c (macarg): Hoist all the flag diddling out of the
	function...
	(macroexpand): ... and out of the loop that calls macarg.
	Skip over the initial paren before macro arguments with
	cpp_get_non_space_token; point may be some distance before
	that paren.  Abort if it's not there.

	* cpplib.c (parse_clear_mark): Delete function.
	(parse_set_mark, parse_goto_mark): Make static.
	(ACTIVE_MARK_P): New macro.
	(skip_block_comment, skip_line_comment): Do not bump the line
	if ACTIVE_MARK_P is true.
	(cpp_pop_buffer): The buffer to be popped may not have an
	active mark.
	(cpp_get_token): When looking for the initial paren before
	macro arguments, only set a mark in a file buffer, Always
	return to that mark before proceeding to call macroexpand or
	return a NAME token.

	* cpplib.h: Remove prototypes of parse_set_mark,
	parse_clear_mark, parse_goto_mark.
	(struct cpp_options): Rename 'put_out_comments' to
	'discard_comments' and invert its sense.
	* cppinit.c, cpphash.c, cpplib.c: All users of
	put_out_comments changed to use discard_comments, with
	opposite sense.

From-SVN: r31879
2000-02-10 00:26:47 +00:00
Clinton Popetz
3a75e42e81 function.c (thread_prologue_and_epilogue_insns): Don't delete the edge from a block that both jumps and falls through to the...
* function.c (thread_prologue_and_epilogue_insns): Don't delete
	the edge from a block that both jumps and falls through to the
	fallthru block.

From-SVN: r31878
2000-02-09 19:20:41 -05:00
Tom Tromey
7e3b6e312a natRuntime.cc (_load): Call add_library.
* java/lang/natRuntime.cc (_load): Call add_library.
	(loadLibraryInternal): Likewise.

From-SVN: r31877
2000-02-10 00:17:10 +00:00
Tom Tromey
c56c8c43b9 natIconv.cc (Input_iconv::finalize): Call iconv_close when handle is not NULL.
* gnu/gcj/convert/natIconv.cc (Input_iconv::finalize): Call
	iconv_close when handle is not NULL.  Thanks to Andrew Haley.
	(Output_iconv::finalize): Likewise.

From-SVN: r31876
2000-02-10 00:14:54 +00:00
Scott Bambrough
81ee8129ce In PIC mode, make sure that a constant source address is legitimate.
From-SVN: r31873
2000-02-09 20:53:35 +00:00
Alexandre Petit-Bianco
d53cc71518 anonarray3.out: New file.
2000-02-07  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* libjava.lang/anonarray3.out: New file.
	* libjava.lang/anonarray3.java: New file.

From-SVN: r31871
2000-02-09 20:49:34 +00:00
Andrew Haley
71600a4ae0 decl.c (clear_binding_level): Remove excess initializer.
2000-02-09  Andrew Haley  <aph@cygnus.com>

        * decl.c (clear_binding_level): Remove excess initializer.
        (maybe_poplevels): Remove unused variable.
        (force_poplevels): Ditto.
        (struct binding_level): Add comment.

From-SVN: r31870
2000-02-09 20:38:02 +00:00
Tom Tromey
d38c8dab70 * libjava.compile/inner_priv.java: New file.
From-SVN: r31868
2000-02-09 20:33:33 +00:00
Philip Blundell
82e9d97010 Apply Philip Blundell's patch to fix PIC operands.
From-SVN: r31867
2000-02-09 20:00:29 +00:00
Zack Weinberg
2387c1d432 cpplib.c (cpp_define, cpp_undef): Make sure the stacked buffer ends with a newline and a NUL.
* cpplib.c (cpp_define, cpp_undef): Make sure the stacked buffer
	ends with a newline and a NUL.  Don't be so clever manipulating
	strings.

From-SVN: r31864
2000-02-09 18:35:41 +00:00
Andrew Haley
e8b22dd136 java-except.h (struct eh_range): Add `expanded' field.
2000-01-25  Andrew Haley  <aph@cygnus.com>

        * java-except.h (struct eh_range): Add `expanded' field.
        (maybe_start_try): Add end_pc arg.
        (maybe_end_try): Ditto.
	* java-tree.h (force_poplevels): new function.
        * expr.c (expand_byte_code): Don't call maybe_start_try or
        maybe_end_try.
        * except.c (add_handler): Reset expanded.
        (expand_start_java_handler): Set expanded.
        (check_start_handlers): Don't expand a start handler that's
        already been expanded.
        (maybe_start_try): Add end_pc arg.  Only expand a handler which
        ends after end_pc.
	(expand_end_java_handler): call force_poplevels.
	(force_poplevels): new function.
        * decl.c (binding_level): Add start_pc of binding level.
        (maybe_pushlevels): Call maybe_start_try when pushing binding
        levels.
        (maybe_poplevels): Call maybe_end_try when popping binding levels.
        (LARGEST_PC): Define.
        (clear_binding_level): Use LARGEST_PC.

	* java-tree.h (DEBUG_JAVA_BINDING_LEVELS): new define.
	* decl.c (DEBUG_JAVA_BINDING_LEVELS): new define.
	(binding_depth, is_class_level, current_pc): new variables.
        (struct binding_level): ditto.
	(indent): new function.
	(push_jvm_slot): add debugging info.
	(maybe_pushlevels): ditto.
	(maybe_poplevels): ditto.
	(pushlevel): ditto.
	(poplevel): ditto.
	(start_java_method): ditto.
	(give_name_to_locals): comment only.
	* except.c (binding_depth, is_class_level, current_pc):
	new variables.
	(expand_start_java_handler): add debugging info.
	(expand_end_java_handler): ditto.

From-SVN: r31861
2000-02-09 14:08:44 +00:00
Jan Hubicka
665792ebec * reload1.c (reload) Align stack frame to cfun->stack_alignment_needed,
not to BIGGEST_ALIGNMENT.

From-SVN: r31860
2000-02-09 13:38:09 +00:00
Jeff Law
1f7d1a5255 Daily bump.
From-SVN: r31859
2000-02-09 01:45:07 -07:00
Geoff Keating
3f388b42b0 dwarf2.h (DW_CFA_GNU_negative_offset_extended): New constant.
* dwarf2.h (DW_CFA_GNU_negative_offset_extended): New constant.
* dwarf2out.c (dwarf_cfi_name): Print name of new constant.
(reg_save): Use DW_CFA_GNU_negative_offset_extended when needed.
(output_cfi): Handle output of DW_CFA_GNU_negative_offset_extended.
* frame.c (execute_cfa_insn): Handle
DW_CFA_GNU_negative_offset_extended.

From-SVN: r31858
2000-02-09 01:57:21 +00:00
Richard Henderson
5568fb48cc flow.c (tidy_fallthru_edges): Split out from ...
* flow.c (tidy_fallthru_edges): Split out from ...
        (delete_unreachable_blocks): ... here.
        (find_basic_blocks): Use it.

From-SVN: r31857
2000-02-08 15:48:32 -08:00
Richard Kenner
f5a500108a * stmt.c (expand_decl): Do set RTX_UNCHANGING_P for TREE_READONLY.
From-SVN: r31856
2000-02-08 17:11:21 -05:00
Tom Tromey
bad196d78e Properties.java (setProperty): New method.
* java/util/Properties.java (setProperty): New method.
	(store): New method.

From-SVN: r31855
2000-02-08 21:30:45 +00:00
Zack Weinberg
5fa7f88c06 Makefile.in (GEN_PROTOS_OBJS): Remove libcpp.a.
* Makefile.in (GEN_PROTOS_OBJS): Remove libcpp.a.
	(gen_protos.o): Don't depend on cpplib.h or cpphash.h.
	(fix-header.o): Don't depend on cpphash.h.

	* scan.c (hashstr): New function.
	* scan.h: Prototype it.
	* fix-header.c: Don't include cpphash.h.  Use hashstr.
	* gen-protos.c: Don't include cpphash.h or cpplib.h.  Use
	hashstr.  Report hash table statistics.  Add private
	definition of xrealloc.

From-SVN: r31854
2000-02-08 21:27:02 +00:00
Kaveh R. Ghazi
4be2e5d967 * i386.h (TARGET_SWITCHES): Fix typo in option name.
From-SVN: r31853
2000-02-08 17:15:00 +00:00
Clinton Popetz
a617c13f06 function.c (thread_prologue_and_epilogue_insns): Don't replace jumps with returns unless they are jumps to the fallthru block.
* function.c (thread_prologue_and_epilogue_insns): Don't replace
        jumps with returns unless they are jumps to the fallthru block.

From-SVN: r31852
2000-02-08 11:32:20 -05:00
Jan Hubicka
4d6b6776c8 * i386.md (addqi3_cc): Fix contraints.
From-SVN: r31851
2000-02-08 07:59:15 -07:00
Nathan Sidwell
1d3f28d4de * g++.old-deja/g++.other/cast5.C: New test.
From-SVN: r31850
2000-02-08 11:16:09 +00:00
Nathan Sidwell
2c55cdde2e typeck.c (strip_all_pointer_quals): Use TYPE_MAIN_VARIANT, to strip array element qualifiers too.
* typeck.c (strip_all_pointer_quals): Use TYPE_MAIN_VARIANT, to
	strip array element qualifiers too.

From-SVN: r31849
2000-02-08 11:15:24 +00:00
Jeff Law
c4781ce75a Daily bump.
From-SVN: r31848
2000-02-08 01:45:07 -07:00
Hans-Peter Nilsson
73ef99fbd6 * function.c (emit_return_into_block): Wrap in #ifdef HAVE_return.
From-SVN: r31847
2000-02-08 06:09:17 +00:00
Tom Tromey
3fd64b5a09 Runtime.java (_load): Declare.
* java/lang/Runtime.java (_load): Declare.
	(load, loadLibrary): Wrote in terms of _load.
	* java/lang/natRuntime.cc (load): Call JNI_OnLoad if it appears in
	library.
	(loadLibrary): Likewise.
	Include <jni.h>.
	(_load): New method.
	(loadLibrary, load): Removed.

From-SVN: r31846
2000-02-08 00:26:58 +00:00
Tom Tromey
278abd2849 jni.cc (ThrowableClass): New define.
* jni.cc (ThrowableClass): New define.
	(_Jv_JNI_Throw): Check argument.
	(_Jv_JNI_ThrowNew): Likewise.
	(wrap_value): Don't wrap object if it is NULL.
	(_Jv_JNI_DefineClass): Use wrap_value.
	(_Jv_JNI_FindClass): Likewise.
	(_Jv_JNI_GetSuperclass): Likewise.
	(_Jv_JNI_ExceptionOccurred): Likewise.
	(_Jv_JNI_AllocObject): Likewise.
	(_Jv_JNI_GetObjectClass): Likewise.
	(_Jv_JNI_NewString): Likewise.
	(_Jv_JNI_NewStringUTF): Likewise.
	(_Jv_JNI_NewObjectArray): Likewise.
	(_Jv_JNI_GetObjectArrayElement): Likewise.
	(_Jv_JNI_NewPrimitiveArray): Likewise.
	(_Jv_JNI_ToReflectedField): Likewise.
	(_Jv_JNI_ToReflectedMethod): Likewise.
	(_Jv_JNI_AllocObject): Check argument.
	(_Jv_JNI_NewObjectV): Likewise.
	(_Jv_JNI_NewObject): Likewise.
	(_Jv_JNI_NewObjectA): Likewise.
	(_Jv_JNI_GetObjectClass): Likewise.
	(_Jv_JNI_GetField): Likewise.
	(_Jv_JNI_SetField): Likewise.

From-SVN: r31845
2000-02-08 00:23:09 +00:00
Tom Tromey
7c51d9fb95 interpret.cc (PUSHL): Don't use expression statement.
* interpret.cc (PUSHL): Don't use expression statement.
	(PUSHD): Likewise.
	(LOADL): Likewise.
	(STOREL): Likewise.

From-SVN: r31844
2000-02-08 00:17:28 +00:00
Mark Mitchell
ff47d09463 decl.c (store_parm_decls): Don't build cleanups for parameters while processing_template_decl.
* decl.c (store_parm_decls): Don't build cleanups for parameters
	while processing_template_decl.

From-SVN: r31842
2000-02-07 23:41:01 +00:00
Alexandre Petit-Bianco
de9127c1b7 instinit2.out: New file.
* libjava.lang/instinit2.out: New file.
	* libjava.lang/instinit2.java: New file.
	* libjava.lang/instinit.out: New file.
	* libjava.lang/instinit.java: New file.
	* libjava.lang/anonarray2.out: New file.
	* libjava.lang/anonarray2.java: New file.
	* libjava.lang/anonarray.out: New file.
	* libjava.lang/anonarray.java: New file.
	* libjava.lang/nested_with_ctor.out: New file.
	* libjava.lang/nested_with_ctor.java: New file.
	* libjava.lang/anfi.out: New file.
	* libjava.lang/anfi.java: New file.
	* libjava.lang/stub.out: New file.
	* libjava.lang/stub.java: New file.

From-SVN: r31841
2000-02-07 21:40:18 +00:00
Mark Mitchell
f81f5a9db6 cpplib.c (cpp_get_token): Call CPP_BUMP_LINE after reading a carriage return after a macro name.
* cpplib.c (cpp_get_token): Call CPP_BUMP_LINE after reading a
	carriage return after a macro name.

From-SVN: r31840
2000-02-07 21:36:19 +00:00
Tom Tromey
f39b788a15 jni.cc (add_char): Conditional on INTERPRETER.
* jni.cc (add_char): Conditional on INTERPRETER.
	(mangled_name): Likewise.
	(call): Likewise.
	* include/java-interp.h (class _Jv_MethodBase): Conditional on
	INTERPRETER.
	(class _Jv_JNIMethod): Likewise.

From-SVN: r31839
2000-02-07 21:17:30 +00:00
Fred Fish
f766bd4696 beos-elf.h: (ASM_IDENTIFY_GCC): Define to nothing so the gcc2_compiled symbol doesn't...
* i386/beos-elf.h: (ASM_IDENTIFY_GCC): Define to nothing
        so the gcc2_compiled symbol doesn't confuse BeOS debuggers.

From-SVN: r31838
2000-02-07 15:59:19 -05:00
Jason Merrill
70adf8a937 cp-tree.h (struct saved_scope): Add incomplete field.
* cp-tree.h (struct saved_scope): Add incomplete field.
        (namespace_scope_incomplete): New macro.
        * decl.c (pushdecl): Use it.
        (hack_incomplete_structures): Use it.  See through artificial
        binding levels.
        (mark_saved_scope): Mark it.

        Implement access control for nested types.
        * search.c (type_access_control): New fn.
        (accessible_p): Now we do perform access control for types.
        * semantics.c (deferred_type_access_control): New fn.
        (initial_deferred_type_access_control): New fn.
        (begin_function_definition): Call it.  Add lookups parm.
        * decl.c (struct binding_level): Add this_class field.
        (pushlevel_class): Set it.
        (mark_binding_level): Mark it.
        (lookup_name_real): Use it.  Call type_access_control.
        (mark_saved_scope): Mark lookups field.
        * cp-tree.h (flagged_type_tree): Add lookups field.
        (struct saved_scope): Add lookups field.
        (type_lookups): New macro.
        * parse.y (declmods): Now <ftype>.
        (parse_decl): Add lookups parm.  Call
        initial_deferred_type_access_control.
        (lang_extdef): Clear type_lookups.
        (typed_declspecs, declmods, typespec): Set lookups field.
        (initdcl): Call deferred_type_access_control.
        (fn.def1, fn.def2, typed_declspecs1, initdcl0_innards, nomods_initdcl0,
        component_decl_1, named_parm): Adjust.
        * friend.c (is_friend): Nested classes are friends of their
        enclosing classes.

        * class.c (currently_open_derived_class): New fn.
        * method.c (hack_identifier): Use it.

        * lex.c (do_identifier): Remove obsolete code.

        * parse.y (typed_typespecs): Propagate new_type_flag properly.

From-SVN: r31837
2000-02-07 15:36:36 -05:00
Jason Merrill
dd8216e19e update
From-SVN: r31836
2000-02-07 15:35:14 -05:00
Jason Merrill
f4a4b6690e tweak wording
From-SVN: r31835
2000-02-07 15:34:20 -05:00
Zack Weinberg
981cb4378a [multiple changes]
2000-02-07  Zack Weinberg  <zack@wolery.cumb.org>

	* cppfiles.c (deps_output): Count spacers in deps_column.

2000-02-07  Neil Booth  <NeilB@earthling.net>

	* cppinit.c (initialize_dependency_output): If there is no
	suffix, don't try to look for known suffixes.  Use strrchr.
	(cpp_start_read): Remove duplicate initialization.

From-SVN: r31832
2000-02-07 18:34:05 +00:00
Jan Hubicka
c2f8b49149 calls.c (compute_argument_block_size): New argument preferred_stack_boundary.
* calls.c (compute_argument_block_size): New argument
	preferred_stack_boundary.
	(expand_call): update cfun->preferred_stack_boundary, update call of
	compute_argument_block_size
	(emit_library_call): Increate cfun->preferred_stack_boundary
	to PREFERRED_STACK_BOUNDARY
	(emit_library_call_value): Likewise.
	* explow.c (allocate_dynamic_stack_spave): Likewise.
	* function.c (prepare_function_start): Set
	cfun->preferred_stack_boundary
	* function.h (struct function): Add preferred_stack_boundary field.
	* integrate.c (expand_inline_function): Update
	cfun->preferred_stack_boundary and cfun->stack_alignment_needed.
	(copy_rtx_and_substitute): Align frame to stack_alignment_needed only.
	* i386.c (compute_frame_size): Use cfun->preferred_stack_boundary.

From-SVN: r31831
2000-02-07 17:39:40 +00:00