Commit Graph

27830 Commits

Author SHA1 Message Date
Mark Mitchell
eb68cb5821 cp-tree.def (THUNK_DECL): Remove.
* cp-tree.def (THUNK_DECL): Remove.
	* cp-tree.h (DECL_THUNK_P): New macro.
	(DECL_NON_THUNK_FUNCTION_P): Likewise.
	(DECL_EXTERN_C_FUNCTION_P): Likewise.
	(SET_DECL_THUNK_P): Likewise.
	(DELTA_FROM_VTABLE_ENTRY): Use DECL_THUNK_P.
	(FNADDR_FROM_VTABLE_ENTRY): Likewise.
	(DECL_MAIN_P): Use DECL_EXTERN_C_FUNCTION_P.
	* decl.c (decls_match): Use DECL_EXTERN_C_P.
	(duplicate_decls): Likewise.
	(pushdecl): Likewise.  Adjust thunk handling.
	(grokfndecl): Use DECL_EXTERN_C_P.
	* decl2.c (mark_vtable_entries): Use DECL_THUNK_P.
	* dump.c (dequeue_and_dump): Remove THUNK_DECL handling.
	* except.c (nothrow_libfn_p): Use DECL_EXTERN_C_P.
	* expr.c (cplus_expand_expr): Remove THUNK_DECL handling.
	* method.c (make_thunk): Use SET_DECL_THUNK_P.  Set
	DECL_NO_STATIC_CHAIN.
	(emit_thunk): Don't play games with TREE_CODE on thunks.  Don't
	set DECL_DESTRUCTOR_P or DECL_CONSTRUCTOR_P on a thunk.
	* search.c (covariant_return_p): Remove THUNK_DECL handling.
	* ir.texi: Update.

From-SVN: r33647
2000-05-03 22:25:21 +00:00
Mark Mitchell
6428983a53 Fix typo
From-SVN: r33646
2000-05-03 22:19:14 +00:00
Jason R Thorpe
122ddbf9b3 * config/i386/i386.md (lshrqi2_cmpno): Use q not r in constraint.
From-SVN: r33645
2000-05-03 14:17:35 -07:00
Richard Henderson
efdd2c06bb mklibgcc.in: Restrict OLDCC=GCC test to native.
* mklibgcc.in: Restrict OLDCC=GCC test to native.  Equate
        LIBGCC1 empty with libgcc1.null.

From-SVN: r33644
2000-05-03 14:00:49 -07:00
Jim Wilson
13393c8ae7 Fix for ia64-linux misoptimization.
* fold-const.c (extract_muldiv, case MAX_EXPR): Don't allow signedness
	change.

From-SVN: r33643
2000-05-03 13:04:31 -07:00
Jim Wilson
8ae7150163 Testcase for ia64-linux extract_muldiv bug.
* execute/20000503-1.c: New test for extract_muldiv bug.

From-SVN: r33642
2000-05-03 13:03:21 -07:00
Greg McGary
a6d7adfd47 tree.h (tree_common): Add bounded_flag member.
* tree.h (tree_common): Add bounded_flag member.  Remove
	inaccurate comment about number of remaining bits.
	(BOUNDED_INDIRECT_TYPE_P, BOUNDED_POINTER_TYPE_P,
	BOUNDED_REFERENCE_TYPE_P, MAYBE_BOUNDED_INDIRECT_TYPE_P,
	MAYBE_BOUNDED_POINTER_TYPE_P, MAYBE_BOUNDED_REFERENCE_TYPE_P,
	TREE_BOUNDED, TYPE_MAIN_VARIANTS_PHYSICALLY_EQUAL_P,
	TYPE_MAIN_PHYSICAL_VARIANT, TYPE_BOUNDED): New macros.
	(TYPE_QUAL_BOUNDED): New constant.
	(TYPE_QUALS): Handle bounded qualifier.
	(TREE_EXPR_QUALS, TREE_FUNC_QUALS): New macros.
	(TYPE_BOUNDED_VALUE, TYPE_BOUNDED_BASE, TYPE_BOUNDED_EXTENT,
	TYPE_BOUNDED_SUBTYPE, TYPE_UNBOUNDED_VARIANT, TYPE_POINTER_DEPTH,
	TYPE_AMBIENT_BOUNDEDNESS): New macros.
	(MAX_POINTER_DEPTH, VA_LIST_POINTER_DEPTH): New constants.
	(tree_type): Add pointer_depth member.  Remove
	inaccurate comment about number of remaining bits.
	(DECL_POINTER_DEPTH): Add macro.
	(tree_decl): Add pointer_depth member.

