gcc.git
24 years agosparc.md (movsf_const_intreg): Add constraints for regclass' sake.
Jakub Jelinek [Thu, 2 Dec 1999 00:38:56 +0000 (01:38 +0100)]
sparc.md (movsf_const_intreg): Add constraints for regclass' sake.

* config/sparc/sparc.md (movsf_const_intreg): Add constraints for
regclass' sake.
(movdf_const_intreg_sp32): Likewise. Prefer the memory load
alternative because setting up 64bit constant is usually costly,
especially when reload is in progress or completed.
(movdf_const_intreg_sp64): Likewise.
(movdf_const_intreg split): Fix building up constants when
HOST_BITS_PER_WIDE_INT is 64 yet long is 32bit.

From-SVN: r30750

24 years agocombine.c (if_then_else_cond): Use const_true_rtx instead of const1_rtx for return...
Jeffrey A Law [Thu, 2 Dec 1999 00:36:31 +0000 (00:36 +0000)]
combine.c (if_then_else_cond): Use const_true_rtx instead of const1_rtx for return values in EQ/NE comparison...

* combine.c (if_then_else_cond): Use const_true_rtx instead of
const1_rtx for return values in EQ/NE comparison against (const_int 0)
case.

From-SVN: r30749

24 years agomn10300.c (REG_SAVE_BYTES): Allocate space for AM33 registers.
Jeffrey A Law [Thu, 2 Dec 1999 00:21:59 +0000 (00:21 +0000)]
mn10300.c (REG_SAVE_BYTES): Allocate space for AM33 registers.

        * mn10300.c (REG_SAVE_BYTES): Allocate space for AM33 registers.
        (asm_file_start): Emit .am33 into assembly file when compiling for
        the AM33.
        (print_operand_address): Handle POST_INC addresses.
        (can_use_return_insn, initial_offset): Check AM33 registers too.
        (expand_prologue): Check & save AM33 registers too.
        (expand_epilogue): Similarly.
        wise.
        (REG_CLASS_CONTENTS, REGNO_REG_CLASS): Likewise.
        (INDEX_REG_CLASS, REG_CLASS_FROM_LETTER): Likewise.
        (REGNO_OK_FOR_INDEX_P, PREFERRED_RELOAD_CLASS): Likewise.
        (PREFERRED_OUTPUT_RELOAD_CLASS, LIMIT_RELOAD_CLASS): Likewise.
        (REGISTER_MOVE_COST, REGISTER_NAMES): Likewise.
        (HAVE_POST_INCREMENT): Define.
        (GO_IF_LEGITIMATE_ADDRESS): Allow POST_INC addresses for the AM33.
        (GO_IF_MODE_DEPENDENT_ADDRESS): POST_INC is a mode dependent address.
        * mn10300.md (movqi, movhi, addsi, subsi): Add AM33 variants.
        (mulsi, andsi, iorsi, xorsi, notsi): Likewise.
        (ashiftsi, lshiftrtsi, ashiftrtsi): Likewise.
        (zero_extend to SI from QI/HI): Likewise.
        (sign_extend to SI from QI/HI): Likewise.
        (mulsidi3, umulsidi3): New patterns for the AM33.
        (tstsi with zero extension from QI/HI): Add AM33 variants.
        (movsi, movsf, movdi, movdf): Generate efficient code for the AM33 too.
        (return_internal_regs, store_movm): Handle new AM33 registers.
        * t-mn10300 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Define.
        (LIBGCC, INSTALL_LIBGCC): Likewise.
        * invoke.texi: Document new flags.

From-SVN: r30748

24 years agoi386.md (addsi3_cc): Add "binary_operator_ok" to the condition.
Jan Hubicka [Wed, 1 Dec 1999 23:48:05 +0000 (00:48 +0100)]
i386.md (addsi3_cc): Add "binary_operator_ok" to the condition.

* i386.md (addsi3_cc): Add "binary_operator_ok" to the condition.
(addsi3_carry): Likewise.
(sbbsi3_cc): Add "binary_operator_ok" to the condition.
(sbbsi3_carry): Likewise.
(mulsi3): Rewrite to expander, ensure that only one operand is memory.
(mulhi3): Likewise.
(test?i_1): Ensure that only one operand is memory.
(conditional move patterns): likewise.
(shift and rotate patterns): Rewrite to expander, add
"binary_operator_ok" to the condition.

From-SVN: r30747

24 years agoi386.md (QImode patterns): Remove '*' before the 'r' constraints.
Jan Hubicka [Wed, 1 Dec 1999 22:49:12 +0000 (23:49 +0100)]
i386.md (QImode patterns): Remove '*' before the 'r' constraints.

* i386.md (QImode patterns): Remove '*' before the 'r' constraints.
* i386.h (procesor_costs): Add movzbl_load field.
(HARD_REGNO_MODE_OK): Accept QImode on non PARTIAL_REGISTER_STALL in
non-Q registers, accept DImode registers anywhere.
(Q_CLASS_P): New.
(MEMORY_MOVE_COST): Calculate QImode moves correctly.
* i386.c (*_cost): Set value for movxbl_load field.

From-SVN: r30746

24 years ago(addsi): New add to lea splitter.
Jan Hubicka [Wed, 1 Dec 1999 22:35:15 +0000 (23:35 +0100)]
(addsi): New add to lea splitter.

* (addsi): New add to lea splitter.
(ashlsi): Likewise.
(lea to add/shift peep2): New.

From-SVN: r30745

24 years agoelf.h (STARTFILE_SPEC): Add no-crt0.
Mark Salter [Wed, 1 Dec 1999 19:50:46 +0000 (19:50 +0000)]
elf.h (STARTFILE_SPEC): Add no-crt0.

