Commit Graph

28711 Commits

Author SHA1 Message Date
Jeff Law
8d867e7d80 Daily bump.
From-SVN: r34353
2000-06-02 01:45:07 -06:00
Benjamin Kosnik
3840fa2a8f std_cwctype.h: Clean.
2000-06-01  Benjamin Kosnik  <bkoz@gnu.org>

	* bits/std_cwctype.h: Clean.
	* bits/std_cwchar.h: Clean, remove cruft.

	* acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Re-work, add bits
	for beginning iconv support.
	Remove _GLIBCPP_HAS_WCHAR_MIN_MAX, roll into _GLIBCPP_USE_WCHAR_T
	macro.
	* acconfig.h: Remove _GLIBCPP_HAS_WCHAR_MIN_MAX.
	* bits/limits_generic.h: Remove.
	* src/gen-num-limits.cc: Same.

	* src/locale.cc: Tweaks.

	* bits/char_traits.h: Tweaks.

From-SVN: r34352
2000-06-02 07:24:15 +00:00
Mark Mitchell
cc057ef343 cp-tree.h (lang_decl_flags): Add anticipated_p.
* cp-tree.h (lang_decl_flags): Add anticipated_p.
	(DECL_ANTICIPATED): Use it.

From-SVN: r34351
2000-06-02 05:45:34 +00:00
J"orn Rennecke
aff2c0666a sh.h (CPP_SPEC): Add -D__NOMACSAVE__ for -mnomacsave.
* sh.h (CPP_SPEC): Add -D__NOMACSAVE__ for -mnomacsave.
	(CONDITIONAL_REGISTER_USAGE): Mac registers are call used
	for TARGET_NOMACSAVE.
	(NOMACSAVE_BIT): Define.
	(TARGET_NOMACSAVE): Define.
	(TARGET_SWITCHES): Add "nomacsave".

From-SVN: r34350
2000-06-02 00:36:32 +01:00
Jason Merrill
18fa855f72 restore comment
From-SVN: r34349
2000-06-01 19:16:50 -04:00
Toshiyasu Morita
400d1b199f * sh.md (untyped_call): Remove excess parameters
From-SVN: r34348
2000-06-02 00:14:27 +01:00
Bryce McKinlay
6518c7b51f re GNATS gcj/127 (gcj dumps core on method invocation on a primitive type)
2000-05-23  Bryce McKinlay  <bryce@albatross.co.nz>

       * parse.y (patch_method_invocation): Don't try to lookup methods
       in primitive types.

