* 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
* 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
* 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
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 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
* 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
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
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
* 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
* 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
* 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 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