* config/mips/elf.h (STARTFILE_SPEC): Add no-crt0.
* config/mips/elf64.h (STARTFILE_SPEC): Add no-crt0.
* config/mips/mips.h (TARGET_SWITCHES): Add no-crt0.

From-SVN: r30744

24 years agocp-tree.h (min_tree_cons): Remove.
Mark Mitchell [Wed, 1 Dec 1999 18:09:09 +0000 (18:09 +0000)]
cp-tree.h (min_tree_cons): Remove.

* cp-tree.h (min_tree_cons): Remove.
(scratch_ovl_cons): Likewise.
* decl.c (saveable_obstack): Don't declare.
(duplicate_decls): Tweak error-message.
(initialize_local_var): Explicitly mark the definition as static.
(finish_function): Call permanent_allocation, just so
that the middle-end sees the obstacks it expects.
(mark_cp_function_context): Likewise.
* init.c (build_new): Don't use min_tree_cons.
* lex.c (permanent_obstack): Don't declare.
(current_obstack, saveable_obstack): Likewise.
* spew.c (current_obstack, saveable_obstack): Likewise.
* tree.c (current_obstack, saveable_obstack): Likewise.
(scratch_ovl_cons): Remove.
(build_min_nt): Don't mess with obstacks.
(build_min): Likewise.
(min_tree_cons): Remove
* typeck.c (build_component_ref): Don't use scratch_ovl_cons.
(build_x_function_call): Likewise.
(build_c_cast): Don't use min_tree_cons.

From-SVN: r30743

24 years agoUndo the last change I've checked in by accident.
Jan Hubicka [Wed, 1 Dec 1999 17:27:17 +0000 (17:27 +0000)]
Undo the last change I've checked in by accident.

From-SVN: r30742

24 years agoi386.c (ix86_expand_move): Never add clobbers to move patterns.
Jan Hubicka [Wed, 1 Dec 1999 16:50:46 +0000 (17:50 +0100)]
i386.c (ix86_expand_move): Never add clobbers to move patterns.

* i386.c (ix86_expand_move): Never add clobbers to move patterns.
* i386.md (movsi_xor): New.
(movsi_or): New.
(movsi_1, movhi_1, movqi_1): Remove.
(movsi_2): Rename to movsi_1.
(movhi_2): Rename to movhi_1.
(movqi_2): Rename to movqi_1.
(movdi_1): Remove; remove splitter.
(movdi_2): Rename to movdi_1.
(divmodsi4 splitter): Do not emit clobbers for move patterns.
(long move peep2): Do not create QI or HI mode mov0s
(mov -1,reg -> or peep2s): Enable again, rewrite to single peephole.

From-SVN: r30741

24 years agoi386.md (zero_extend?i?i2): Rewrite to expanders; new patterns rewrite splitters.
Jan Hubicka [Wed, 1 Dec 1999 13:38:50 +0000 (14:38 +0100)]
i386.md (zero_extend?i?i2): Rewrite to expanders; new patterns rewrite splitters.

* i386.md (zero_extend?i?i2): Rewrite to expanders; new patterns
rewrite splitters.

From-SVN: r30740

24 years agore GNATS gcj/97 (Internal compiler error)
Alexandre Petit-Bianco [Wed, 1 Dec 1999 13:06:10 +0000 (13:06 +0000)]
re GNATS gcj/97 (Internal compiler error)

Thu Nov 11 01:57:14 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>

        * parse.y (lookup_method_invoke): Use lang_printable_name to
  reliably build the type name during error report. Fixes PR gcj/97.

From-SVN: r30739

24 years agoi386.md (neg?f2_if): Split "r" and "f" to separate alternatives.
Jan Hubicka [Wed, 1 Dec 1999 12:04:11 +0000 (13:04 +0100)]
i386.md (neg?f2_if): Split "r" and "f" to separate alternatives.

* i386.md (neg?f2_if): Split "r" and "f" to separate alternatives.
(abs?f2_if): Likewise.

From-SVN: r30738

24 years agore PR other/4 (Test PR)
Jason Molenda [Wed, 1 Dec 1999 11:54:08 +0000 (03:54 -0800)]
re PR other/4 (Test PR)

1999-12-01  Jason Molenda  (jsm@bugshack.cygnus.com)

* ChangeLog:  Dummy commit to make sure the logging is working
right.
Oh, and test the PR system.  PR other/4.

From-SVN: r30737

24 years agoDaily bump.
Jeff Law [Wed, 1 Dec 1999 08:45:07 +0000 (01:45 -0700)]
Daily bump.

From-SVN: r30735

24 years agoggc.h (ggc_test_and_set_mark): New macro.
Alex Samuel [Wed, 1 Dec 1999 08:13:54 +0000 (08:13 +0000)]
ggc.h (ggc_test_and_set_mark): New macro.

* ggc.h (ggc_test_and_set_mark): New macro.
(ggc_mark_rtx): Use ggc_test_and_set_mark.
(ggc_mark_tree): Likewise.
(ggc_mark_rtvec): Likewise.
* ggc-common.c (ggc_mark_rtx_children): Reduce recursion.

From-SVN: r30734