From-SVN: r33641
2000-05-03 19:58:42 +00:00
Denis Chertykov
28e801e278 avr-protos.h (test_hard_reg_class): Declared.
* config/avr/avr-protos.h (test_hard_reg_class): Declared.
	* config/avr/avr.c (ashrhi3_out): optimized shift by 15.
	(lshrhi3_out): Likewise.
	(ashrsi3_out): bugfix in shift by 8.
	(test_hard_reg_class): New function.
	* config/avr/avr.md: Bugfix inside conditions in peepholes.
	(ashlhi3): removed define_expand of this pattern.
	(*ashlhi3_insn): renamed to ashlhi3.
	(ashlsi3): removed define_expand of this pattern.
	(*ashlsi3_insn): renamed to ashlsi3.
	(ashrqi3): removed define_expand of this pattern.
	(*ashrqi3_insn): renamed to ashrqi3.
	(ashrhi3): removed define_expand of this pattern.
	(*ashrhi3_insn): renamed to ashrhi3.
	(ashrsi3): removed define_expand of this pattern.
	(*ashrsi3_insn): renamed to ashrsi3.
	(lshrhi3): removed define_expand of this pattern.
	(*lshrhi3_insn): renamed to lshrhi3.
	(lshrsi3): removed define_expand of this pattern.
	(*lshrsi3_insn): renamed to lshrsi3.

From-SVN: r33640
2000-05-03 23:20:09 +04:00
Rodney Brown
4bd048efab Replace inclusion of <stdio.h> with "system.h"
From-SVN: r33639
2000-05-03 18:49:17 +00:00
Jim Wilson
59da9a7d5c Patches from David Mosberger, and a patch to make bootstrap work.
* config/ia64/ia64.c (ia64_encode_section_info): Add check for
	TREE_ASM_WRITTEN.
	* config/ia64/ia64.c (ia64_override_options): Force -mconstant-gp
	if -mauto-pic is on.
	...

From-SVN: r33638
2000-05-03 11:46:05 -07:00
Richard Henderson
3ec83fc2ae Makefile.in (STAGESTUFF): Add libgcc libgcc.mk.
* Makefile.in (STAGESTUFF): Add libgcc libgcc.mk.
        (libgcc1.null, libgcc1.cross, libgcc1.a): Remove targets.
        (libgcc1-asm.a, libgcc1.S, libgcc2.a): Remove targets.
        (mklibgcc, libgcc.mk): New targets.
        (libgcc.a): Use libgcc.mk.
        (stmp-multilib): Likewise.
        (stmp-multilib-sub): Remove.
        (mostlyclean): Don't delete libgcc2 temp files.
        * configure.in (AC_PROG_CC_C_O): Add.
        (NO_MINUS_C_MINUS_O): Substitute it.
        (all_outputs): Add mklibgcc.
        * mklibgcc.in: New file.

From-SVN: r33637
2000-05-03 11:21:49 -07:00
Tom Tromey
dd5d628184 expr.c (build_java_jsr): Use emit_jump, not expand_goto.
* expr.c (build_java_jsr): Use emit_jump, not expand_goto.

	* javaop.h (WORD_TO_INT): New function.
	(IMMEDIATE_s4): Use WORD_TO_INT.
	* jcf.h (JPOOL_INT): Ditto.

	* gjavah.c (decode_signature_piece): Don't treat `$' as namespace
	separator.

