1. 28 Nov, 1999 1 commit
  2. 27 Nov, 1999 8 commits
  3. 26 Nov, 1999 2 commits
  4. 25 Nov, 1999 15 commits
    • Make-lang.in (CXX_SRCS): Add optimize.c. · 46e8c075
      1999-11-25  Mark Mitchell  <mark@codesourcery.com>
      
      	* Make-lang.in (CXX_SRCS): Add optimize.c.
      	* Makefile.in (CXX_OBJS): Add optimize.o.
      	(CXX_TREE_H): Add splay-tree.h, system.h, and $(CONFIG_H).
      	(spew.o, lex.o, decl.o, decl2.o, typeck2.o, typeck.o): Adjust.
      	(class.o, call.o, friend.o, init.o, method.o, cvt.o): Likewise.
      	(search.o, tree.o, ptree.o, rtti.o, except.o, expr.o): Likewise.
      	(xref.o, pt.o, error.o, errfn.o, repo.o, semantics.o): Likewise.
      	(dump.o): Likewise.
      	(optimize.o): New target.
      	* class.c: Don't include splay-tree.h.
      	* cp-tree.def (CTOR_COMPLETE): Rename to CTOR_STMT.
      	* cp-tree.h: Include splay-tree.h.
      	(DECL_UNINLINABLE): New macro.
      	(CTOR_BEGIN_P, CTOR_END_P): New macros.
      	(flag_inline_trees): New variable.
      	(local_variable_p): New function.
      	(nonstatic_local_decl_p): Likewise.
      	(optimize_function): Likewise.
      	(cplus_unsave_expr_now): Remove.
      	(copy_tree_r): Declare.
      	(remap_save_expr): Likewise.
      	* decl.c (local_variable_p): Don't
      	make it static.
      	(local_variable_p_walkfn): New function.
      	(make_rtl_for_local_static): Remove code to try to avoid writing
      	out static constants.
      	(emit_local_var): Fix indentation.
      	(nonstatic_local_decl_p): New function.
      	(check_default_argument): Use local_variable_p_walkfn, not
      	local_variable_p, when walking the tree.
      	(start_function): Set the DECL_CONTEXT for automatically generated
      	labels.
      	(finish_constructor_body): Use CTOR_STMT to mark the end of a
      	constructor.
      	* decl2.c: Don't include splay-tree.h.
      	(flag_inline_trees): Define.
      	* dump.c: Don't include
      	splay-tree.h.
      	* except.c (expand_end_catch_block): Fix comment formatting.
      	(expand_end_eh_spec): Set DECL_CONTEXT on temporary variables.
      	(expand_throw): Tidy comment.
      	* init.c (build_vec_delete_1): Use create_temporary_var.
      	* lex.c (cplus_tree_code_type): Make it static.
      	(cplus_tree_code_length): Likewise.
      	(cplus_tree_code_name): Likewise.
      	* optimize.c: New file.
      	* semantics.c (finish_goto_stmt): Set DECL_UNLINABLE for functions
      	with computed gotos.
      	(setup_vtbl_ptr): Mark the beginnings of constructors with
      	CTOR_STMT.
      	(expand_stmt): Handle CTOR_STMT, not CTOR_COMPLETE.
      	(expand_body): Call optimize_function.  Save bodies if we're doing
      	inlining on trees.
      	* tree.c: Don't include splay-tree.h.  Include insn-config.h and
      	integrate.h.
      	(copy_tree_r): Make it public.
      	(statement_code_p): New function.
      	(mark_local_for_remap_r): Likewise.
      	(cp_usave_r): Likewise.
      	(cp_unsave): Likewise.
      	(build_cplus_new): Set DECL_CONTEXT for temporary variables.
      	(walk_tree): Walk into `s' class nodes.  Walk statement chains.
      	(copy_tree_r): Handle 's' class nodes.  Restore chains for
      	statements.  Nullify scopes.  Don't copy types.
      	(init_tree): Set lang_unsave to cp_unsave.
      	(remap_save_expr): Define.
      	* ir.texi: Document CTOR_STMT.
      
      From-SVN: r30669
      Mark Mitchell committed
    • /gcc/../texinfo/makeinfo/Makefile ] ... · 82d26ad0
      /gcc/../texinfo/makeinfo/Makefile ] ; then echo /home/mitchell/dev/egcs/objdir/gcc/../texinfo/makeinfo/makeinfo ; else echo makeinfo ; fi`" "MAKEINFOFLAGS=" "RANLIB_FOR_TARGET=` if [ -f /home/mitchell/dev/egcs/objdir/gcc/../binutils/ranlib ] ; then echo /home/mitchell/dev/egcs/objdir/gcc/../binutils/ranlib ; else if [ "i686-pc-linux-gnu" = "i686-pc-linux-gnu" ] ; then echo ranlib; else t='s,^,i686-pc-linux-gnu-,'; echo ranlib | sed -e $t ; fi; fi`" "RANLIB_TEST_FOR_TARGET=[ -f ` if [ -f /home/mitchell/dev/egcs/objdir/gcc/../binutils/ranlib ] ; then echo /home/mitchell/dev/egcs/objdir/gcc/../binutils/ranlib ; else if [ "i686-pc-linux-gnu" = "i686-pc-linux-gnu" ] ; then echo ranlib; else t='s,^,i686-pc-linux-gnu-,'; echo ranlib | sed -e $t ; fi; fi` ] || ( [ "i686-pc-linux-gnu" = "i686-pc-linux-gnu" ] && [ -f /usr/bin/ranlib -o -f /bin/ranlib ] )" "SHELL=/bin/sh" "STAGE_PREFIX=" "exeext=" "build_exeext=" "objext=.o" "exec_prefix=/usr/local" "prefix=/usr/local" "local_prefix=/usr/local" "gxx_include_dir=/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.96/../../../..`echo /usr/local | sed -e 's|^/usr/local||' -e 's|/[^/]*|/..|g'`/include/g++-3" "tooldir=" "gcc_tooldir=/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.96/../../../../i686-pc-linux-gnu" "bindir=/usr/local/bin" "libsubdir=/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.96" "datadir=/usr/local/share" "distdir=../tmp/\$(subdir)" "localedir=/usr/local/share/locale" "CC=gcc" "CXX_FOR_BUILD=" "CXXFLAGS=" "CXX_FOR_TARGET=" ../cc1plus
      make[1]: Entering directory `/home/mitchell/dev/egcs/objdir/gcc/cp'
      gcc  -DIN_GCC    -g -W -Wall  -W -Wall  -o ../cc1plus `cat ../stamp-objlist` ../c-common.o ../c-pragma.o call.o decl.o errfn.o expr.o pt.o typeck2.o class.o decl2.o error.o lex.o parse.o ptree.o rtti.o spew.o typeck.o cvt.o except.o friend.o init.o method.o search.o semantics.o tree.o xref.o repo.o dump.o optimize.o   ../../libiberty/libiberty.a
      make[1]: Leaving directory `/home/mitchell/dev/egcs/objdir/gcc/cp'
      bash$ cd ~/dev/egcs/gcc
      bash$ cvs update ChangeLog
      P ChangeLog
      bash$ cd cp
      	* except.c (init_eh_for_function): But still zero
      	eh_return_context, eh_return_stack_adjust, and eh_return_handler.
      
      From-SVN: r30668
      Mark Mitchell committed
    • except.h (eh_status): Adjust documentation for x_protect_list. · 76fc91c7
      	* except.h (eh_status): Adjust documentation for x_protect_list.
      	(begin_protect_partials): New function.
      	* except.c (enqueue_eh_entry): Fix formatting.
      	(get_first_handler): Add consistency check.
      	(add_partial_entry): Adjust usage of protect_list.
      	(emit_cleanup_handler): Save and restore ehqueue.
      	(expand_start_all_catch): Add comment.
      	(begin_protect_partials): New function.
      	(end_protect_partials): Adjust usage of protect_list.
      	(init_eh_for_function): Use xcalloc.
      
      From-SVN: r30667
      Mark Mitchell committed
    • c-common.c (check_format_info): Don't call a variadic function with a non-literal format string. · 913d0833
      	* c-common.c (check_format_info): Don't call a variadic function
      	with a non-literal format string.
      
      	* c-decl.c (grokdeclarator, start_struct, finish_struct): Likewise.
      
      	* c-typeck.c (build_component_ref, build_unary_op, lvalue_or_else,
      	pedantic_lvalue_warning, error_init, pedwarn_init, warning_init):
      	Likewise.
      
      	* cccp.c (check_macro_name, do_xifdef, vwarning_with_line):
      	Likewise.
      
      	* collect2.c (collect_wait): Likewise.
      
      	* dbxout.c (dbxout_type): Likewise.
      
      	* gcc.c (do_spec_1): Likewise.
      
      	* genemit.c (gen_insn, gen_expand): Likewise.
      
      	* genrecog.c (write_switch, write_subroutine): Likewise.
      
      	* mips-tfile.c (catch_signal, botch): Likewise.
      
      	* print-rtl.c (print_rtx): Likewise.
      
      	* toplev.c (default_print_error_function, report_error_function,
      	_fatal_insn): Likewise.
      
      From-SVN: r30666
      Kaveh R. Ghazi committed
    • * tree.c (unsave_expr_now): Handle NULL_TREE as input. · 7a12ace5
      From-SVN: r30665
      Mark Mitchell committed
    • reg-stack.c (subst_stack_regs_pat): Swap operands in commutative operations when needed. · caa6ec8d
      	* reg-stack.c (subst_stack_regs_pat): Swap operands in commutative
      	operations when needed.
      	* i386.md (fop_?f_comm): New.
      	(fop_?f_1): Do not accept commutative operands.
      
      From-SVN: r30664
      Jan Hubicka committed
    • mips.md (casesi_internal): Add missing brace. · 58dbe05f
      1999-11-25  Andreas Jaeger  <aj@suse.de>
      
      	* config/mips/mips.md (casesi_internal): Add missing brace.
      
      From-SVN: r30663
      Andreas Jaeger committed
    • dwarf2out.c (pend_type, [...]): Lose. · 2081603c
              * dwarf2out.c (pend_type, output_pending_types_for_scope): Lose.
              (splice_child_die): Handle moving a child DIE from the declaration
              DIE of a class to its specification.
              (gen_struct_or_union_type_die): Use 'complete' consistently.
              (gen_decl_die): Generate the virtual context DIE first.
              Use decl_ultimate_origin instead of DECL_ABSTRACT_ORIGIN.
      
      From-SVN: r30662
      Jason Merrill committed
    • Daily bump. · 51621758
      From-SVN: r30661
      Jeff Law committed
    • dwarf2out.c (free_AT, free_die): New fns. · 10a11b75
              * dwarf2out.c (free_AT, free_die): New fns.
              (remove_children): Call them.
              (output_line_info): Disable removal of duplicate notes.
      
              Generate minimal debug info for types with TYPE_DECL_SUPPRESS_INFO set.
              * dwarf2out.c (gen_struct_or_union_type_die): TYPE_DECL_SUPPRESS_INFO
              means pretend the type isn't defined.
              Don't defer emitting types.
              (gen_type_die_for_member): New fn.
              (gen_decl_die): Call it.
              (splice_child_die): New fn.
              (gen_member_die): Call it rather than generate duplicate dies.
      
              Defer emitting information for the abstract instance of an inline
              until we either inline it or emit an out-of-line copy.
              * dwarf2out.c (decl_ultimate_origin): Ignore DECL_ABSTRACT_ORIGIN
              from output_inline_function if DECL_ABSTRACT is also set.
              (block_ultimate_origin): Likewise.
              (gen_abstract_function): New fn.
              (gen_decl_die, gen_inlined_subroutine_die): Call it.
              (gen_subprogram_die):  An abstract instance is not a declaration
              just because it doesn't match current_function_decl.  Don't abort
              because DECL_DEFER_OUTPUT isn't set.  Do abort if a declaration
              has an abstract origin.
              * toplev.c (rest_of_compilation): Don't emit dwarf2 info for the
              abstract instance here.
      
      From-SVN: r30659
      Jason Merrill committed
    • search.c (note_debug_info_needed): Do perform this optimization for dwarf2. · 50e159f6
              * search.c (note_debug_info_needed): Do perform this optimization
              for dwarf2.
              (maybe_suppress_debug_info): Likewise.  Start by clearing
              TYPE_DECL_SUPPRESS_DEBUG.
      
      From-SVN: r30658
      Jason Merrill committed
    • pt.c (tsubst_decl): Copy TREE_ASM_WRITTEN for VAR_DECLs. · f0adc637
      	* pt.c (tsubst_decl): Copy TREE_ASM_WRITTEN for VAR_DECLs.
      
      	* decl2.c (finish_vtable_vardecl): Don't prune vtables here.
      
      From-SVN: r30656
      Mark Mitchell committed
    • prims.cc (_Jv_NewObjectArray): Use _Jv_GetArrayElementFromElementType. · 93d45562
      	* prims.cc (_Jv_NewObjectArray): Use
      	_Jv_GetArrayElementFromElementType.
      	(_Jv_NewPrimArray): Likewise.
      	* java/lang/natObject.cc (clone): Use
      	_Jv_GetArrayElementFromElementType instead of sizeof.
      	* java/lang/natSystem.cc (arraycopy): Use
      	_Jv_GetArrayElementFromElementType.
      	* include/jvm.h (_Jv_GetArrayElementFromElementType): New
      	function.
      
      From-SVN: r30655
      Tom Tromey committed
  5. 24 Nov, 1999 10 commits
  6. 23 Nov, 1999 4 commits