24 years agodwarf2out.c (scope_die_for): Only handle types.
Jason Merrill [Wed, 1 Dec 1999 01:48:02 +0000 (01:48 +0000)]
dwarf2out.c (scope_die_for): Only handle types.

        * dwarf2out.c (scope_die_for): Only handle types.  Only search for
        containing types.
        (decl_scope_table): Just an array of trees now.
        (push_decl_scope): Simplify.
        (dwarf2out_init): Adjust.
        (local_scope_p): New fn.
        (gen_inlined_enumeration_type_die): Don't call scope_die_for.
        (gen_inlined_union_type_die, gen_inlined_structure_type_die): Likewise.
        (gen_typedef_die): Likewise.
        (gen_lexical_block_die): Don't call push/pop_decl_scope.
        (gen_inlined_subroutine_die): Likewise.
        (gen_abstract_function): Set current_function_decl temporarily.
        (gen_subprogram_die): Don't check DECL_ABSTRACT to set declaration.
        Handle block extern declarations.  Don't call push/pop_decl_scope.
        (gen_decl_die): Fix logic for block externs.

From-SVN: r30733

24 years agoansidecl.h (ATTRIBUTE_MALLOC): New macro.
Kaveh R. Ghazi [Tue, 30 Nov 1999 23:56:52 +0000 (23:56 +0000)]
ansidecl.h (ATTRIBUTE_MALLOC): New macro.

        * ansidecl.h (ATTRIBUTE_MALLOC): New macro.

        * libiberty.h (buildargv, dupargv, concat, choose_temp_base,
        make_temp_file, xmalloc, xcalloc, xstrdup, xmemdup): Add
        ATTRIBUTE_MALLOC.
        (xatexit): Remove __GNUC__ check, add ATTRIBUTE_NORETURN.

From-SVN: r30732

24 years agocalls.c (special_function_p): Remove `realloc' and add `strdup' to the list of functi...
Kaveh R. Ghazi [Tue, 30 Nov 1999 23:55:26 +0000 (23:55 +0000)]
calls.c (special_function_p): Remove `realloc' and add `strdup' to the list of functions which have attribute...

        * calls.c (special_function_p): Remove `realloc' and add `strdup'
        to the list of functions which have attribute malloc by default.

From-SVN: r30731

24 years agoc-lex.c (yylex): With -Wtraditional...
Kaveh R. Ghazi [Tue, 30 Nov 1999 23:26:37 +0000 (23:26 +0000)]
c-lex.c (yylex): With -Wtraditional...

* c-lex.c (yylex): With -Wtraditional, when the ANSI type of an
integer constant does not match the traditional type, limit the
warnings to cases where the base of the type is ten.

* invoke.texi (-Wtraditional): Document it.

From-SVN: r30730

24 years agocombine.c (try_combine): Only pass SET or CLOBBER to SET_DEST
Franz Sirl [Tue, 30 Nov 1999 23:19:06 +0000 (23:19 +0000)]
combine.c (try_combine): Only pass SET or CLOBBER to SET_DEST

        * combine.c (try_combine): Only pass SET or CLOBBER to SET_DEST
        * rs6000.md: Only access a CONST_INT with INTVAL

From-SVN: r30729

24 years agolcm.c (compute_laterin): Cast bb->aux to size_t not int.
Richard Henderson [Tue, 30 Nov 1999 22:28:43 +0000 (14:28 -0800)]
lcm.c (compute_laterin): Cast bb->aux to size_t not int.

        * lcm.c (compute_laterin): Cast bb->aux to size_t not int.
        (compute_nearerout): Likewise.
        * ggc-page.c (ggc_page_print_statistics): Explicitly cast
        size_t to unsigned long for formatting.

From-SVN: r30728

24 years agoJakub Jelinek <jakub@redhat.com>
Jakub Jelinek [Tue, 30 Nov 1999 22:18:21 +0000 (23:18 +0100)]
Jakub Jelinek  <jakub@redhat.com>

        * config/sparc/sparc.h (FIXED_REGISTERS, CONDITIONAL_REGISTER_USAGE):
        Allow the user to override call-used/fixed state of %g2-5
        registers from the command line (with the exception of %g4 for
        embedded model).
        (REG_LEAF_ALLOC_ORDER): Move %g1 and %g4-7 registers to front, so that
        there is a higher chance of having a leaf function.
        (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): Provide separate macros
        for ARCH64 which has %ccr register.
        * config/sparc/sparc.md (return_losum_si, return_losum_di): New
        patterns.
        * config/sparc/sparc.c (eligible_for_epilogue_delay): For the return
        insn accept into delay slot any insn which does not use %[ol]
        registers.  Accept some LO_SUM and shift left by 1 for the normal
        restore case.
        (output_function_epilogue): Likewise.
        (epilogue_renumber): Added argument which inhibits any renumbering
        and just tests if the rtx does not use any %[ol] registers.
        (output_return): Reflect above change.

From-SVN: r30727

24 years agosparc.c (sparc_va_arg): Fix sparc64 va_arg aggregate passing for sizes <= 16 bytes.
Jakub Jelinek [Tue, 30 Nov 1999 22:06:50 +0000 (14:06 -0800)]
sparc.c (sparc_va_arg): Fix sparc64 va_arg aggregate passing for sizes <= 16 bytes.

        * config/sparc/sparc.c (sparc_va_arg): Fix sparc64 va_arg
        aggregate passing for sizes <= 16 bytes.

From-SVN: r30726

24 years agore GNATS libgcj/98 (pthread_mutex_init in libjava/posix-threads.cc)
Tom Tromey [Tue, 30 Nov 1999 18:53:15 +0000 (18:53 +0000)]
re GNATS libgcj/98 (pthread_mutex_init in libjava/posix-threads.cc)