From-SVN: r33636
2000-05-03 18:09:27 +00:00
Jason Merrill
8c8de5fc10 cppexp.c (op_t): Make an int.
* cppexp.c (op_t): Make an int.

        * rtlanal.c (dead_or_set_regno_p): Remove unused variable.

        * varasm.c (initializer_constant_valid_p): Fix parenthesis.

        * gensupport.c (process_rtx): Fix macros used.

From-SVN: r33635
2000-05-03 14:06:26 -04:00
Richard Henderson
8d6fe133c4 flow.c (propagate_one_insn): Also don't PROP_REG_INFO for call-clobbered registers of a call.
* flow.c (propagate_one_insn): Also don't PROP_REG_INFO for
        call-clobbered registers of a call.

From-SVN: r33634
2000-05-03 10:59:25 -07:00
Clinton Popetz
c88c0d42a1 gensupport.c: New file.
* gensupport.c: New file.
	* gensupport.h: New file.
	* Makefile.in (HOST_RTL): Depend on gensupport.
	(gensupport.o) New rule.
	* genattr.c: Use gensupport for reading .md files.
	* genattrtab.c: Ditto.
	* gencodes.c: Ditto.
	* genconfig.c: Ditto.
	* genemit.c: Ditto.
	* genextract.c: Ditto.
	* genflags.c: Ditto.
	* genopinit.c: Ditto.
	* genoutput.c: Ditto.
	* genpeep.c: Ditto.
	* genrecog.c: Ditto.
	* rtl.def (define_insn_and_split): New DEF_RTL_EXPR.
	* md.texi (Insn Splitting): Document define_insn_and_split.

From-SVN: r33633
2000-05-03 13:45:26 -04:00
Jason Eckhardt
18ca529b19 flow.c (verify_flow_info): Added two more sanity checks.
Tue May  2 00:20:30 2000  Jason Eckhardt  <jle@cygnus.com>

        * flow.c (verify_flow_info): Added two more sanity checks. The
        first checks that the blocks are numbered consecutively. The second
        checks that n_basic_blocks is actually equal to the number of
        basic blocks in the insn chain.

From-SVN: r33632
2000-05-03 16:39:55 +00:00
Phil Edwards
754ac8f7b2 footer.html: Update to see if it takes effect.
2000-05-03  Phil Edwards  <pme@sourceware.cygnus.com>
            Felix Natter <fnatter@gmx.net>

	* docs/footer.html:  Update to see if it takes effect.
	* docs/thanks.html:  More people.
	* docs/17_intro/headers_cc.txt:  Copy from testsuite, since that can't
	  be seen from the web pages.  Rename for browser-friendliness...
	* docs/17_intro/howto.html:  ...and update here.
	* docs/17_intro/porting-howto.html:  Changes from Felix.
	* docs/gccrebuild.html:  Mention v3->egcs move.
	* docs/faq/index.html:  Ditto.  Also misc tweaks and URL updates.
	* docs/faq/index.txt:  Regenerate.

Co-Authored-By: Felix Natter <fnatter@gmx.net>

From-SVN: r33631
2000-05-03 16:11:03 +00:00
Zack Weinberg
1920de4701 cpplib.h: Add accessor macros for token lists.
* cpplib.h: Add accessor macros for token lists.
	* cpplib.c, cpphash.c, cpplex.c: Use them.

From-SVN: r33630
2000-05-03 15:35:47 +00:00
Richard Kenner
32919a0dd2 expr.c (expand_expr, [...]): Don't check for checking memory usage if not in a function.
* expr.c (expand_expr, case COMPONENT_REF): Don't check for checking
	memory usage if not in a function.
	* varasm.c (initializer_constant_valid_p, case ADDR_EXPR): Only
	return address if static.

From-SVN: r33629
2000-05-03 09:20:48 -04:00
Richard Kenner
d9a7d592ed Add missing blank
From-SVN: r33628
2000-05-03 09:17:29 -04:00
Jan Hubicka
ea49bef604 ifcvt.c (noce_try_cmove_arith): Use may_trap_p to thest whether address may trap.
* ifcvt.c (noce_try_cmove_arith):  Use may_trap_p to thest
	whether address may trap.

