Commit Graph

23631 Commits

Author SHA1 Message Date
Jeffrey A Law
2598e85aad except.c (expand_fixup_region_end): Do not peek at INSN_UID (node->entry->outer_context) for flag_new_exceptions.
* except.c (expand_fixup_region_end): Do not peek at
        INSN_UID (node->entry->outer_context) for flag_new_exceptions.

From-SVN: r29047
1999-09-02 00:08:25 -06:00
Richard Henderson
ff2589d152 Fix data corruption. (Eeep!)
From-SVN: r29046
1999-09-01 22:47:47 -07:00
Geoffrey Keating
efa3896ad4 flags.h: New variables align_loops...
* flags.h: New variables align_loops, align_loops_log,
align_jumps, align_jumps_log, align_labels, align_labels_log,
align_functions, align_functions_log.
* toplev.c: Define them.
(f_options): Handle -falign-* when they have no argument.
(main): Add logic to set variables for -falign-functions,
-falign-jumps, -falign-labels, -falign-loops.
Make it -fsched-verbose=<n> and -finline-limit=<n>.
(display_help): Change help to match options.
* final.c (LABEL_ALIGN): Default to align_labels_log.
(LABEL_ALIGN_MAX_SKIP): Default to align_labels-1.
(LOOP_ALIGN): Default to align_loops_log.
(LOOP_ALIGN_MAX_SKIP): Default to align_loops-1.
(LABEL_ALIGN_AFTER_BARRIER): Default to align_jumps_log.
(LABEL_ALIGN_AFTER_BARRIER_MAX_SKIP): Default to align_jumps-1.
* varasm.c (assemble_start_function): Handle align_functions.

* config/sparc/sparc.h: Don't declare sparc_align_*.
Don't provide LABEL_ALIGN_AFTER_BARRIER or LOOP_ALIGN.
(DEFAULT_SPARC_ALIGN_FUNCS): Delete; take functionality into
sparc.c.
(FUNCTION_BOUNDARY): Fix incorrect use---it's not just a request,
it's a promise.
* config/sparc/sparc.c: Delete sparc_align_loops,
sparc_align_jumps, sparc_align_funcs and the corresponding string
variables.
(sparc_override_options): Default align_functions on ultrasparc.
Delete -malign-* handling.

* config/mips/mips.c (override_options):  On 64-bit targets,
try to align code to 64-bit boundaries.
(print_operand): New substitution, %~,
which aligns labels to align_labels_log.
* config/mips/mips.md (div_trap_normal): Use %~.
(div_trap_mips16): Likewise.
(abssi): Likewise.
(absdi2): Likewise.
(ffssi2): Likewise.
(ffsdi2): Likewise.
(ashldi3_internal): Likewise.
(ashrdi3_internal): Likewise.
(lshrdi3_internal): Likewise.
(casesi_internal): Likewise.

Plus corresponding documentation changes.

From-SVN: r29045
1999-09-02 05:42:06 +00:00
Richard Henderson
e075ae69f9 Merge new ia32 backend from the branch!
From-SVN: r29044
1999-09-01 21:20:21 -07:00
Matt Welsh
a41cb705f6 natClass.cc: Fixed notification of threads when class initialization is complete.
* java/lang/natClass.cc: Fixed notification of threads
	when class initialization is complete.

From-SVN: r29043
1999-09-02 03:46:35 +00:00
Kaveh R. Ghazi
f5984164b7 gxx.gperf (hash, [...]): Add prototypes.
* gxx.gperf (hash, is_reserved_word): Add prototypes.

	* init.c (build_vec_init): Initialize variable `try_block'.

	* lex.c (init_parse): Call memcpy, not bcopy, to avoid casts.
	Likewise for bzero/memset.
	(token_getch, token_put_back): Add static prototypes.  Remove
	`inline' from the definitions.
	(retrofit_lang_decl): Call memset, not bzero, to avoid casts.

From-SVN: r29042
1999-09-02 03:13:16 +00:00
Richard Henderson
aea87e88e1 emit-rtl.c (init_emit_once): Don't use GET_MODE_WIDER_MODE to step through CC modes.
* emit-rtl.c (init_emit_once): Don't use GET_MODE_WIDER_MODE
        to step through CC modes.