(This fixes the PR gcj/127:
 http://sourceware.cygnus.com/ml/java-prs/2000-q1/msg00011.html)

From-SVN: r34347
2000-06-01 13:43:37 -07:00
Stan Cox
ee418a779a varray.h (VARRAY_PUSH_GENERIC_PTR, [...]): Fix macro argument typo.
2000-06-01  Stan Cox  <scox@cygnus.com>
	* varray.h (VARRAY_PUSH_GENERIC_PTR, VARRAY_PUSH_CHAR_PTR): Fix
	macro argument typo.

From-SVN: r34346
2000-06-01 20:13:29 +00:00
Zack Weinberg
1082afb6c2 compare2.c (case 12): XFAIL.
* gcc.dg/compare2.c (case 12): XFAIL.
	* gcc.dg/noreturn-1.c (foo7, foo8): XFAIL.
	* gcc.dg/noreturn-2.c (noreturn): XFAIL.

From-SVN: r34345
2000-06-01 20:10:49 +00:00
Zack Weinberg
d7a2e0f70b [multiple changes]
2000-06-01  Zack Weinberg  <zack@wolery.cumb.org>

	* cpplex.c (maybe_macroexpand): Use CPP_WTRADITIONAL.  Improve
	error message.
	* cpplib.c (parse_include): Remove support for VAX-C
	"#include starlet" misfeature.

	* gcc.dg/cpp-tradwarn2.c: Update egrep pattern.

2000-05-31 Laurynas Biveinis <lauras@softhome.net>

	* cppfiles.c: conditionally define O_BINARY.
	(open_include_file): pass O_BINARY to open().

From-SVN: r34344
2000-06-01 20:06:57 +00:00
Alexandre Petit-Bianco
0ba154aa23 re GNATS gcj/207 (Compiler failure)
Thu Apr 27 17:47:34 2000  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* jcf-parse.c (jcf_parse_source): Reset current_class and
 	current_function_decl to NULL before parsing a new file.

(This fixes the PR gcj/207:
 http://sourceware.cygnus.com/ml/java-prs/2000-q2/msg00044.html)

From-SVN: r34343
2000-06-01 11:26:16 -07:00
Richard Henderson
eb9c1bb6e2 i960.c (i960_br_predict_opcode): Remove.
* i960.c (i960_br_predict_opcode): Remove.
        (i960_print_operand) [+]: Emit branch prediction hints.
        (i960_function_arg): Return early for VOIDmode.
        (i960_round_align): Return early for incomplete types.
        * i960.h (PRINT_OPERAND_PUNCT_VALID_P): New.
        * i960.md (all conditional branches): Add "%+".

From-SVN: r34342
2000-06-01 09:29:09 -07:00
Richard Kenner
f824e5c36e alias.c (get_alias_set): Don't call language-specific routine more than is needed and clean up code a bit.
* alias.c (get_alias_set): Don't call language-specific routine more
	than is needed and clean up code a bit.
	* c-common.c (c_get_alias_set): All references whose type
	is char get alias set 0, but character types need not.
	* varasm.c (make_function_rtl): Don't call set_mem_attributes.
	(make_decl_rtl): Don't call it for FUNCTION_DECL.

From-SVN: r34341
2000-06-01 12:18:18 -04:00
Alexandre Petit-Bianco
611a4b873e re GNATS gcj/129 (Static array length access bug in gcj)
2000-05-02  Alexandre Petit-Bianco  <apbianco@cygnus.com>

        * parse.y (resolve_field_access): Call the appropriate <clinit>
        before accessing the length of a static array. Craft a decl for
        the field while its time.

(Fixes the PR #129:
 http://sourceware.cygnus.com/ml/java-prs/2000-q1/msg00013.html)

From-SVN: r34340
2000-06-01 09:04:14 -07:00
Bruce Korb
079b71f5ab new check result files for fixinc
From-SVN: r34339
2000-06-01 14:51:11 +00:00
Clinton Popetz
a940d8bd48 i386.c (ix86_use_fcomi_compare): Make global.
* config/i386/i386.c (ix86_use_fcomi_compare): Make global.
	* config/i386/i386-protos.h (ix86_use_fcomi_compare): Declare.
	* config/i386/i386.md (*fp_jcc_3, *fp_jcc_4): Disable if we
	will use FCOMI.

From-SVN: r34338
2000-06-01 10:41:31 -04:00
Richard Henderson
03d2f2b800 * Makefile.in (c-decl.o): Depend on $(EXPR_H), not expr.h.
From-SVN: r34337
2000-06-01 03:13:19 -07:00
Richard Henderson
4ac4357be5 * decl.c (init_decl_processing): Set lang_get_alias_set first thing.
From-SVN: r34336
2000-06-01 02:44:58 -07:00
Richard Henderson
bc11d9b803 * c-decl.c (init_decl_processing): Set lang_get_alias_set first thing.
From-SVN: r34335
2000-06-01 02:44:37 -07:00
Richard Henderson
f3798d124f decl2.c (unsupported_options): Fix typo, make const.
* decl2.c (unsupported_options): Fix typo, make const.
        (lang_decode_option): Fix bsearch argument order.

From-SVN: r34334
2000-06-01 02:40:07 -07:00
Jeff Law
a0179c6b75 Daily bump.
From-SVN: r34333
2000-06-01 01:45:08 -06:00
Alexandre Petit-Bianco
152de06864 class.c (common_enclosing_context_p): New function.
2000-04-24  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* class.c (common_enclosing_context_p): New function.
	* java-tree.h (common_enclosing_context_p): Added prototype.
	* parse.h (INNER_ENCLOSING_SCOPE_CHECK): Relaxed test to allow
	classes sharing an outer context with the current instance.
	* parse.y (build_access_to_thisn): Fixed leading comment.
	(verify_constructor_super): New local `supper_inner'. Skip
	enclosing context argument in the case of inner class constructors.
	(patch_method_invocation): Insert proper context as second
	parameter to pure inner class constructor super invocations.

This fixes the Java PR #177.

From-SVN: r34332
2000-06-01 00:44:58 -07:00
Mark Mitchell
3aac3c2fd4 init.c (resolve_offset_ref): Remove check for TREE_ADDRESSABLE on FIELD_DECLs.
* init.c (resolve_offset_ref): Remove check for TREE_ADDRESSABLE
	on FIELD_DECLs.

From-SVN: r34331
2000-06-01 07:33:19 +00:00
Alexandre Petit-Bianco
cedea51000 re GNATS gcj/71 (failure to compile an interface method invocation on a sub-interface)
2000-04-05  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* jcf-write.c (generate_bytecode_insns): At invokation time,
	always relate an interface method to the type of its selector.

(Fix to the PR #71:
 http://sourceware.cygnus.com/ml/java-prs/1999-q4/msg00040.html)

From-SVN: r34330
2000-05-31 23:41:11 -07:00
Alexandre Petit-Bianco
92d8351549 parse.y (maybe_yank_clinit): New function.
2000-04-17  Alexandre Petit-Bianco  <apbianco@cygnus.com>

        * parse.y (maybe_yank_clinit): New function.
        (maybe_generate_pre_expand_clinit): Always link <clinit> at the
        end of the list of methods belonging to a class.
        (java_complete_expand_method): Check whether <clinit> is really
        necessary and expand it accordingly.

From-SVN: r34329
2000-05-31 22:54:26 -07:00
Benjamin Kosnik
64cdd351dd locale_facets.tcc (num_get<char>::_M_extract): Fix signage, exponent, and scientific formatting issues.
2000-05-31  Russell Davidson  <russell@ehess.cnrs-mrs.fr>

	* bits/locale_facets.tcc (num_get<char>::_M_extract): Fix signage,
	exponent, and scientific formatting issues.
	* testsuite/27_io/istream_extractor_arith.cc (test09): Add tests.

From-SVN: r34328
2000-06-01 02:55:30 +00:00
Branko Cibej
b2c62b3c64 limits_generic.h (numeric_limits<wchar_t>): Use WCHAR_MIN and WCHAR_MAX instead of WCHART_MIN and WCHART_MAX.
2000-05-31  Branko Cibej  <branko.cibej@hermes.si>

        * bits/limits_generic.h (numeric_limits<wchar_t>): Use WCHAR_MIN
        and WCHAR_MAX instead of WCHART_MIN and WCHART_MAX.

From-SVN: r34327
2000-06-01 01:36:14 +00:00
Richard Kenner
66dc580a1d cp-tree.h (c_get_alias_set): Deleted.
* cp-tree.h (c_get_alias_set): Deleted.
	* Makefile.in (decl.o): Include ../expr.h.
	* decl.c (expr.h): Include.
	(init_decl_processing): Call record_component_aliases for arrays.
	(grokdeclarator): Likewise.
	Set TREE_ADDRESSABLE for fields that aren't bitfields.
	* tree.c (build_cplus_array_type_1): Call record_component_aliases.

From-SVN: r34326
2000-05-31 21:16:52 -04:00
Richard Kenner
289c5b4547 Makefile.in (c-decl.o): Depend on rtl.h and expr.h.
* Makefile.in (c-decl.o): Depend on rtl.h and expr.h.
	* alias.c (struct alias_entry): alias_set is HOST_WIDE_INT.
	(REG_BASE_VALUE): Remove unneeded cast to unsigned.
	(get_alias_set_entry): ALIAS_SET arg is HOST_WIDE_INT.
	(find_base_decl): New function, from c_find_base_decl in c-common.c.
	(new_alias_set): Moved from tree.c; return is HOST_WIDE_INT.
	(get_alias_set): Likewise.
	Major rework to do more things and allow language-specific code
	to just handle special-cases.
	(record_alias_subset): Args are HOST_WIDE_INT.
	(record_component_alias): Local vars are HOST_WIDE_INT.
	Don't handle COMPLEX_EXPR.
	(get_varargs_alias_set): Moved from builtins.c.
	(get_frame_alias_set): New function.
	* builtins.c (expand_builtin_return_address): Use frame alias set.
	(expand_builtin_setjmp, expand_builtin_longjmp): Use alias set
	for setjmp buffer.
	(get_memory_rtx): Rework to use set_mem_attributes.
	(get_varargs_alias_set): Deleted from here.
	* c-common.c (c_apply_type_quals_to_decl): Alias sets now HOST_WIDE_INT.
	(c_find_base_decl): Deleted from here.
	(c_get_alias_set): Remove many cases and rework to just handle
	C-specific cases.
	* c-common.h (c_get_alias_set): Returns HOST_WIDE_INT.
	* c-decl.c (rtl.h, expr.h): Now included.
	(init_decl_processing): Call record_component_aliases on array types.
	(grokdeclarator): Likewise.
	Set TREE_ADDRESSABLE for all fields that are not bitfields.
	* c-typeck.c (common_type): Call record_component_aliases for array.
	* caller-save.c (setup_save_areas): Rework register loop for unsigned.
	Set all save areas to the frame alias set.
	* calls.c (initialie_argument_information): Call set_mem_attributes.
	(compute_argument_addresses, expand_call): Likewise.
	* explow.c (set_mem_attributes): New function.
	(stabilize): Use MEM_COPY_ATTRIBUTES and force_reg.
	* expr.c (struct move_by_pieces): Remove {to,from}_{struct,readonly}.
	LEN and OFFSET now HOST_WIDE_INT.
	(clear_by_pieces): Similar changes.
	(move_by_pieces): LEN now HOST_WIDE_INT; don't set deleted fields.
	(move_by_pieces_ninsns): Now returns unsigned HOST_WIDE_INT.
	(move_by_pieces_1): Don't use deleted fields, use MEM_COPY_ATTRIBUTES.
	(clear_by_pieces_1): Likewise.
	(emit_push_insn): Call set_mem_attributes.
	(expand_expr, case INDIRECT_REF): Likewise.
	(expand_expr, case VAR_DECL): Call change_address.
	* expr.h (ADD_PARM_SIZE, SUB_PARM_SIZE): Use host_integerp and
	tree_low_cst.
	(get_varargs_alias_set, get_frame_alias_set): New decls.
	(record_base_value, record_alias_subset, lang_get_alias_set): Likewise.
	(new_alias_set, set_mem_attributes): Likewse.
	* function.c (struct temp_slot): ALIAS_SET is HOST_WIDE_INT.
	(assign_stack_temp_for_type): Likewise.
	Can split slot even if alias set since can copy.
	Set MEM_ALIAS_SET and MEM_SET_IN_STRUCT_P.
	(assign_temp): Use host_integerp and tree_low_cst.
	(put_var_into_stack): Properly handle SAVE_EXPR.
	(put_addressof_into_stack): Likewise.
	(assign_parms): Call set_mem_attributes.
	Delete #if 0 code.
	(fix_lexical_address): Put reference to chain into frame alias set.
	(expand_function_start): Call set_mem_attributes.
	* integrate.c (expand_inline_function): Likewise.
	* recog.c (adj_offsettable_operand): Use MEM_COPY_ATTRIBUTES.
	* regmove.c (try_apply_stack_adjustment): Likewise.
	* reload.c (push_reload, make_memloc): Likewise.
	* reload1.c (alter_reg): Make alias sets for spilled pseudos.
	* rtl.def (MEM): Update comment.
	* rtl.h (MEM_ALIAS_SET): Now uses XCWINT.
	(move_by_pieces): Change length to HOST_WIDE_INT.
	(record_base_value, record_alias_subset): Delete from here.
	* stmt.c (expand_decl): Call set_mem_attributes.
	* stor-layout.c (finish_record_layout): Call record_component_aliases.i
	* toplev.c (compile_file): Call init_alias_once earlier.
	* tree.c (lang_get_alias_set, get_alias_set, new_alias_set): Deleted
	from here: now in alias.c.
	* tree.h (struct tree_type): alias_set is HOST_WIDE_INT.
	(struct tree_decl): Likewise.
	(get_alias_set, new_alias_set, lang_get_alias_set): Deleted from here.
	* varasm.c (make_function_rtl, make_decl_rtl): Call set_mem_attributes.
	(output_constant_def, force_const_mem): Likewise.
	* cp/Makefile.in (decl.o): Include ../expr.h.
	* cp/decl.c (expr.h): Include.
	(init_decl_processing): Call record_component_aliases for arrays.
	(grokdeclarator): Likewise.
	Set TREE_ADDRESSABLE for fields that aren't bitfields.
	* cp/tree.c (build_cplus_array_type_1): Call record_component_aliases.

From-SVN: r34325
2000-05-31 21:12:19 -04:00
Nathan Myers
149a0abf24 thanks.html: edit own credits
2000-05-31  Nathan Myers  <ncm@cantrip.org>

       * docs/thanks.html: edit own credits

From-SVN: r34324
2000-06-01 01:06:56 +00:00
Benjamin Kosnik
83bcda1e41 generic_shadow.h: Remaining _C_Shadow -> _C_shadow fix.
2000-05-31  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* bits/generic_shadow.h: Remaining _C_Shadow -> _C_shadow fix.

	* acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Add strtoull checks...

From-SVN: r34323
2000-06-01 01:01:34 +00:00
Benjamin Kosnik
209fe19b16 acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Add strtoull checks...
2000-05-31  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Add strtoull checks...

From-SVN: r34322
2000-06-01 00:56:37 +00:00
Benjamin Kosnik
30ff6342d4 [multiple changes]
2000-05-31  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Add strtoull checks...

2000-05-31 Steven King <sxking@uswest.net>

        * shadow/time.h: fix typo
        * shadow/wchar.h: ifdef __USE_GNU for wcsdup
        * shadow/bits/std_cwchar.h: ditto
        * shadow/bits/std_cstdlib.h: add overloads of abs and div for long
        and long long.

From-SVN: r34321
2000-06-01 00:52:26 +00:00
Alexandre Petit-Bianco
0f145be85b parse.y (resolve_field_access): Complete the DECL_INITIAL tree before using it as the accessed field.
2000-05-31  Alexandre Petit-Bianco  <apbianco@cygnus.com>

        * parse.y (resolve_field_access): Complete the DECL_INITIAL tree
        before using it as the accessed field.

From-SVN: r34320
2000-05-31 17:28:32 -07:00
Richard Henderson
ac9cd70f20 ia64.c (sdata_symbolic_operand): Consider small CONSTANT_POOL_ADDRESS_P addresses for .sdata.
* config/ia64/ia64.c (sdata_symbolic_operand): Consider small
        CONSTANT_POOL_ADDRESS_P addresses for .sdata.
        * config/ia64/sysv4.h (SELECT_RTX_SECTION): New.

From-SVN: r34319
2000-05-31 17:14:13 -07:00
Richard Henderson
85548039c4 ia64-protos.h (ia64_expand_prediction): Remove.
* config/ia64/ia64-protos.h (ia64_expand_prediction): Remove.
        * config/ia64/ia64.c (ia64_expand_prediction): Move code ...
        (ia64_print_operand) [+]: ... here.  Use current_output_insn.
        * config/ia64/ia64.h (PRINT_OPERAND_PUNCT_VALID_P): New.
        * config/ia64/ia64.md (all branch/call patterns): Use %+.

From-SVN: r34318
2000-05-31 17:10:35 -07:00
Richard Henderson
18153f6ceb ifcvt.c (merge_if_block): Be prepared for JOIN to have no remaining edges.
* ifcvt.c (merge_if_block): Be prepared for JOIN to have no
        remaining edges.
        (find_if_block): Allow THEN with no outgoing edges.
        * flow.c (merge_blocks_nomove): Remove a barrier not following
        a jump as well.

From-SVN: r34317
2000-05-31 17:03:36 -07:00
Richard Henderson
e0fa93b3ca * ifcvt.c (cond_exec_process_insns): Don't ever ignore clobbers.
From-SVN: r34316
2000-05-31 16:58:46 -07:00
Richard Henderson
abb9a4c570 flow.c (merge_blocks_nomove): Remove a barrier not following a jump as well.
* flow.c (merge_blocks_nomove): Remove a barrier not following
        a jump as well.

From-SVN: r34315
2000-05-31 16:57:00 -07:00
Tom Tromey
2771fe54e3 java-tree.h (boolean_array_vtable, [...]): Declare.
* java-tree.h (boolean_array_vtable, byte_array_vtable,
	char_array_vtable, short_array_vtable, int_array_vtable,
	long_array_vtable, float_array_vtable, double_array_vtable):
	Declare.
	* expr.c (get_primitive_array_vtable): New function.
	(create_primitive_vtable): New function.
	(java_lang_expand_expr): Enable code to statically generate
	arrays.
	* decl.c (init_decl_processing): Create primitive vtables.
	(boolean_array_vtable, byte_array_vtable, char_array_vtable,
	short_array_vtable, int_array_vtable, long_array_vtable,
	float_array_vtable, double_array_vtable): Define.

From-SVN: r34314
2000-05-31 23:55:54 +00:00
Richard Henderson
9bcfe71d16 Makefile.in (STROBJS): Get memmove.o from configure.
* Makefile.in (STROBJS): Get memmove.o from configure.
        * configure.in (RANLIB): Detect and substitute.
        (memmove): Detect and substitute.
        * memmove.c (memmove): Use size_t.

From-SVN: r34313
2000-05-31 16:54:07 -07:00
Tom Tromey
c74e221410 prims.cc (DECLARE_PRIM_TYPE): Define a vtable as well.
* prims.cc (DECLARE_PRIM_TYPE): Define a vtable as well.
	(_Jv_PrimClass): Set `methods' by calling _Jv_FindArrayClass.
	* include/jvm.h (struct _Jv_ArrayVTable): Declare.
	(NUM_OBJECT_METHODS): New define.
	* java/lang/natClassLoader.cc (_Jv_FindArrayClass): Added
	`array_vtable' parameter.  Added assertion.
	* java/lang/Class.h (_Jv_FindArrayClass): Added `array_vtable'
	parameter.

From-SVN: r34312
2000-05-31 23:50:37 +00:00
Bryce McKinlay
f1aa7a521a cni.h: Include <string.h>.
2000-05-31  Bryce McKinlay  <bryce@albatross.co.nz>

	* gcj/cni.h: Include <string.h>.
	* defineclass.cc: Include <alloca.h>.
	* interpret.cc: Ditto.
	* gij.cc: Include <stdlib.h>.

From-SVN: r34311
2000-05-31 23:49:19 +01:00
Richard Henderson
eb7e5da2fc flow.c (propagate_block): Move initialization of mem_set_list ...
* flow.c (propagate_block): Move initialization of mem_set_list ...
        (init_propagate_block_info): ... here.  Also track blocks with
        no successors; don't scan insns if ! PROP_SCAN_DEAD_CODE.

From-SVN: r34310
2000-05-31 15:29:38 -07:00
Richard Kenner
1febe16ba4 Add documentation of TREE_ADDRESSABLE in FIELD_DECL
From-SVN: r34309
2000-05-31 16:53:37 -04:00
Richard Kenner
051c57dafd Makefile.in (c-decl.o): Depend on rtl.h and expr.h.
* Makefile.in (c-decl.o): Depend on rtl.h and expr.h.
	* alias.c (struct alias_entry): alias_set is HOST_WIDE_INT.
	(REG_BASE_VALUE): Remove unneeded cast to unsigned.
	(get_alias_set_entry): ALIAS_SET arg is HOST_WIDE_INT.
	(find_base_decl): New function, from c_find_base_decl in c-common.c.
	(new_alias_set): Moved from tree.c; return is HOST_WIDE_INT.
	(get_alias_set): Likewise.
	Major rework to do more things and allow language-specific code
	to just handle special-cases.
	(record_alias_subset): Args are HOST_WIDE_INT.
	(record_component_alias): Local vars are HOST_WIDE_INT.
	Don't handle COMPLEX_EXPR.
	(get_varargs_alias_set): Moved from builtins.c.
	(get_frame_alias_set): New function.
	* builtins.c (expand_builtin_return_address): Use frame alias set.
	(expand_builtin_setjmp, expand_builtin_longjmp): Use alias set
	for setjmp buffer.
	(get_memory_rtx): Rework to use set_mem_attributes.
	(get_varargs_alias_set): Deleted from here.
	* c-common.c (c_apply_type_quals_to_decl): Alias sets now HOST_WIDE_INT.
	(c_find_base_decl): Deleted from here.
	(c_get_alias_set): Remove many cases and rework to just handle
	C-specific cases.
	* c-common.h (c_get_alias_set): Returns HOST_WIDE_INT.
	* c-decl.c (rtl.h, expr.h): Now included.
	(init_decl_processing): Call record_component_aliases on array types.
	(grokdeclarator): Likewise.
	Set TREE_ADDRESSABLE for all fields that are not bitfields.
	* c-typeck.c (common_type): Call record_component_aliases for array.
	* caller-save.c (setup_save_areas): Rework register loop for unsigned.
	Set all save areas to the frame alias set.
	* calls.c (initialie_argument_information): Call set_mem_attributes.
	(compute_argument_addresses, expand_call): Likewise.
	* explow.c (set_mem_attributes): New function.
	(stabilize): Use MEM_COPY_ATTRIBUTES and force_reg.
	* expr.c (struct move_by_pieces): Remove {to,from}_{struct,readonly}.
	LEN and OFFSET now HOST_WIDE_INT.
	(clear_by_pieces): Similar changes.
	(move_by_pieces): LEN now HOST_WIDE_INT; don't set deleted fields.
	(move_by_pieces_ninsns): Now returns unsigned HOST_WIDE_INT.
	(move_by_pieces_1): Don't use deleted fields, use MEM_COPY_ATTRIBUTES.
	(clear_by_pieces_1): Likewise.
	(emit_push_insn): Call set_mem_attributes.
	(expand_expr, case INDIRECT_REF): Likewise.
	(expand_expr, case VAR_DECL): Call change_address.
	* expr.h (ADD_PARM_SIZE, SUB_PARM_SIZE): Use host_integerp and
	tree_low_cst.
	(get_varargs_alias_set, get_frame_alias_set): New decls.
	(record_base_value, record_alias_subset, lang_get_alias_set): Likewise.
	(new_alias_set, set_mem_attributes): Likewse.
	* function.c (struct temp_slot): ALIAS_SET is HOST_WIDE_INT.
	(assign_stack_temp_for_type): Likewise.
	Can split slot even if alias set since can copy.
	Set MEM_ALIAS_SET and MEM_SET_IN_STRUCT_P.
	(assign_temp): Use host_integerp and tree_low_cst.
	(put_var_into_stack): Properly handle SAVE_EXPR.
	(put_addressof_into_stack): Likewise.
	(assign_parms): Call set_mem_attributes.
	Delete #if 0 code.
	(fix_lexical_address): Put reference to chain into frame alias set.
	(expand_function_start): Call set_mem_attributes.
	* integrate.c (expand_inline_function): Likewise.
	* recog.c (adj_offsettable_operand): Use MEM_COPY_ATTRIBUTES.
	* regmove.c (try_apply_stack_adjustment): Likewise.
	* reload.c (push_reload, make_memloc): Likewise.
	* reload1.c (alter_reg): Make alias sets for spilled pseudos.
	* rtl.def (MEM): Update comment.
	* rtl.h (MEM_ALIAS_SET): Now uses XCWINT.
	(move_by_pieces): Change length to HOST_WIDE_INT.
	(record_base_value, record_alias_subset): Delete from here.
	* stmt.c (expand_decl): Call set_mem_attributes.
	* stor-layout.c (finish_record_layout): Call record_component_aliases.i
	* toplev.c (compile_file): Call init_alias_once earlier.
	* tree.c (lang_get_alias_set, get_alias_set, new_alias_set): Deleted
	from here: now in alias.c.
	* tree.h (struct tree_type): alias_set is HOST_WIDE_INT.
	(struct tree_decl): Likewise.
	(get_alias_set, new_alias_set, lang_get_alias_set): Deleted from here.
	* varasm.c (make_function_rtl, make_decl_rtl): Call set_mem_attributes.
	(output_constant_def, force_const_mem): Likewise.
	* cp/Makefile.in (decl.o): Include ../expr.h.
	* cp/decl.c (expr.h): Include.
	(init_decl_processing): Call record_component_aliases for arrays.
	(grokdeclarator): Likewise.
	Set TREE_ADDRESSABLE for fields that aren't bitfields.
	* cp/tree.c (build_cplus_array_type_1): Call record_component_aliases.

From-SVN: r34308
2000-05-31 16:01:57 -04:00
Richard Henderson
26a41784e0 * jump.c (jump_optimize_1): Revert 05-18 change.
From-SVN: r34307
2000-05-31 12:34:19 -07:00
Mark Mitchell
2228d450a9 invoke.texi: Remove documentation for -fguiding-decls.
* invoke.texi: Remove documentation for -fguiding-decls.

	Remove guiding declaration support.
	* cp/cp-tree.h (flag_dump_translation_unit): Make it const.
	(flag_guiding_decls): Remove.
	* call.c (build_user_type_conversion_1): Remove support for
	guiding decls.
	(build_new_function_call): Likewise.
	(build_new_op): Likewise.
	(build_new_method_call): Likewise.
	* decl.c (start_function): Likewise.
	* friend.c (is_friend): Likewise.
	(do_friend): Likewise.
	* decl2.c ((flag_dump_translation_unit): Make it const.
	(flag_guiding_decls): Remove.
	(unsupported_options): New variable
	(compare_options): New function.
	(lang_decode_option): Use them.

From-SVN: r34306
2000-05-31 19:27:12 +00:00
Richard Kenner
3bdf5ad138 Makefile.in (c-decl.o): Depend on rtl.h and expr.h.
* Makefile.in (c-decl.o): Depend on rtl.h and expr.h.
	* alias.c (struct alias_entry): alias_set is HOST_WIDE_INT.
	(REG_BASE_VALUE): Remove unneeded cast to unsigned.
	(get_alias_set_entry): ALIAS_SET arg is HOST_WIDE_INT.
	(find_base_decl): New function, from c_find_base_decl in c-common.c.
	(new_alias_set): Moved from tree.c; return is HOST_WIDE_INT.
	(get_alias_set): Likewise.
	Major rework to do more things and allow language-specific code
	to just handle special-cases.
	(record_alias_subset): Args are HOST_WIDE_INT.
	(record_component_alias): Local vars are HOST_WIDE_INT.
	Don't handle COMPLEX_EXPR.
	(get_varargs_alias_set): Moved from builtins.c.
	(get_frame_alias_set): New function.
	* builtins.c (expand_builtin_return_address): Use frame alias set.
	(expand_builtin_setjmp, expand_builtin_longjmp): Use alias set
	for setjmp buffer.
	(get_memory_rtx): Rework to use set_mem_attributes.
	(get_varargs_alias_set): Deleted from here.
	* c-common.c (c_apply_type_quals_to_decl): Alias sets now HOST_WIDE_INT.
	(c_find_base_decl): Deleted from here.
	(c_get_alias_set): Remove many cases and rework to just handle
	C-specific cases.
	* c-common.h (c_get_alias_set): Returns HOST_WIDE_INT.
	* c-decl.c (rtl.h, expr.h): Now included.
	(init_decl_processing): Call record_component_aliases on array types.
	(grokdeclarator): Likewise.
	Set TREE_ADDRESSABLE for all fields that are not bitfields.
	* c-typeck.c (common_type): Call record_component_aliases for array.
	* caller-save.c (setup_save_areas): Rework register loop for unsigned.
	Set all save areas to the frame alias set.
	* calls.c (initialie_argument_information): Call set_mem_attributes.
	(compute_argument_addresses, expand_call): Likewise.
	* explow.c (set_mem_attributes): New function.
	(stabilize): Use MEM_COPY_ATTRIBUTES and force_reg.
	* expr.c (struct move_by_pieces): Remove {to,from}_{struct,readonly}.
	LEN and OFFSET now HOST_WIDE_INT.
	(clear_by_pieces): Similar changes.
	(move_by_pieces): LEN now HOST_WIDE_INT; don't set deleted fields.
	(move_by_pieces_ninsns): Now returns unsigned HOST_WIDE_INT.
	(move_by_pieces_1): Don't use deleted fields, use MEM_COPY_ATTRIBUTES.
	(clear_by_pieces_1): Likewise.
	(emit_push_insn): Call set_mem_attributes.
	(expand_expr, case INDIRECT_REF): Likewise.
	(expand_expr, case VAR_DECL): Call change_address.
	* expr.h (ADD_PARM_SIZE, SUB_PARM_SIZE): Use host_integerp and
	tree_low_cst.
	(get_varargs_alias_set, get_frame_alias_set): New decls.
	(record_base_value, record_alias_subset, lang_get_alias_set): Likewise.
	(new_alias_set, set_mem_attributes): Likewse.
	* function.c (struct temp_slot): ALIAS_SET is HOST_WIDE_INT.
	(assign_stack_temp_for_type): Likewise.
	Can split slot even if alias set since can copy.
	Set MEM_ALIAS_SET and MEM_SET_IN_STRUCT_P.
	(assign_temp): Use host_integerp and tree_low_cst.
	(put_var_into_stack): Properly handle SAVE_EXPR.
	(put_addressof_into_stack): Likewise.
	(assign_parms): Call set_mem_attributes.
	Delete #if 0 code.
	(fix_lexical_address): Put reference to chain into frame alias set.
	(expand_function_start): Call set_mem_attributes.
	* integrate.c (expand_inline_function): Likewise.
	* recog.c (adj_offsettable_operand): Use MEM_COPY_ATTRIBUTES.
	* regmove.c (try_apply_stack_adjustment): Likewise.
	* reload.c (push_reload, make_memloc): Likewise.
	* reload1.c (alter_reg): Make alias sets for spilled pseudos.
	* rtl.def (MEM): Update comment.
	* rtl.h (MEM_ALIAS_SET): Now uses XCWINT.
	(move_by_pieces): Change length to HOST_WIDE_INT.
	(record_base_value, record_alias_subset): Delete from here.
	* stmt.c (expand_decl): Call set_mem_attributes.
	* stor-layout.c (finish_record_layout): Call record_component_aliases.i
	* toplev.c (compile_file): Call init_alias_once earlier.
	* tree.c (lang_get_alias_set, get_alias_set, new_alias_set): Deleted
	from here: now in alias.c.
	* tree.h (struct tree_type): alias_set is HOST_WIDE_INT.
	(struct tree_decl): Likewise.
	(get_alias_set, new_alias_set, lang_get_alias_set): Deleted from here.
	* varasm.c (make_function_rtl, make_decl_rtl): Call set_mem_attributes.
	(output_constant_def, force_const_mem): Likewise.
	* cp/Makefile.in (decl.o): Include ../expr.h.
	* cp/decl.c (expr.h): Include.
	(init_decl_processing): Call record_component_aliases for arrays.
	(grokdeclarator): Likewise.
	Set TREE_ADDRESSABLE for fields that aren't bitfields.
	* cp/tree.c (build_cplus_array_type_1): Call record_component_aliases.

From-SVN: r34305
2000-05-31 14:37:31 -04:00
Richard Henderson
99923eedd0 * configure.in: Fix typo last change.
From-SVN: r34304
2000-05-31 11:10:28 -07:00