From-SVN: r33627
2000-05-03 11:16:35 +00:00
Jeff Law
664fe7a8ac Daily bump.
From-SVN: r33624
2000-05-03 01:45:07 -06:00
Jason Eckhardt
3ef4c9c63e bb-reorder (chain_reorder_blocks): Changed code to test for EDGE_FALLTHRU rather than making erroneous assumption...
Tue May  2 23:38:37 2000  Jason Eckhardt  <jle@cygnus.com>

	* bb-reorder (chain_reorder_blocks): Changed code to test for
	EDGE_FALLTHRU rather than making erroneous assumption that the
	first outgoing edge is the fall-through edge.

From-SVN: r33623
2000-05-03 04:41:04 +00:00
Jason Merrill
88774c2cc6 spelling tweak
From-SVN: r33622
2000-05-02 21:35:11 -04:00
Donald Lindsay
4fe12442a8 change MIPS varargs ABI in config/mips/mips.c
From-SVN: r33621
2000-05-03 01:22:38 +00:00
Jason Eckhardt
f4e79153b8 bb-reorder.c (struct reorder_block_def): Remove members end, block_begin, and block_end.
Tue May  2 19:18:43 2000  Jason Eckhardt  <jle@cygnus.com>

        * bb-reorder.c (struct reorder_block_def): Remove members end,
        block_begin, and block_end.
        (REORDER_BLOCK_OLD_END): Delete.
        (REORDER_BLOCK_BEGIN): Delete.
        (REORDER_BLOCK_END): Delete.
        (chain_reorder_blocks): Remove dead code.

From-SVN: r33620
2000-05-03 00:20:24 +00:00
Jason Eckhardt
eb6f82f7cf bb-reorder.c (remove_scope_notes): Check for both types of scope notes as the end of a basic block before deleting.
Tue May  2 17:06:53 2000  Jason Eckhardt  <jle@cygnus.com>

	* bb-reorder.c (remove_scope_notes): Check for both types of scope
	notes as the end of a basic block before deleting.

From-SVN: r33619
2000-05-02 22:05:06 +00:00
Jason Merrill
f885527026 oops
From-SVN: r33618
2000-05-02 18:04:16 -04:00
Mumit Khan
3ac7948224 final.c (final_start_function): Fix spelling of "necessary".
2000-05-02  Mumit Khan  <khan@xraylith.wisc.edu>

	* final.c (final_start_function): Fix spelling of "necessary".

From-SVN: r33617
2000-05-02 21:52:27 +00:00
Jason Merrill
64b59a80f7 toplev.c (debug_ignore_block): Return int.
* toplev.c (debug_ignore_block): Return int.
        * dwarf2out.c (dwarf2out_ignore_block): Likewise.
        * toplev.h, dwarf2out.h: Adjust.
        * emit-rtl.c (remove_unnecessary_notes): Test return value.

        * emit-rtl.c (remove_unnecessary_notes): Fix spelling of "necessary".
        * toplev.c, final.c, rtl.h: Adjust.

From-SVN: r33616
2000-05-02 16:43:24 -04:00
Tom Tromey
7145d9fe6b class.c (add_method_1): Set both DECL_EXTERNAL and METHOD_NATIVE on native function.
* class.c (add_method_1): Set both DECL_EXTERNAL and METHOD_NATIVE
	on native function.
	* jcf-parse.c (parse_class_file): Call build_jni_stub for native
	JNI methods.
	* expr.c (build_jni_stub): New function.
	* lang-specs.h: -fjni and -femit-class-file are incompatible.
	* parse.c: Rebuilt.
	* parse.y (java_complete_expand_methods): Expand a native method
	and call build_jni_stub if -fjni given.
	* lang-options.h: Document -fjni.
	* lang.c (flag_jni): New global.
	(lang_f_options): Added `jni' entry.
	* java-tree.h (soft_lookupjnimethod_node,
	soft_getjnienvnewframe_node, soft_jnipopsystemframe_node):
	Declare.
	(flag_jni): Declare.
	(build_jni_stub): Declare.
	(struct lang_decl): Added `native' flag.
	(METHOD_NATIVE): Redefined to use `native' field of lang specific
	structure.
	* decl.c (soft_lookupjnimethod_node, soft_getjnienvnewframe_node,
	soft_jnipopsystemframe_node): New globals.
	(init_decl_processing): Set them.  _Jv_InitClass only takes one
	argument.

	* java-tree.def: Put into `C' mode.