* posix-threads.cc (_Jv_MutexInit): Use _Jv_PthreadGetMutex to get
mutex to initialize.  Initialize `count' if required.
Fixes PR libgcj/98.

From-SVN: r30725

24 years agofix typo
Brendan Kehoe [Tue, 30 Nov 1999 12:47:12 +0000 (07:47 -0500)]
fix typo

From-SVN: r30724

24 years agoDelete obsolete macros
Bernd Schmidt [Tue, 30 Nov 1999 12:16:56 +0000 (12:16 +0000)]
Delete obsolete macros

From-SVN: r30723

24 years agosparc.h (MASK_FASTER_STRUCTS, [...]): Define.
Brendan Kehoe [Tue, 30 Nov 1999 12:02:09 +0000 (12:02 +0000)]
sparc.h (MASK_FASTER_STRUCTS, [...]): Define.

        * sparc.h (MASK_FASTER_STRUCTS, TARGET_FASTER_STRUCTS): Define.
        (TARGET_SWITCHES): Add -mfaster-structs/-mno-faster-structs flags.
        (ROUND_TYPE_ALIGN): Use better value of -mfaster-structs.
        * sparc.md (sparclite86x_branch, sparclite86x_shift): New function
        units for the sparclite86x chip.
        (flush): Revert October 14th change; add SImode specifically.
        (flushdi): Copy of flush, but DImode, to avoid genrecog warnings.
        * invoke.texi: Document it.

From-SVN: r30722

24 years agoFix psimode truncation patterns to not accept MEMs that are not valid for
Nick Clifton [Tue, 30 Nov 1999 11:05:05 +0000 (11:05 +0000)]
Fix psimode truncation patterns to not accept MEMs that are not valid for
PSImode.

From-SVN: r30721

24 years agoflow.c (flow_nodes_print, [...]): New functions.
Michael Hayes [Tue, 30 Nov 1999 10:42:29 +0000 (10:42 +0000)]
flow.c (flow_nodes_print, [...]): New functions.

* flow.c (flow_nodes_print, flow_loops_cfg_dump): New functions.
(flow_loop_nested_p, flow_loops_dump, flow_loops_free): Likewise.
(flow_loop_exits_find, flow_loop_nodes_find): Likewise.
(flow_depth_first_order_compute, flow_loop_pre_header_find): Likewise.
(flow_loop_tree_node_add, flow_loops_tree_build): Likewise.
(flow_loop_level_compute, low_loops_level_compute): Likewise.
(flow_loops_find, flow_loop_outside_edge_p): Likewise.
* basic-block.h: Protect from multiple inclusion.
(flow_loops_find, flow_loops_free, flow_loop_dump): Add protoypes.
(struct loops, struct loop): Define structures.
* sbitmap.c (sbitmap_a_subset_b_p): New function.
* sbitmap.h: Protect from multiple inclusion.
(sbitmap_a_subset_b_p): Add prototype.
* Makefile.in (LOOP_H): New macro.
(stmt.o, integrate.o, loop.o, unroll.o): Replace loop.h with LOOP_H.

From-SVN: r30720

24 years agoDaily bump.
Jeff Law [Tue, 30 Nov 1999 08:45:07 +0000 (01:45 -0700)]
Daily bump.

From-SVN: r30719

24 years agocppinit.c (CAT): The argument list of this macro may not contain spaces !
Philippe De Muyter [Tue, 30 Nov 1999 08:36:13 +0000 (09:36 +0100)]
cppinit.c (CAT): The argument list of this macro may not contain spaces !

        * cppinit.c (CAT): The argument list of this macro may not contain
        spaces !

From-SVN: r30718

24 years agoMove quantity tables and register equivalence chains into
David S. Miller [Tue, 30 Nov 1999 06:03:30 +0000 (22:03 -0800)]
Move quantity tables and register equivalence chains into
per-qty and per-register structure arrays respectively.

From-SVN: r30717

24 years ago* pt.c (tsubst_decl): Robustify.
Mark Mitchell [Mon, 29 Nov 1999 23:39:29 +0000 (23:39 +0000)]
* pt.c (tsubst_decl): Robustify.

From-SVN: r30716

24 years agoInstall proper change
Richard Kenner [Mon, 29 Nov 1999 23:02:14 +0000 (18:02 -0500)]
Install proper change

From-SVN: r30715

24 years agofold-const.c (extract_muldiv, [...]): Reverse operation if C is negative.
Richard Kenner [Mon, 29 Nov 1999 22:56:39 +0000 (22:56 +0000)]
fold-const.c (extract_muldiv, [...]): Reverse operation if C is negative.

* fold-const.c (extract_muldiv, case {MIN,MAX}_EXPR): Reverse
operation if C is negative.
(extract_muldiv, case SAVE_EXPR): Supresss if arg has side effects.
(extract_muldiv, case {PLUS,MINUS}_EXPR): Don't apply distributive
law for some divisions if constant is negative and change other
divisions to the opposite rounding.

From-SVN: r30714

24 years agoexpr.c (store_constructor_field): If bit position is not multiple of alignment of...
Richard Kenner [Mon, 29 Nov 1999 22:44:52 +0000 (22:44 +0000)]
expr.c (store_constructor_field): If bit position is not multiple of alignment of TARGET's mode, use BLKmode.

* expr.c (store_constructor_field): If bit position is not multiple
of alignment of TARGET's mode, use BLKmode.

From-SVN: r30713

24 years agoexpr.c (expand_expr_unaligned): Add more code from full case that is needed when...
Richard Kenner [Mon, 29 Nov 1999 22:35:51 +0000 (22:35 +0000)]
expr.c (expand_expr_unaligned): Add more code from full case that is needed when OP0 is in a register.

* expr.c (expand_expr_unaligned): Add more code from full case
that is needed when OP0 is in a register.

From-SVN: r30712

24 years agoUpdate e-address
Bruce Korb [Mon, 29 Nov 1999 22:31:15 +0000 (22:31 +0000)]
Update e-address

From-SVN: r30711

24 years agoparse.y (catch_clause_parameter:): Still set `$$' to NULL_TREE in case of error.
Alexandre Petit-Bianco [Mon, 29 Nov 1999 20:43:24 +0000 (20:43 +0000)]
parse.y (catch_clause_parameter:): Still set `$$' to NULL_TREE in case of error.

Tue Nov 23 10:55:18 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>

* parse.y (catch_clause_parameter:): Still set `$$' to NULL_TREE
  in case of error. Error message tuned.

