Commit Graph

24636 Commits

Author SHA1 Message Date
Mark Mitchell 81631c486e Makefile.in (ggc-common.o): Depend on genrtl.h.
* Makefile.in (ggc-common.o): Depend on genrtl.h.
	(ggc-simple.o): Likewise.
	(ggc-page.o): Likewise.

From-SVN: r30057
1999-10-17 17:59:07 +00:00
Mark Mitchell 7192e1387b dump.c (dequeue_and_dump): Handle CLEANUP_POINT_EXPR.
* dump.c (dequeue_and_dump): Handle CLEANUP_POINT_EXPR.

	* ir.texi: Clean up documentation of RETURN_INIT.

From-SVN: r30056
1999-10-17 17:40:12 +00:00
Andrew MacLeod a42cd96552 basic-block.h (pre_edge_lcm, [...]): Prototype for exported functions.
* basic-block.h (pre_edge_lcm, pre_edge_rev_lcm, compute_available):
        Prototype for exported functions.
        (pre_lcm, pre_rev_lcm): Remove prototypes.
        * gcse.c (compute_ae_kill): Add ae_gen and ae_kill as parameters.
        (compute_available): Move to lcm.c, and change parameter order.
        (one_classic_gcse_pass): Call compute_ae_kill with parameters.
        (pre_insert, s_preds, s_succs, num_preds, num_succs): Delete.
        (gcse_main): No longer call compute_preds_succs.  Rebuild the
        set table after reach pre pass.
        (pre_insert_map, pre_delete_map, edge_list): New.
        (alloc_pre_mem): Allocate edge vectors.
        (free_pre_mem): Delete edge vectors.
        (compute_pre_data): Call new edge based lcm routines.
        (process_insert_insn): New function.
        (insert_insn_end_bb): Use it.
        (pre_edge_insert): New function.
        (pre_insert_copy_insn): Formatting fixes.  Update BLOCK_END as
        needed.
        (pre_insert_copies): Revamp using new edge based lcm outputs.
        (pre_delete): Likewise.
        (one_pre_gcse_pass): Insert & remove fake edges to the exit
        block.
        (compute_code_hoist_vbeinout): New new edge based routines.
        * lcm.c: Remove all the old LCM functions.  Replace with new ones
        that work with the new cfg datastructures and work with edges
        instead of blocks.

From-SVN: r30055
1999-10-17 03:21:25 -06:00
Andrew MacLeod 3cce638b2b * gcse.c (hash_scan_set): Remove incorrect ! optimize_size check.
From-SVN: r30054
1999-10-17 02:53:48 -06:00
Jeff Law 1e875952c8 Fix typo in last change.
From-SVN: r30053
1999-10-17 02:19:37 -06:00
Jeff Law f002736bd3 Daily bump.
From-SVN: r30052
1999-10-17 01:45:06 -06:00
Bernd Schmidt 8ec450a4de reload.h (struct reload): Add new fields "mode" and "nregs".
* reload.h (struct reload): Add new fields "mode" and "nregs".
        * reload1.c: Change all occurrences of reload_mode and reload_nregs
        to reference the "mode" and "nregs" field within struct reload.

From-SVN: r30051
1999-10-17 00:47:27 -06:00
Jeffrey A Law 356edbd763 haifa-sched.c (true_dependency_cache): New.
* haifa-sched.c (true_dependency_cache): New.
        (add_dependence): Use the true dependency cache to avoid expensive
        walks down the LOG_LINKS dependency list.  Add entries to the
        cache as necessary.
        (remove_dependence): Remove entries from the true dependency cache
        as needed.
        (schedule_insns): Allocate and initialize and free the true
        dependency cache.

From-SVN: r30050
1999-10-17 00:28:22 -06:00
Jeffrey A Law e75f2df7e5 haifa-sched.c (schedule_insns): Do not remove inter-block dependencies anymore.
* haifa-sched.c (schedule_insns): Do not remove inter-block
        dependencies anymore.