From-SVN: r33615
2000-05-02 20:32:31 +00:00
Zack Weinberg
09fa07054c aclocal.m4 (gcc_AC_CHECK_PROG_VER): New macro.
* aclocal.m4 (gcc_AC_CHECK_PROG_VER): New macro.
	* configure.in: Look for makeinfo in the unified tree, then
	for a system makeinfo which is sufficiently new.
	* Makefile.in: If configure says makeinfo is too old, don't
	build or install Info documentation.

From-SVN: r33614
2000-05-02 19:09:24 +00:00
Zack Weinberg
1ce4a39d07 cpphash.c (collect_params): Fix off-by-one error.
* cpphash.c (collect_params): Fix off-by-one error.
	(dump_hash_helper): Dump all four macro nodetypes.

From-SVN: r33613
2000-05-02 18:10:52 +00:00
Jakub Jelinek
9900f597fa cpphash.c (trad_stringify): Adjust p after stringification as well.
* cpphash.c (trad_stringify): Adjust p after stringification as
	well.

	* gcc.dg/cpp-tradstringify.c: New test.

From-SVN: r33612
2000-05-02 18:33:44 +02:00
Zack Weinberg
c56c2073a6 cpplib.h (CPP_POP, [...]): Delete.
* cpplib.h (CPP_POP, parse_cleanup_t): Delete.
	(cpp_buffer): Remove cleanup, seen_eof, manual_pop members.

	* cppfiles.c (file_cleanup): Delete.
	* cpphash.c (macro_cleanup): Delete.
	(collect_objlike_expansion, collect_funlike_expansion,
	macarg, scan_arguments): Remove CPP_POP case.

	* cpplex.c (null_cleanup): Delete.
	(cpp_pop_buffer): Do the work that was done in the cleanups
	here.  Call _cpp_unwind_if_stack from here.
	(_cpp_expand_to_buffer, cpp_scan_buffer_nooutput,
	cpp_scan_buffer): Run until we see CPP_EOF and the top of
	stack is the buffer _below_ the one we stacked.
	(cpp_get_token): Always pop an exhausted buffer.  Return
	CPP_EOF unless it's a macro buffer.  Don't call _cpp_handle_eof.
	* cpplib.c (skip_if_group): Don't call cpp_get_token to
	increment the line number.
	(_cpp_handle_eof): Rename to _cpp_unwind_if_stack.

	* fix-header.c (read_scan_file) [parsing getchar()]: Run until
	we see CPP_EOF and the top of stack is the buffer _below_ the
	one we stacked.
	* scan-decls.c: Likewise.

From-SVN: r33611
2000-05-02 16:09:12 +00:00
Jakub Jelinek
753e6cf1b6 20000502-1.c: New test.
* gcc.c-torture/compile/20000502-1.c: New test.
	* g++.old-deja/g++.other/align.C: New test.

From-SVN: r33610
2000-05-02 17:17:08 +02:00
Andrew Haley
32adf8e626 ia64.c (ia64_encode_section_info): Handle the case where this function is called for the second time on a decl...
2000-05-02  Andrew Haley  <aph@cygnus.com>

        * config/ia64/ia64.c (ia64_encode_section_info): Handle the case
        where this function is called for the second time on a decl that
        has had its section info changed in such a way as to move it out
        of small data/bss.
        * config/ia64/ia64.h (REDO_SECTION_INFO_P): New definition.