This fixes a catch clause error handling reported on the java-discuss
mailing list:

  http://sourceware.cygnus.com/ml/java-discuss/1999-q4/msg00358.html

From-SVN: r30710

24 years agoexception.cc: Remove prototype declarations for malloc and free.
Per Bothner [Mon, 29 Nov 1999 19:43:55 +0000 (11:43 -0800)]
exception.cc: Remove prototype declarations for malloc and free.

1999-11-27  Per Bothner  <per@bothner.com>

* exception.cc:  Remove prototype declarations for malloc and free.
These clash with recent versions of glibc, which specifies `throws ()'
when __cplusplus is defined.  Instead, #include <stdlib.h>.

From-SVN: r30709

24 years agoFix for gcc.c-torture/noncompile/920824-1.c on SH (and mips?)
J"orn Rennecke [Mon, 29 Nov 1999 18:11:35 +0000 (18:11 +0000)]
Fix for gcc.c-torture/noncompile/920824-1.c on SH (and mips?)

Fix for gcc.c-torture/noncompile/920824-1.c on SH (and mips?)
* dwarfout.c (field_byte_offset): Size can be zero if there was
an error.

From-SVN: r30708

24 years agohu Nov 4 16:27:01 1999 Alexandre Petit-Bianco <apbianco@cygnus.com>
Alexandre Petit-Bianco [Mon, 29 Nov 1999 17:40:31 +0000 (17:40 +0000)]
hu Nov  4 16:27:01 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>

        * parse.y (resolve_qualified_expression_name): Handle PLUS_EXPR.
        (qualify_ambiguous_name): Likewise.

(This patch fixes the gcj PR #55.)

From-SVN: r30707

24 years agoDelete unused vars.
Bernd Schmidt [Mon, 29 Nov 1999 17:35:07 +0000 (17:35 +0000)]
Delete unused vars.

From-SVN: r30706

24 years agoAdd missing return types
Bernd Schmidt [Mon, 29 Nov 1999 14:48:30 +0000 (14:48 +0000)]
Add missing return types

From-SVN: r30705

24 years agodon't skip GLIBC files any more, more C++ header testing, corrected spelling of mach
Bruce Korb [Mon, 29 Nov 1999 14:35:50 +0000 (14:35 +0000)]
don't skip GLIBC files any more, more C++ header testing, corrected spelling of mach

From-SVN: r30704

24 years agoNew test: gcc.dg/991129-1.c
Bernd Schmidt [Mon, 29 Nov 1999 12:18:56 +0000 (12:18 +0000)]
New test: gcc.dg/991129-1.c

From-SVN: r30703

24 years agoVerify class is ok when allocating reload reg in push_reload
Bernd Schmidt [Mon, 29 Nov 1999 12:09:54 +0000 (12:09 +0000)]
Verify class is ok when allocating reload reg in push_reload

From-SVN: r30702

24 years agoFix bug in reloads_conflict
Bernd Schmidt [Mon, 29 Nov 1999 11:51:16 +0000 (11:51 +0000)]
Fix bug in reloads_conflict

From-SVN: r30701

24 years agoClean up parts of the scheduler
Bernd Schmidt [Mon, 29 Nov 1999 11:44:57 +0000 (11:44 +0000)]
Clean up parts of the scheduler

From-SVN: r30700

24 years agoDelete useless patterns
Bernd Schmidt [Mon, 29 Nov 1999 11:06:51 +0000 (11:06 +0000)]
Delete useless patterns

From-SVN: r30699

24 years agoFix abort in loop_iterations
Bernd Schmidt [Mon, 29 Nov 1999 10:51:09 +0000 (10:51 +0000)]
Fix abort in loop_iterations

From-SVN: r30698

24 years agoMake ChangeLog entry clearer
Mark Mitchell [Mon, 29 Nov 1999 09:05:34 +0000 (09:05 +0000)]
Make ChangeLog entry clearer

From-SVN: r30697

24 years agoDaily bump.
Jeff Law [Mon, 29 Nov 1999 08:45:07 +0000 (01:45 -0700)]
Daily bump.

From-SVN: r30696

24 years agosparc.c (init_cumulative_args): Fix type of third arg.
David S. Miller [Mon, 29 Nov 1999 08:07:23 +0000 (00:07 -0800)]
sparc.c (init_cumulative_args): Fix type of third arg.

1999-11-29  David S. Miller  <davem@redhat.com>

* config/sparc/sparc.c (init_cumulative_args): Fix type of third
arg.
* config/sparc/sparc-protos.h: Update proto, move into RTX_CODE.

From-SVN: r30695

24 years agoFix a typo.
Jeff Law [Mon, 29 Nov 1999 06:18:49 +0000 (23:18 -0700)]
Fix a typo.

From-SVN: r30694

24 years agocom.c (ffecom_file_, [...]): Constify a char*.
Kaveh R. Ghazi [Mon, 29 Nov 1999 02:50:04 +0000 (02:50 +0000)]
com.c (ffecom_file_, [...]): Constify a char*.

        * com.c (ffecom_file_, ffecom_file, file_buf,
        ffecom_open_include_): Constify a char*.
        (ffecom_possible_partial_overlap_): Mark parameter `expr2' with
        ATTRIBUTE_UNUSED.
        (ffecom_init_0): Use a fully prototyped cast in call to bsearch.
        (lang_print_error_function): ANSI-fy.

        * com.h (ffecom_file): Constify a char*.

        * fini.c (main): Call return, not exit.

        * g77spec.c (lang_specific_driver): Use non-const *in_argv in
        assignment.

        * intrin.c (ffeintrin_cmp_name_): Don't needlessly cast away
        const-ness.