From-SVN: r30049
1999-10-16 21:50:21 -06:00
Anthony Green 6c413a50e6 ClassLoader.java (getSystemResource): Use getSystemClassLoader instead of ClassLoader.system.
* java/lang/ClassLoader.java (getSystemResource): Use
        getSystemClassLoader instead of ClassLoader.system.
        (getSystemResourceAsStream): Ditto.

        * java/lang/natClassLoader.cc (redirect): Make static and
        remove #ifdef INTERPRETER so it is always defined.
        (getVMClassLoader0): Remove #ifdef INTERPRETER so it always
        returns a VMClassLoader.

        * java/util/ResourceBundle.java (trySomeGetBundle): Create a
        PropertyResourceBundle if a properties file is found before a
        ResourceBundle class.

From-SVN: r30048
1999-10-17 03:11:50 +00:00
Richard Henderson 1b284f05ac t-cygwin (winnt.o): Depend on RTL_H and TREE_H.
* i386/t-cygwin (winnt.o): Depend on RTL_H and TREE_H.
        * i386/t-winnt: Likewise.

From-SVN: r30045
1999-10-16 11:22:29 -07:00
Manfred Hollstein 28fe2fb748 Makefile.in (LANGUAGES): Omit "proto".
* Makefile.in (LANGUAGES): Omit "proto".
	(clean): Remove stale comment about removing unprotoize.c.

From-SVN: r30044
1999-10-16 15:52:04 +00:00
Kaveh R. Ghazi 9c592305f4 protoize.c (safe_read, safe_write): Avoid the gcc extension of using arithmetic on void pointers.
* protoize.c (safe_read, safe_write): Avoid the gcc extension of
        using arithmetic on void pointers.

From-SVN: r30043
1999-10-16 15:32:00 +00:00
Jeffrey A Law 706c5c2fdc haifa-sched.c (compute_block_forward_dependencies): Only check for notes, deleted insns and duplicates if ENABLE_CHECKING is defined.
* haifa-sched.c (compute_block_forward_dependencies): Only check
	for notes, deleted insns and duplicates if ENABLE_CHECKING is defined.

From-SVN: r30042
1999-10-16 02:54:07 -06:00
Jeff Law c2d88e8417 Daily bump.
From-SVN: r30041
1999-10-16 01:45:07 -06:00
Richard Henderson fa7ae3bc4d * gcc.c-torture/execute/991016-1.c: New test.
From-SVN: r30040
1999-10-16 00:08:45 -07:00
Richard Henderson 297c333589 gcse.c (hash_expr_1): Add in MEM_ALIAS_SET.
* gcse.c (hash_expr_1): Add in MEM_ALIAS_SET.
        (expr_equiv_p): Reject memories with different alias sets.

From-SVN: r30039
1999-10-16 00:08:27 -07:00
Greg McGary 9329983a8f lex.c (lang_init_options): Set flag_bounds_check as "unspecified".
* lex.c (lang_init_options): Set flag_bounds_check as "unspecified".
(lang_init): Set default for flag_bounds_check if still "unspecified".

From-SVN: r30038
1999-10-16 01:27:32 +00:00
Greg McGary 02f06e649d top.h (ffe_is_subscript_check_): Remove extern decl.
* top.h (ffe_is_subscript_check_): Remove extern decl.
(ffe_is_subscript_check, ffe_set_is_subscript_check): Remove macros.
* top.c (ffe_is_subscript_check_): Remove global variable.
(ffe_decode_option): Remove "(no-)bounds-check" flag handling.
Set flag_bounds_check for "(no-)fortran-bounds-check".
* com.c
(ffecom_arrayref_): s/ffe_is_subscript_check ()/flag_bounds_check/
(ffecom_char_args_x_): Ditto.

From-SVN: r30037
1999-10-16 01:26:10 +00:00
Greg McGary 13f9ac51e3 java-tree.h (flag_bounds_check): Remove extern decl.
* java-tree.h (flag_bounds_check): Remove extern decl.
* lang.c (flag_bounds_check): Remove global variable.
(lang_f_options): Remove "bounds-check" entry.
(lang_init_options): Default flag_bounds_check to "on".

From-SVN: r30036
1999-10-16 01:25:52 +00:00
Greg McGary a8aa79754d flags.h (flag_bounds_check, [...]): New extern decls.
* flags.h (flag_bounds_check, flag_bounded_pointers): New extern decls.
* toplev.c (flag_bounds_check, flag_bounded_pointers): New flags.
(f_options): Add "bounded-pointers" and "bounds-check" entries.
* c-lang.c (lang_init_options): Set flag_bounds_check as "unspecified".
(lang_init): Set default for flag_bounds_check if still "unspecified".