From-SVN: r33609
2000-05-02 13:50:25 +00:00
Jeff Law
2b84225632 Daily bump.
From-SVN: r33608
2000-05-02 01:45:07 -06:00
Vadim Egorov
01f9a99543 2000-05-01 Vadim Egorov <egorovv@@mailandnews.com>
* bits/char_traits.h: Fix parameter types.
        * bits/string.tcc: Avoid traits_type::move.

From-SVN: r33607
2000-05-02 07:11:03 +00:00
Benjamin Kosnik
e704c6bf37 atomicity.h (__exchange_and_add): More fixes.
2000-05-01  Benjamin Kosnik  <bkoz@redhat.com>

	* config/cpu/powerpc/bits/atomicity.h (__exchange_and_add): More
	fixes.

From-SVN: r33606
2000-05-02 06:45:21 +00:00
Richard Henderson
15ac7707bc ifcvt.c (dead_or_predicable): Set merge_bb->end to the insn before the sequence we're moving...
* ifcvt.c (dead_or_predicable): Set merge_bb->end to the insn before
        the sequence we're moving, not to merge_bb->head.

From-SVN: r33605
2000-05-01 23:35:22 -07:00
Jason Merrill
3b54e10b04 * tree.c (walk_tree): Set lineno.
From-SVN: r33604
2000-05-02 01:25:27 -04:00
Vadim Egorov
8fd05cb0e7 2000-05-01 Vadim Egorov <egorovv@@mailandnews.com>
* bits/char_traits.h: Fix parameter types.
        * bits/string.tcc: Avoid traits_type::move.

From-SVN: r33603
2000-05-02 04:50:23 +00:00
Alexandre Petit-Bianco
b7805411a0 re GNATS gcj/195: (gcj fail on code to implement an inner interface.)
(This trying to counter the effect of the PR 195 check in -- this should
 be right now.)

From-SVN: r33602
2000-05-01 21:49:51 -07:00
Mark Mitchell
2e3092d535 exception.cc: Update license notice.
* exception.cc: Update license notice.
	* new.cc: Likewise.
	* new1.cc: Likewise.
	* new2.cc: Likewise.
	* tinfo.cc: Likewise.
	* tinfo2.cc: Likewise.
	* vec.cc: Likewise.
	* inc/cxxabi.h: Likewise.
	* inc/exception: Likewise.
	* inc/new: Likewise.
	* inc/new.h: Likewise.
	* inc/typeinfo: Likewise.

From-SVN: r33601
2000-05-02 01:25:15 +00:00
Benjamin Kosnik
73b97e5ce3 config.if: Tweak.
2000-05-01  Benjamin Kosnik  <bkoz@cygnus.com>

	* config.if: Tweak.

From-SVN: r33600
2000-05-02 00:51:59 +00:00
Steven King
53a6ca2990 locale_facets.h: Fix syntax error.
2000-04-30  Steven King <sxking@uswest.net>

        * bits/locale_facets.h: Fix syntax  error.
        * bits/std_fstream.h: ditto

From-SVN: r33599
2000-05-02 00:27:21 +00:00
Richard Henderson
cf889600be configure.in (alpha*-*-linux-gnulibc1*): Remove reference to alpha/t-linux.
* configure.in (alpha*-*-linux-gnulibc1*) [tmake_file]: Remove
        reference to alpha/t-linux.
        (alpha*-*-linux-gnu*): Likewise.
        * configure: Rebuild.

From-SVN: r33598
2000-05-01 17:15:28 -07:00
Richard Henderson
1868a0d4da flow.c (calculate_global_regs_live): Skip for_each_successor_phi if not in SSA form.
* flow.c (calculate_global_regs_live): Skip for_each_successor_phi
        if not in SSA form.

From-SVN: r33597
2000-05-01 17:02:24 -07:00
Richard Henderson
8be9eb00e5 * calls.c (expand_call): Don't emit reg notes for a sibcall.
From-SVN: r33596
2000-05-01 16:59:00 -07:00