From-SVN: r30693

24 years agocom.c (ffecom_get_invented_identifier): Rewrite to take an ellipses.
Kaveh R. Ghazi [Mon, 29 Nov 1999 02:26:49 +0000 (02:26 +0000)]
com.c (ffecom_get_invented_identifier): Rewrite to take an ellipses.

* com.c (ffecom_get_invented_identifier): Rewrite to take an ellipses.

(ffecom_char_enhance_arg_, ffecom_do_entry_,
ffecom_f2c_make_type_, ffecom_gen_sfuncdef_,
ffecom_start_progunit_, ffecom_start_progunit_,
ffecom_start_progunit_, ffecom_sym_transform_assign_,
ffecom_transform_equiv_, ffecom_transform_namelist_,
ffecom_vardesc_, ffecom_vardesc_array_, ffecom_vardesc_dims_,
ffecom_end_transition, ffecom_lookup_label, ffecom_temp_label):
Adjust accordingly.

* com.h (ffecom_get_invented_identifier): Likewise.

* sts.c (ffests_printf): New function taking ellipses.
(ffests_printf_1D, ffests_printf_1U, ffests_printf_1s,
ffests_printf_2Us): Delete.

* sts.h: Likewise.

* std.c (ffestd_R1001dump_, ffestd_R1001dump_1005_1_,
ffestd_R1001dump_1005_2_, ffestd_R1001dump_1005_3_,
ffestd_R1001dump_1005_4_, ffestd_R1001dump_1005_5_,
ffestd_R1001dump_1010_2_, ffestd_R1001dump_1010_3_,
ffestd_R1001dump_1010_4_, ffestd_R1001dump_1010_5_,
ffestd_R1001rtexpr_): Call `ffests_printf', not `ffests_printf_*'.

* ste.c (ffeste_io_ialist_, ffeste_io_cilist_, ffeste_io_cllist_,
ffeste_io_icilist_, ffeste_io_inlist_, ffeste_io_olist_): Likewise.

From-SVN: r30692

24 years agolibiberty.h: Include stdarg.h when ANSI_PROTOTYPES is defined.
Kaveh R. Ghazi [Mon, 29 Nov 1999 02:08:36 +0000 (02:08 +0000)]
libiberty.h: Include stdarg.h when ANSI_PROTOTYPES is defined.

        * libiberty.h: Include stdarg.h when ANSI_PROTOTYPES is defined.
        (asprintf, vasprintf): Provide declarations.

From-SVN: r30691

24 years agosco5.h (FINI_SECTION_ASM_OP_COFF): Move destructor fn table from .fini into .dtor.
Robert Lipe [Sun, 28 Nov 1999 21:44:43 +0000 (21:44 +0000)]
sco5.h (FINI_SECTION_ASM_OP_COFF): Move destructor fn table from .fini into .dtor.

        * i386/sco5.h (FINI_SECTION_ASM_OP_COFF): Move destructor fn
        table from .fini into .dtor.

From-SVN: r30690

24 years agotree.h (struct tree_decl): Add malloc_flag.
Anthony Green [Sun, 28 Nov 1999 20:45:34 +0000 (20:45 +0000)]
tree.h (struct tree_decl): Add malloc_flag.

* tree.h (struct tree_decl): Add malloc_flag.
(DECL_IS_MALLOC): Define.
* c-common.c (attrs): Add A_MALLOC attribute.
(init_attributes): Add this attribute to the table.
(decl_attributes): Handle malloc attribute.
* calls.c (special_function_p): Check for the malloc attribute.
* extend.texi (Function Attributes): Document malloc attribute.

From-SVN: r30689

24 years ago* pa.md (reload shift-add patterns): Remove.
Jeffrey A Law [Sun, 28 Nov 1999 20:24:48 +0000 (20:24 +0000)]
* pa.md (reload shift-add patterns): Remove.

From-SVN: r30688

24 years ago* reorg.c (dbr_schedule) Print more statistics. Corrected
Herman A.J. ten Brugge [Sun, 28 Nov 1999 20:05:50 +0000 (21:05 +0100)]
* reorg.c (dbr_schedule) Print more statistics. Corrected
        problem when printing info when 3 delay slots are filled.

From-SVN: r30687

24 years agoDaily bump.
Jeff Law [Sun, 28 Nov 1999 08:45:07 +0000 (01:45 -0700)]
Daily bump.

From-SVN: r30686

24 years agocombine.c (setup_incoming_promotions): Pass an outgoing regno to FUNCTION_ARG_REGNO_P...
Jakub Jelinek [Sun, 28 Nov 1999 08:08:02 +0000 (09:08 +0100)]
combine.c (setup_incoming_promotions): Pass an outgoing regno to FUNCTION_ARG_REGNO_P which it expects.

        * combine.c (setup_incoming_promotions): Pass an outgoing
        regno to FUNCTION_ARG_REGNO_P which it expects.

From-SVN: r30685

24 years ago* mips/linux.h (CPP_PREDEFINES): Undefine before redefining.
Andreas Jaeger [Sun, 28 Nov 1999 08:03:00 +0000 (09:03 +0100)]
* mips/linux.h (CPP_PREDEFINES): Undefine before redefining.

From-SVN: r30684

24 years ago* hashtab.c (sys/types.h): File included.
Philippe De Muyter [Sun, 28 Nov 1999 07:58:37 +0000 (08:58 +0100)]
* hashtab.c (sys/types.h): File included.