From-SVN: r30035
1999-10-16 01:25:01 +00:00
Michael Hayes a9d3cc3f1a * config/c4x/c4x.md (HF mode patterns): Add missing modes.
From-SVN: r30034
1999-10-16 00:43:59 +00:00
Michael Hayes 0dced2c729 c4x.md (movstrqi_small): Utilise parallel move instructions.
* config/c4x/c4x.md (movstrqi_small): Utilise parallel move
	instructions.

From-SVN: r30033
1999-10-16 00:39:15 +00:00
Michael Hayes 37641f7dbd Try again!?
From-SVN: r30032
1999-10-16 00:31:18 +00:00
Michael Hayes 6c7811a860 * config/c4x/c4x.md (*db_noclobber,
*decrement_and_branch_until_zero_noclobber): New patterns and
	associated splitters.

From-SVN: r30031
1999-10-16 00:29:20 +00:00
Michael Hayes 1f7c7f6f8c c4x.md (parallel instruction patterns): Rework constraints to keep reload happy.
* config/c4x/c4x.md (parallel instruction patterns): Rework
	constraints to keep reload happy.

From-SVN: r30030
1999-10-16 00:15:44 +00:00
Michael Hayes 57e5bce85b * config/c4x/c4x.md (*absqi2_noclobber, *negqi2_noclobber,
*one_cmplqi2_noclobber, *subqi3_noclobber, *andqi3_255_noclobber,
	*andqi3_65535_noclobber, *andnqi3_noclobber, *xorqi3_noclobber):
	Add new patterns and associated post-reload splitters.

From-SVN: r30029
1999-10-16 00:09:36 +00:00
Michael Hayes 3411b713f4 * config/c4x/c4x.c (c4x_emit_libcall): Use ggc_alloc_string.
From-SVN: r30028
1999-10-15 23:46:06 +00:00
Michael Hayes 3b5e8a16ba c4x.c (c4x_rptb_insert): Emit rpts_top pattern if appropriate.
* config/c4x/c4x.c (c4x_rptb_insert): Emit rpts_top pattern
	if appropriate.
	* config/c4x/c4x.md (rpts_top): New pattern and splitter.

From-SVN: r30027
1999-10-15 23:37:53 +00:00
Michael Hayes 1a616dfc0c c4x.c (src_operand): Check SYMBOL_REF and LABEL_REF memory mode.
* config/c4x/c4x.c (src_operand):  Check SYMBOL_REF and LABEL_REF
	memory mode.

From-SVN: r30026
1999-10-15 23:29:00 +00:00
Jeffrey A Law f9b5668e11 pa.c (move_operand): Rely on memory_address_p to determine the validity of non-indexed memory addresses.
* pa.c (move_operand): Rely on memory_address_p to determine the
        validity of non-indexed memory addresses.
        * pa.h (GO_IF_LEGITIMATE_ADDRESS): Allow LO_SUM with a symbolic
        operand in DFmode and SFmode when generating PA2.0 code.

From-SVN: r30025
1999-10-15 17:04:06 -06:00
Richard Henderson d5e3e85b18 * print-rtl.c (print_rtx): Limit last 'u' change to LABEL_REF.
From-SVN: r30024
1999-10-15 14:26:33 -07:00
Richard Henderson 810c1b83f6 mips.c (function_prologue): Fix argument types.
* mips.c (function_prologue): Fix argument types.
        * mips.md (casesi): Use emit_jump_insn for casesi_internal.
        (casesi_internal): Write to the scratch register.

From-SVN: r30023
1999-10-15 13:51:10 -07:00
Zack Weinberg a2c8e14464 cppexp.c (cpp_parse_escape): Make static.
1999-10-15 11:16 -0700  Zack Weinberg  <zack@bitmover.com>

	* cppexp.c (cpp_parse_escape): Make static.  Change second arg
	to U_CHAR **.
	(parse_charconst): Delete unnecessary cast when calling
	cpp_parse_escape.
	(cpplib.h): Kill prototype of cpp_parse_escape.