From-SVN: r29041
1999-09-01 18:22:31 -07:00
Tom Tromey
6ba9e3b09e ffi.h.in: Removed PACKAGE and VERSION defines and undefs.
* include/ffi.h.in: Removed PACKAGE and VERSION defines and
	undefs.
	* fficonfig.h.in: Rebuilt.
	* configure: Rebuilt.
	* configure.in: Pass 3rd argument to AM_INIT_AUTOMAKE.
	Use AM_PROG_LIBTOOL (automake 1.4 compatibility).
	* acconfig.h: Don't #undef PACKAGE or VERSION.

From-SVN: r29038
1999-09-01 23:16:34 +00:00
Tom Tromey
e409a2c8f4 Modifier.java (ALL_FLAGS): New constant.
* java/lang/reflect/Modifier.java (ALL_FLAGS): New constant.
	* resolve.cc: Removed constants defined by
	java.lang.reflect.Modifier.
	Include <java/lang/reflect/Modifier.h>.
	(_Jv_ResolvePoolEntry): Use values from Modifier.
	(_Jv_DetermineVTableIndex): Likewise.
	(_Jv_PrepareClass): Likewise.
	(ncode): Likewise.
	* defineclass.cc (_Jv_ClassReader): Removed constants defined by
	java.lang.reflect.Modifier.
	Include <java/lang/reflect/Modifier.h>.
	(checkExtends): Use values from Modifier.
	(checkImplements): Likewise.
	(handleField): Likewise.
	(handleConstantValueAttribute): Likewise.
	(handleFieldsEnd): Likewise.
	(handleMethod ): Likewise.
	(handleMethodsEnd): Likewise.
	(handleClassBegin): Likewise.
	* interpret.cc: Removed constants defined by
	java.lang.reflect.Modifier.
	(continue1): Use values from Modifier.
	* java/lang/natClassLoader.cc: Removed constants defined by
	java.lang.reflect.Modifier.

From-SVN: r29037
1999-09-01 22:02:20 +00:00
Mark Mitchell
c7f9c6f5e3 cp-tree.h (lang_type): Move align into type_flags.
* cp-tree.h (lang_type): Move align into type_flags.
	(CLASSTYPE_ALIGN): Adjust accordingly.
	* call.c (direct_reference_binding): Remove misleading comment.

From-SVN: r29035
1999-09-01 21:56:38 +00:00
J"orn Rennecke
2219e9215e regmove.c (fixup_match_1): Don't move INSN in front of P if it would end up in the shadow of a live flags...
* regmove.c (fixup_match_1): Don't move INSN in front of P if
        it would end up in the shadow of a live flags regsiter.

From-SVN: r29034
1999-09-01 14:22:05 -07:00
Tom Tromey
6c2a11802a natClassLoader.cc (_Jv_NewClass): Use JV_STATE_NOTHING, not `0'.
* java/lang/natClassLoader.cc (_Jv_NewClass): Use
	JV_STATE_NOTHING, not `0'.
	* java/lang/Class.h: Replaced JV_STATE_ defines with enum.

From-SVN: r29033
1999-09-01 21:05:17 +00:00
Tom Tromey
45329b398e posix-threads.cc (_Jv_CondWait): Use _Jv_PthreadGetMutex.
* posix-threads.cc (_Jv_CondWait): Use _Jv_PthreadGetMutex.
	* include/posix-threads.h (_Jv_Mutex_t): Define as structure,
	except on Linux.
	(_Jv_PthreadGetMutex): New function.
	(_Jv_PthreadCheckMonitor): Use it.
	(_Jv_MutexInit): Likewise.  ALso, initialize `count'.
	(_Jv_MutexLock): Update `count'.
	(_Jv_MutexUnlock): Likewise.
	(_Jv_PthreadCheckMonitor): Use Linux-specific knowledge when
	appropriate.