From-SVN: r30683

24 years ago* cccp.c (do_include): Avoid initialization of automatic variable.
Philippe De Muyter [Sun, 28 Nov 1999 07:56:53 +0000 (08:56 +0100)]
* cccp.c (do_include): Avoid initialization of automatic variable.

From-SVN: r30682

24 years agointegrate.c (mark_stores): Function definition made void, to match previous declaration.
Philippe De Muyter [Sun, 28 Nov 1999 07:47:57 +0000 (08:47 +0100)]
integrate.c (mark_stores): Function definition made void, to match previous declaration.

        * integrate.c (mark_stores): Function definition made void, to match
        previous declaration.
        * regclass.c (dump_regclass): Ditto.
        * Makefile.in (WARN_CFLAGS): Macro augmented by `-Wtraditional'.

From-SVN: r30681

24 years ago* gcc_update: Allow patches compressed by bzip2.
William Bader [Sun, 28 Nov 1999 07:41:09 +0000 (07:41 +0000)]
* gcc_update: Allow patches compressed by bzip2.

From-SVN: r30680

24 years agoFix typo
Mark Mitchell [Sat, 27 Nov 1999 18:04:50 +0000 (18:04 +0000)]
Fix typo

From-SVN: r30679

24 years agodecl2.c (finish_file): Call expand_body for inline functions that will be written...
Mark Mitchell [Sat, 27 Nov 1999 18:01:48 +0000 (18:01 +0000)]
decl2.c (finish_file): Call expand_body for inline functions that will be written out but that do not...

* decl2.c (finish_file): Call expand_body for inline functions
that will be written out but that do not yet have RTL.
* semantics.c (expand_body): Do not generate RTL For inline
functions that do not yet need to be written out.

From-SVN: r30678

24 years agoexpr.c (store_constructor): Use EXACT_DIV_EXPR when dividend is known to be multiple...
Richard Kenner [Sat, 27 Nov 1999 14:55:36 +0000 (14:55 +0000)]
expr.c (store_constructor): Use EXACT_DIV_EXPR when dividend is known to be multiple of divisor.

* expr.c (store_constructor): Use EXACT_DIV_EXPR when dividend is
known to be multiple of divisor.

From-SVN: r30677

24 years ago* expr.c (store_constructor): Don't clobber TARGET if CLEARED.
Richard Kenner [Sat, 27 Nov 1999 14:47:23 +0000 (14:47 +0000)]
* expr.c (store_constructor): Don't clobber TARGET if CLEARED.

From-SVN: r30676

24 years agoNew test: compile/991127-1.c
Bernd Schmidt [Sat, 27 Nov 1999 14:08:36 +0000 (14:08 +0000)]
New test: compile/991127-1.c

From-SVN: r30675

24 years agocombine.c (try_combine): Add code to try to merge a set of a two-word pseudo to a...
Richard Kenner [Sat, 27 Nov 1999 13:59:20 +0000 (13:59 +0000)]
combine.c (try_combine): Add code to try to merge a set of a two-word pseudo to a constant with a...

* combine.c (try_combine): Add code to try to merge a set of a
two-word pseudo to a constant with a setting of one of those words
to a constant.

From-SVN: r30674

24 years agofold-const.c (negate_expr, [...]): New.
Richard Kenner [Sat, 27 Nov 1999 13:50:13 +0000 (13:50 +0000)]
fold-const.c (negate_expr, [...]): New.

* fold-const.c (negate_expr, associate_trees, extract_muldiv): New.
(split_tree): Completely rework to make more general.
(make_range, fold): Call negate_expr.
(fold, case NEGATE_EXPR): Simplify -(a-b) is -ffast-math.
(fold, associate): Call new split_tree and associate_trees.
(fold, case MULT_EXPR, case *_{DIV,MOD}_EXPR): Call extract_muldiv.

From-SVN: r30673

24 years agoDaily bump.
Jeff Law [Sat, 27 Nov 1999 08:45:07 +0000 (01:45 -0700)]
Daily bump.

From-SVN: r30672

24 years agoAvoid GNU C extension
Bernd Schmidt [Fri, 26 Nov 1999 11:44:37 +0000 (11:44 +0000)]
Avoid GNU C extension

From-SVN: r30671

24 years agoDaily bump.
Jeff Law [Fri, 26 Nov 1999 08:45:06 +0000 (01:45 -0700)]
Daily bump.

From-SVN: r30670

24 years agoMake-lang.in (CXX_SRCS): Add optimize.c.
Mark Mitchell [Thu, 25 Nov 1999 20:32:04 +0000 (20:32 +0000)]
Make-lang.in (CXX_SRCS): Add optimize.c.

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

24 years ago/gcc/../texinfo/makeinfo/Makefile ] ...
Mark Mitchell [Thu, 25 Nov 1999 20:06:25 +0000 (20:06 +0000)]
/gcc/../texinfo/makeinfo/Makefile ] ...

/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

24 years agoexcept.h (eh_status): Adjust documentation for x_protect_list.
Mark Mitchell [Thu, 25 Nov 1999 19:21:27 +0000 (19:21 +0000)]
except.h (eh_status): Adjust documentation for x_protect_list.

* 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

24 years agoc-common.c (check_format_info): Don't call a variadic function with a non-literal...
Kaveh R. Ghazi [Thu, 25 Nov 1999 16:58:32 +0000 (16:58 +0000)]
c-common.c (check_format_info): Don't call a variadic function with a non-literal format string.

* 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

24 years ago* tree.c (unsave_expr_now): Handle NULL_TREE as input.
Mark Mitchell [Thu, 25 Nov 1999 16:14:00 +0000 (16:14 +0000)]
* tree.c (unsave_expr_now): Handle NULL_TREE as input.

From-SVN: r30665

24 years agoreg-stack.c (subst_stack_regs_pat): Swap operands in commutative operations when...
Jan Hubicka [Thu, 25 Nov 1999 12:53:44 +0000 (13:53 +0100)]
reg-stack.c (subst_stack_regs_pat): Swap operands in commutative operations when needed.

* 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

24 years agomips.md (casesi_internal): Add missing brace.
Andreas Jaeger [Thu, 25 Nov 1999 11:11:43 +0000 (12:11 +0100)]
mips.md (casesi_internal): Add missing brace.

1999-11-25  Andreas Jaeger  <aj@suse.de>

* config/mips/mips.md (casesi_internal): Add missing brace.

From-SVN: r30663

24 years agodwarf2out.c (pend_type, [...]): Lose.
Jason Merrill [Thu, 25 Nov 1999 09:31:49 +0000 (09:31 +0000)]
dwarf2out.c (pend_type, [...]): Lose.

        * 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

24 years agoDaily bump.
Jeff Law [Thu, 25 Nov 1999 08:45:07 +0000 (01:45 -0700)]
Daily bump.

From-SVN: r30661

24 years ago* config/mips/mips.md (call_value_multiple_interanal1): New.
Gavin Romig-Koch [Thu, 25 Nov 1999 04:44:27 +0000 (04:44 +0000)]
* config/mips/mips.md (call_value_multiple_interanal1): New.

From-SVN: r30660

24 years agodwarf2out.c (free_AT, free_die): New fns.
Jason Merrill [Thu, 25 Nov 1999 02:36:40 +0000 (02:36 +0000)]
dwarf2out.c (free_AT, free_die): New fns.

        * 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

24 years agosearch.c (note_debug_info_needed): Do perform this optimization for dwarf2.
Jason Merrill [Thu, 25 Nov 1999 02:33:31 +0000 (02:33 +0000)]
search.c (note_debug_info_needed): Do perform this optimization for dwarf2.

        * 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

24 years ago* except.c (emit_handlers): Zero catch_clauses after emitting them.
Mark Mitchell [Thu, 25 Nov 1999 02:17:23 +0000 (02:17 +0000)]
* except.c (emit_handlers): Zero catch_clauses after emitting them.

From-SVN: r30657

24 years agopt.c (tsubst_decl): Copy TREE_ASM_WRITTEN for VAR_DECLs.
Mark Mitchell [Thu, 25 Nov 1999 01:56:13 +0000 (01:56 +0000)]
pt.c (tsubst_decl): Copy TREE_ASM_WRITTEN for VAR_DECLs.

* pt.c (tsubst_decl): Copy TREE_ASM_WRITTEN for VAR_DECLs.

* decl2.c (finish_vtable_vardecl): Don't prune vtables here.

From-SVN: r30656

24 years agoprims.cc (_Jv_NewObjectArray): Use _Jv_GetArrayElementFromElementType.
Tom Tromey [Thu, 25 Nov 1999 00:36:51 +0000 (00:36 +0000)]
prims.cc (_Jv_NewObjectArray): Use _Jv_GetArrayElementFromElementType.

* 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

24 years agosh.h (SECONDARY_OUTPUT_RELOAD_CLASS): Add the case where we need to reload fpul from...
Andrew Haley [Wed, 24 Nov 1999 18:57:08 +0000 (18:57 +0000)]
sh.h (SECONDARY_OUTPUT_RELOAD_CLASS): Add the case where we need to reload fpul from a system register.

Wed Nov 24 18:39:18 1999  Andrew Haley  <aph@cygnus.com>

* config/sh/sh.h (SECONDARY_OUTPUT_RELOAD_CLASS): Add the case
where we need to reload fpul from a system register.

From-SVN: r30654

24 years agolinux.h (CPP_PREDEFINES): Added.
Andreas Jaeger [Wed, 24 Nov 1999 17:07:37 +0000 (18:07 +0100)]
linux.h (CPP_PREDEFINES): Added.

* config/mips/linux.h (CPP_PREDEFINES): Added.
(LINK_SPEC): Remove -Y since this is only needed on sparc.

From-SVN: r30653

24 years agolinux.h (TARGET_VERSION): Added.
Andreas Jaeger [Wed, 24 Nov 1999 15:19:20 +0000 (16:19 +0100)]
linux.h (TARGET_VERSION): Added.

* config/mips/linux.h (TARGET_VERSION): Added.
(HANDLE_SYSV_PRAGMA): Added.
(DEFAULT_VTABLE_THUNKS): Added.

From-SVN: r30652

24 years agolocal-alloc.c (qty): New structure and static variable.
Jan Hubicka [Wed, 24 Nov 1999 13:14:57 +0000 (14:14 +0100)]
local-alloc.c (qty): New structure and static variable.

* local-alloc.c (qty): New structure and static variable.
(qty_phys_reg): Remove, all references changed to qty.
(qty_n_refs): Likewise.
(qty_min_class): Likewise.
(qty_birth): Likewise.
(qty_death): Likewise.
(qty_size): Likewise.
(qty_mode): Likewise.
(qty_n_calls_crossed): Likewise.
(qty_alternate_class): Likewise.
(qty_changes_size): Likewise.
(qty_first_reg): Likewise.
(alloc_qty): Rename variable QTY to QTYNO.
(finf_free_reg): Likewise.
(local_alloc): Allocate qty, do not allocate the removed variables.

From-SVN: r30651

24 years agoDaily bump.
Jeff Law [Wed, 24 Nov 1999 08:45:06 +0000 (01:45 -0700)]
Daily bump.

From-SVN: r30650