From-SVN: r30022
1999-10-15 18:18:46 +00:00
Richard Henderson 104dfaa8c0 Based on patch from Michael Gschwind <mikeg@watson.ibm.com>:
* unroll.c (unroll_loop): Cast return value of alloca.
        * i370/i370.c: Include function.h and toplev.h.
        (i370_label_scan): Remove c++ commented abort.
        * i370/i370.h (HANDLE_PRAGMA): Takes three arguments.
        (ASM_OUTPUT_LABELREF): Fix TOUPPER/else broken 16 Sept.
        * i370/xm-i370.h (HOST_BITS_PER_LONGLONG): Define.
        * i370/xm-mvs.h, i370/xm-oe.h: Likewise.

From-SVN: r30021
1999-10-15 11:07:48 -07:00
Tom Tromey 76ed0c0a4b gij.cc (main): Formatting fixes.
* gij.cc (main): Formatting fixes.
	(_Jv_Compiler_Properties): Define.
	* java/lang/natSystem.cc (_Jv_Environment_Properties): Don't
	declare.
	(init_properties): Set properites from _Jv_Compiler_Properties.
	* include/java-props.h (_Jv_Compiler_Properties,
	_Jv_Environment_Properties): Declare.

From-SVN: r30020
1999-10-15 16:53:41 +00:00
Tom Tromey 7cf4196339 jvgenmain.c (usage): New function.
* jvgenmain.c (usage): New function.
	(main): Use it.  Also, handle `-D' options.
	* jvspec.c (lang_specific_driver): Recognize -D.
	(jvgenmain_spec): Added `%{D*}' to jvgenmain invocation.

From-SVN: r30019
1999-10-15 16:45:31 +00:00
Tom Tromey 3ae21bfccf * include/java-props.h: Added copyright.
From-SVN: r30018
1999-10-15 15:42:26 +00:00
Loren J. Rittle 370c81d682 t-freebsd: Do not override USER_H.
* config/t-freebsd: Do not override USER_H.
        * ginclude/stddef.h: Generalize check for _MACHINE_ANSI_H_.

From-SVN: r30017
1999-10-15 03:04:53 -06:00
Alastair J. Houghton ffc3b0f915 c-parse.in (component_decl): Support anonymous struct/union.
* c-parse.in (component_decl): Support anonymous struct/union.
        (%expect): Update.
        * c-parse.y: Regenerate.
        * c-parse.c: Likewise.
        * objc/objc-parse.y: Likewise.
        * objc/objc-parse.c: Likewise.
        * c-decl.c (finish_struct): Don't sort the fields.
        (field_decl_cmp): Delete unused function.

Co-Authored-By: Mumit Khan <khan@xraylith.wisc.edu>

From-SVN: r30016
1999-10-15 02:42:02 -06:00
Richard Henderson e57ad0c815 sparc.md (movsf_const_intreg): Revert last constraint change.
* sparc.md (movsf_const_intreg): Revert last constraint change.
        (movdf_const_intreg_sp32): Likewise.

From-SVN: r30015
1999-10-15 01:25:13 -07:00
Vladimir Makarov c1edba58eb cse.c: Include hashtab.h instead of splay-tree.h (struct cse_reg_info): No longer use...
* cse.c: Include hashtab.h instead of splay-tree.h
        (struct cse_reg_info): No longer use variant union.  Add new
        field "regno".  All references changed to avoid union.
        (cse_reg_info_used_list, cse_reg_info_used_list_end): New variables.
        (free_cse_reg_info): Remove.
        (hash_cse_reg_info, cse_reg_info_equal_p): New functions.
        (get_cse_reg_info): Revamp to use expandable hash tables instead
        of splay trees.  Initialize new fields in cse_reg_info structure.
        (new_basic_block): Similarly.

From-SVN: r30014
1999-10-15 02:19:37 -06:00
Vladimir Makarov a6ee63bb34 * hashtab.h: New file.
From-SVN: r30013
1999-10-15 01:50:54 -06:00
Vladimir Makarov a2f945c649 Makefile.in (CFILES): Add hashtab.c
* Makefile.in (CFILES): Add hashtab.c
        (REQUIRED_OFILES): Add hashtab.o
        (hashtab.o): Add dependencies.
        * hashtab.c: New file