From-SVN: r29032
1999-09-01 21:03:18 +00:00
Kresten Krab Thorup
4499762c6e * ChangeLog: update.
From-SVN: r29031
1999-09-01 18:49:55 +00:00
Tom Tromey
6e87747b6d posix-threads.cc (_Jv_CondWait): Call _Jv_PthreadCheckMonitor.
* posix-threads.cc (_Jv_CondWait): Call _Jv_PthreadCheckMonitor.
	* include/posix-threads.h (_Jv_PthreadCheckMonitor): New
	function.
	(_Jv_CondNotify): Use it.
	(_Jv_CondNotifyAll): Likewise.

	* java/lang/Class.h (JV_STATE_NOTHING): Correct misspelling.

From-SVN: r29030
1999-09-01 18:29:39 +00:00
Kresten Krab Thorup
b1133adfca Makefile.am (.java.lo): Add rule.
* Makefile.am (.java.lo): Add rule.

	* Makefile.in: Rebuilt.

From-SVN: r29029
1999-09-01 18:22:05 +00:00
Kaveh R. Ghazi
98c3e05ded Avoids false positives with -Wcast-qual:
* obstack.h (obstack_grow, obstack_grow0): Move (char*) casts
	in calls to `_obstack_memcpy' from here ...

	(_obstack_memcpy): ... to here, except in the __STDC__ case which
	doesn't need it.

From-SVN: r29028
1999-09-01 14:44:56 +00:00
Bernd Schmidt
05d106753d Fix indentation problems
From-SVN: r29027
1999-09-01 14:30:35 +00:00
Andreas Schwab
3b3958fc9a Move *-*-gnu* pattern below *-*-linux*.
From-SVN: r29026
1999-09-01 08:14:33 +00:00
Jeff Law
fe0a8ee66c Daily bump.
From-SVN: r29025
1999-09-01 01:45:44 -06:00
Marc Espie
499b10983a * alias.c (non_local_reference_p): Constify fmt.
From-SVN: r29023
1999-08-31 22:08:57 -07:00
Michael Meissner
7c225121a3 define HAVE_DOS_BASED_FILED_SYSTEM on cygwin
From-SVN: r29022
1999-09-01 03:24:07 +00:00
Tom Tromey
1aaeb2f0b5 jvm.h (_Jv_makeUtf8TypeConst): Removed unused declaration.
* include/jvm.h (_Jv_makeUtf8TypeConst): Removed unused
	declaration.

From-SVN: r29021
1999-09-01 02:36:40 +00:00
Jeff Law
06671717b3 Fix typo in comment.
From-SVN: r29019
1999-08-31 18:12:33 -06:00
Jeffrey A Law
a12e24fcb9 c-torture.exp: Avoid the "compare executables" optimization when testing native.
* lib/c-torture.exp: Avoid the "compare executables" optimization
        when testing native.

From-SVN: r29018
1999-08-31 17:59:40 -06:00
Jeffrey A Law
61c48fbf26 cse.c (delete_trivially_dead_insns): Do not delete stores to the internal_arg_pointer.
* cse.c (delete_trivially_dead_insns): Do not delete stores to
        the internal_arg_pointer.

From-SVN: r29017
1999-08-31 16:48:58 -06:00
Richard Henderson
ede7cd4499 backport: Makefile.in (STAGESTUFF): Add *.peephole2.
Merge peephole2 from new_ia32_branch:
        * Makefile.in (STAGESTUFF): Add *.peephole2.
        (mostlyclean): Likewise.
        (recog.o): Depend on resource.h.

        * final.c (peephole): Conditionalize decl on HAVE_peephole.
        (final_scan_insn): Likewise for the invocation of peephole.
        * genconfig.c (main): Look for peephole and peephole2 patterns.
        Emit HAVE_peephole* accordingly.
        * genpeep.c (main): Conditionalize entire output on HAVE_peephole.
        * flags.h (flag_peephole2): Declare.
        * toplev.c: New pass peephole2.  New flag -fpeephole2.

        * genattrtab.c (main): Count DEFINE_PEEPHOLE2.
        * gencodes.c (main): Likewise.
        * genextract.c (main): Likewise.
        * genoutput.c (main): Likewise.
        * genemit.c (max_operand_1): Look for the max scratch operand.
        (gen_rtx_scratch): New.
        (gen_exp): Use it, and pass on new arg subroutine_type.
        (gen_expand): Take max scratch into account.
        (gen_split): Emit peephole2 functions.
        (output_peephole2_scratch): New.
        (main): Include hard-reg-set.h and resource.h.  Handle peephole2.
        * genrecog.c (routine_type): Add PEEPHOLE2.
        (IS_SPLIT): New.
        (make_insn_sequence): Match outer parallel for peep2.  Discard
        top level scratches and dups.
        (add_to_sequence): New args insn_type and top.  Update all callers.
        Handle toplevel peep2 matching insns.
        (write_subroutine): Handle peep2.
        (write_tree_1): Likewise.
        (write_tree): Likewise.
        (main): Likewise.
        (change_state): New arg afterward.  Update all callers.
        Handle matching separate insns.
        * recog.c (recog_next_insn): New.
        (peephole2_optimize): New.
        * rtl.def (DEFINE_PEEPHOLE2): New.
        * resource.c (find_free_register): New argument last_insn.  Use it
        to find a register available through the entire span.
        * resource.h (find_free_register): Update prototype.

From-SVN: r29015
1999-08-31 13:37:09 -07:00
Richard Henderson
4dfeccf9d0 * getpwd.c: Check HAVE_GETCWD before defining it away.
From-SVN: r29013
1999-08-31 13:33:13 -07:00
Jim Kingdon
8fd8d061f7 i386.c (output_strlen_unroll): Don't write xops[7] label if it wasn't set.
* config/i386/i386.c (output_strlen_unroll): Don't write xops[7]
        label if it wasn't set.

From-SVN: r29010
1999-08-31 13:05:20 -07:00
Zack Weinberg
2ac9349e26 cpplib.c (struct directive): Const-ify name pointer and function pointer prototype.
1999-08-31 12:44 -0700  Zack Weinberg  <zack@bitmover.com>

	* cpplib.c (struct directive): Const-ify name pointer and
	function pointer prototype.
	(validate_else, do_define, do_line, do_include, do_undef,
	do_error, do_pragma, do_ident, do_if, do_xifdef, do_else,
	do_elif, do_endif, do_sccs, do_assert, do_unassert,
	do_warning): Const-ify second arg.
	(directive_table): Mark const.  Reorder entries by frequency
	of usage, record statistics.

From-SVN: r29009
1999-08-31 19:46:18 +00:00
Zack Weinberg
ef178af3a4 rtl.h (RTL_CHECK1, RTL_CHECK2): New macros which type- and bounds- check RTL accesses if --enable-checking.
1999-08-31 12:20 -0700 Zack Weinberg <zack@bitmover.com>

	* rtl.h (RTL_CHECK1, RTL_CHECK2): New macros which type- and
	bounds- check RTL accesses if --enable-checking.
	(RTVEC_ELT): Bounds check if --enable-checking.
	(XWINT, XINT, XSTR, XEXP, XVEC, XMODE, XBITMAP, XTREE,
	XBBDEF): Use RTL_CHECK1/RTL_CHECK2 as appropriate.
	(XVECEXP, XVECLEN): Define in terms of XVEC, RTVEC_ELT, and
	GET_NUM_ELEM.
	(X0WINT, X0INT, X0STR, X0EXP, X0VEC, X0MODE, X0BITMAP, X0TREE,
	X0BBDEF, X0ADVFLAGS):  New macros for accessing '0' slots of RTXes.

	(ADDR_DIFF_VEC_FLAGS): Use X0ADVFLAGS.
	(NOTE_SOURCE_FILE): Use X0STR.
	(NOTE_BLOCK_NUMBER, NOTE_EH_HANDLER, LABEL_NUSES,
	MEM_ALIAS_SET): Use X0INT.
	(NOTE_RANGE_INFO, NOTE_LIVE_INFO, NOTE_BASIC_BLOCK,
	JUMP_LABEL, LABEL_REFS, LABEL_NEXTREF, CONTAINING_INSN):
	Use X0EXP.
	* real.h (CONST_DOUBLE_CHAIN): Use X0EXP.
	* rtl.c (copy_rtx, copy_most_rtx): Copy '0' slots with X0WINT.
	(rtl_check_failed_bounds, rtl_check_failed_type1,
	rtl_check_failed_type2, rtvec_check_failed_bounds): New
	functions.
	(fancy_abort): Fix comment.

	* cse.c (canon_hash): Read CONST_DOUBLE data slots with XWINT.
	(cse_insn): Decrement LABEL_NUSES for jump target before
	deleting jump insn.
	* emit-rtl.c (gen_rtx_CONST_DOUBLE): Use X0EXP for slot 1.
	* final.c (alter_subreg): Compute regno before changing x to
	REG; set REGNO(x) after changing it.
	* flow.c (count_basic_blocks): Use XWINT to inspect EH_REGION
	notes containing CONST_INTs.
	(delete_eh_regions): Use NOTE_EH_HANDLER.
	* function.c (put_reg_into_stack): Make reg a MEM before
	initializing it.
	(fixup_var_refs_insns):  Save REG_NOTES (insn) in case we
	delete insn.
	(gen_mem_addressof): Make reg a MEM before initializing it.
	* integrate.c (copy_rtx_and_substitute): Copy '0' slots with
	X0WINT.
	* local-alloc.c (update_equiv_regs): Zap REG_NOTES before
	deleting an insn, not after.
	(block_alloc): Only look at PATTERN(insn) if we have to, and
	only if it's format class 'i'.
	* loop.c (check_dbra_loop): Check bl->biv->add_val is a
	CONST_INT before using its INTVAL.
	* print-rtl.c (print_rtx): Use X0STR.
	* regmove.c (fixup_match_1): Don't look at PATTERN of
	non-class-'i' insn chain elements.
	* reload.c (loc_mentioned_in_p): Take address of
	in->fld[1].rtx directly.
	* reload1.c (reload): Change reg to a MEM before initializing
	it.
	* varasm.c (mark_constant_pool): Skip CONST_DOUBLES, which
	have no names.
	* config/i386/i386.md (decrement_and_branch_if_zero): Fix typo.

From-SVN: r29008
1999-08-31 19:39:10 +00:00
Andrew Haley
8230525836 mips.c (machine_dependent_reorg): Force a barrier to output the local constant pool if...
Fri Aug 20 13:43:41 1999  Andrew Haley  <aph@cygnus.com>

	* config/mips/mips.c (machine_dependent_reorg): Force a
	barrier to output the local constant pool if a barrier hasn't
	been found at a natural point in the instruction stream.

From-SVN: r29004
1999-08-31 13:56:41 +00:00
Jeff Law
04b9e2bf66 Daily bump.
From-SVN: r29003
1999-08-31 01:45:14 -06:00
Jeff Law
6f573a73b3 Fix thinko in last change.
From-SVN: r29002
1999-08-31 01:02:46 -06:00
Jeffrey A Law
835126657b emit-rtl.c (copy_rtx_if_shared): A MEM which references virtual_stack_vars_rtx or virtual_incoming_args_rtx can...
* emit-rtl.c (copy_rtx_if_shared): A MEM which references
        virtual_stack_vars_rtx or virtual_incoming_args_rtx can not
        be shared.

From-SVN: r29001
1999-08-31 00:28:16 -06:00
Kaveh R. Ghazi
f425a8879b c-parse.in (language_string): Constify.
* c-parse.in (language_string): Constify.

	* dwarf2out.c (language_string): Remove declaration.

	* dwarfout.c (language_string): Likewise.

	* toplev.c (language_string, init_parse, finish_parse): Likewise.

	* tree.h (language_string, init_parse, finish_parse): Declare.

	* i386/sun386.h (language_string): Remove declaration.

	* mips.h (language_string): Likewise.

	* nextstep.h (language_string): Likewise.

	* nextstep21.h (language_string): Likewise.

	* rs6000.c (language_string): Likewise.

In ch:
	* parse.c (language_string): Constify.
In cp:
	* parse.y (language_string): Constify.
In f:
	* com.c (language_string): Constify.
In java:
	* lang.c (language_string): Constify.

From-SVN: r29000
1999-08-31 02:16:34 +00:00
Kaveh R. Ghazi
a2957e1d3e Makefile.in (OBJS, PROTO_OBJS): Remove getpwd.o.
* Makefile.in (OBJS, PROTO_OBJS): Remove getpwd.o.
	(getpwd.o): Remove target.

	* getpwd.c: Delete file.  Its in libiberty now.

	* dbxout.c (getpwd): Don't prototype.
	* dwarf2out.c (getpwd): Likewise
	* dwarfout.c (getpwd): Likewise
	* final.c (getpwd): Likewise.
	* protoize.c (getpwd): Likewise.

From-SVN: r28999
1999-08-31 01:01:15 +00:00
Kaveh R. Ghazi
1fdf491e50 repo.c (getpwd): Don't prototype.
* repo.c (getpwd): Don't prototype.
	* xref.c (getpwd): Likewise

From-SVN: r28998
1999-08-31 00:55:39 +00:00
Kaveh R. Ghazi
25c29e1e40 * libiberty.h (getpwd): Prototype.
From-SVN: r28997
1999-08-31 00:52:57 +00:00
Kaveh R. Ghazi
4ac3cb830a Makefile.in (CFILES): Add calloc.c and getpwd.c.
* Makefile.in (CFILES): Add calloc.c and getpwd.c.
	(REQUIRED_OFILES): Add getpwd.o.
	(getpwd.o): Add target.

	* configure.in (AC_PREREQ): Bump to 2.13.
	(AC_CHECK_HEADERS): Add check for <sys/stat.h>.

	* getpwd.c: New file, moved here from gcc.

From-SVN: r28996
1999-08-31 00:50:36 +00:00
Kaveh R. Ghazi
00d30284b8 Makefile.in (LIBS): Fix definition so we link with $(CLIB).
* Makefile.in (LIBS): Fix definition so we link with $(CLIB).
	Remove hacks for stuff which comes from libiberty.

	* Make-lang.in: Likewise.

From-SVN: r28995
1999-08-31 00:34:22 +00:00
Kaveh R. Ghazi
7d12830c32 Makefile.in (LIBS, LIBDEPS): Link with & depend on libiberty.a.
* Makefile.in (LIBS, LIBDEPS): Link with & depend on libiberty.a.
	Remove hacks for stuff which now comes from libiberty.

From-SVN: r28994
1999-08-31 00:30:56 +00:00
Kaveh R. Ghazi
5c45a8ac5f * cse.c: (fold_rtx): Cast to HOST_WIDE_INT in left shift.
From-SVN: r28993
1999-08-31 00:23:40 +00:00
Richard Henderson
963d441197 flow.c (new_insn_dead_notes): Use sets_reg_or_subreg not mark_set_resources.
* flow.c (new_insn_dead_notes): Use sets_reg_or_subreg not
        mark_set_resources.

From-SVN: r28990
1999-08-30 16:08:14 -07:00
Hans-Peter Nilsson
2e419d0961 * Makefile.in (chillrt0.o): Depend on chillrt0.c explicitly.
From-SVN: r28989
1999-08-30 16:42:48 -06:00
Hans-Peter Nilsson
24c30b28cd * Makefile.in (xref.o): Depend on xref.c explicitly.
From-SVN: r28988
1999-08-30 16:42:01 -06:00
Jeffrey A Law
252215a77a * invoke.texi: Fix typo.
From-SVN: r28987
1999-08-30 16:38:25 -06:00
Jim Wilson
3f5cd61f62 Make fixinc/ work when autogen is not installed.
* fixinc/Makefile.in (subdir): New.
	(fixincl.x, inclhack.sh, fixincl.sh): Use cp instead of $(CP).
	(Makefile): New.

From-SVN: r28986
1999-08-30 12:27:15 -07:00
Jason Merrill
829297e618 * cp-tree.h (IS_AGGR_TYPE_2): Fix typo.
From-SVN: r28985
1999-08-30 15:14:01 -04:00
Mark Mitchell
8d1e67c6c4 cp-tree.h (begin_init_stmts): Declare.
* cp-tree.h (begin_init_stmts): Declare.
	(finish_init_stmts): Likewise.
	* cvt.c (build_up_reference): Wrap the declaration of a temporary
	in a statement-expression so that we will see it when expanding
	tree structure later.
	* init.c (begin_init_stmts): Don't make it static.
	(finish_init_stmts): Likewise.

From-SVN: r28984
1999-08-30 18:54:20 +00:00