From-SVN: r30012
1999-10-15 01:50:25 -06:00
Jeff Law 005a696e18 Daily bump.
From-SVN: r30011
1999-10-15 01:45:06 -06:00
Richard Henderson aece2740ac genrecog.c (message_with_line): Prototype.
* genrecog.c (message_with_line): Prototype.
        (validate_pattern): Pass along the set for the dest, not a flag.
        Fix non-lvalue message.  Don't warn for VOIDmode SET_DEST of CALL.
        Check for PC/CC0 as sources.
        (nodes_identical): Check for children position match before
        allowing the combination.

        * rtl.c (read_rtx): Track line number across \\\n.

From-SVN: r30010
1999-10-14 23:56:28 -07:00
Richard Henderson 0e7e91552c mips.h (SPECIAL_MODE_PREDICATES): New.
* mips.h (SPECIAL_MODE_PREDICATES): New.
        * mips.md (*) Use nonimmediate_operand not general_operand for outputs.
        (movdi+1, movsi+1): Add output reload constraint.
        (casesi_internal): Likewise.  Fix commentary.
        (return_internal): Use pmode_register_operand.

From-SVN: r30009
1999-10-14 23:51:05 -07:00
Richard Henderson 997718c768 1750a.md (movstrqi): Add missing output reload constraint.
* 1750a.md (movstrqi): Add missing output reload constraint.
	(call_value): Likewise.
	* a29k.md (cpxxx patterns): Add missing match_operator mode.
	(jmpfdec): Add missing inout reload constraint.
	* elxsi.md (addsi patterns): Add missing output reload constraint.
	(move from sp): Use @ alternates.
	(call_value): No constraint on output.
	* fr30.md (movsi_pop): Add missing output reload constraint.
	(movsf_constant_store): Likewise.
	(splits): Remove constraints.
	(subsi3): Add missing mode.
	* i370.md (cmpstrsi+1): Add missing output reload constraint.
	(call_value): Likewise.
	* i960.md (cmpinc/cmpdec patterns): Add inout reload constraints.
	* m32r.h (PREDICATE_CODES): Add seth_add3_operand.
	* m32r.md (movsicc_internal): Add output reload constraint.
	(movstrsi_internal): Add inout reload constraints.
	* m88k.h (reg_names): Don't declare.
	(SPECIAL_MODE_PREDICATES): New.
	* m88k.md (*): Use register_operand not reg_or_0_operand
	on destinations.
	* mn10200.h (PREDICATE_CODES): New.
	* ns32k.md (ffs pattern): Add output reload constraint.
	* pdp11.md (sob pattern): Add inout reload constraint.
	* sh.md (splits): Remove constraints.
	(indirect_jump_scratch, fpu_switch): Add output reload constraint.
	* v850.md (pattern_is_ok_for_epilogue): Likewise.
	* vax.md (jgequ pattern): Add inout reload constraint.

From-SVN: r30008
1999-10-14 23:38:02 -07:00
Anthony Green ffccc6bee2 libtool-version: Catch up by incrementing current.
* libtool-version: Catch up by incrementing current.

        * configure.host: Disable use of GCJ_PROPERTIES for mips-tx39.
        * configure, include/config.h.in: Rebuilt.
        * acconfig.h (DISABLE_GETENV_PROPERTIES): Undefine.
        * configure.in: Added --disable-getenv-properties and new define
        `DISABLE_GETENV_PROPERTIES'.

        * prims.cc (PROCESS_GCJ_PROPERTIES): Define.
        (next_property_key): New function.
        (next_property_value): New function.
        (process_gcj_properties): New function.
        (JvRunMain): Call process_gcj_properties.
        (_JvRunMain): Ditto.

        * java/lang/natSystem.cc (init_properties): Set properties defined
        in GCJ_PROPERTIES.  Also add 1.2 style versioning properties.

        * include/java-props.h: New file.

        * java/lang/natSystem.cc (init_properties): Add new properties to
        conform with Java Product Versioning Specification.

From-SVN: r30007
1999-10-15 06:07:41 +00:00
Jeffrey A Law 7901f53f77 configure.in (djgpp): Revert previous patch.
* configure.in (djgpp): Revert previous patch.
        * configure: Rebuit.
        * config/i386/djgpp.h: Revert previous patch.

From-SVN: r30006
1999-10-15 00:06:56 -06:00