Commit Graph

27901 Commits

Author SHA1 Message Date
Richard Henderson 5e9e738cd2 * flow.c (propagate_one_insn): Mark sets even when the insn is dead.
From-SVN: r33564
2000-05-01 00:21:29 -07:00
Richard Henderson c4686982aa ifcvt.c (noce_process_if_block): Fail the conversion if X is referenced bewteen the condition and the jump.
* ifcvt.c (noce_process_if_block): Fail the conversion if X is
        referenced bewteen the condition and the jump.  Don't delete
        anything but the jump.

From-SVN: r33563
2000-04-30 23:55:44 -07:00
Scott Snyder 5724a0e641 decl.c (finish_destructor_body): Use the base destructor when destroying virtual bases.
* decl.c (finish_destructor_body): Use the base destructor when
	destroying virtual bases.

From-SVN: r33562
2000-05-01 06:01:33 +00:00
Mark Mitchell 738e281059 expr.c (cplus_expand_expr): Preserve temporaries when expanding STMT_EXPRs.
* expr.c (cplus_expand_expr): Preserve temporaries when expanding
	STMT_EXPRs.
	* optimize.c (struct inline_data): Add target_exprs field.
	(declare_return_variable): When a function returns an aggregate,
	use the variable declared in the TARGET_EXPR as the remapped
	DECL_RESULT.
	(expand_call_inline): Update the pending target_exprs stack.
	(optimize_function): Initialize the stack.

From-SVN: r33561
2000-05-01 05:50:40 +00:00
Jason Eckhardt e3fdc58a35 bb-reorder.c (scope_def): New struct.
Sun Apr 30 22:48:24 2000  Jason Eckhardt  <jle@cygnus.com>

	* bb-reorder.c (scope_def): New struct.
	(scope_forest_info): New struct.
	(struct reorder_block_def): New member "scope".
	(REORDER_BLOCK_SCOPE): New macro.
	(relate_bbs_with_scopes): New function and prototype.
	(make_new_scope): Likewise.
	(build_scope_forest): Likewise.
	(remove_scope_notes): Likewise.
	(insert_intra_1): Likewise.
	(insert_intra_bb_scope_notes): Likewise.
	(insert_inter_bb_scope_notes): Likewise.
	(rebuild_scope_notes): Likewise.
	(free_scope_forest_1): Likewise.
	(free_scope_forest): Likewise.
	(dump_scope_forest): Likewise.
	(dump_scope_forest_1): Likewise.
	(chain_reorder_blocks): Set REORDER_BLOCK_SCOPE for new block.
	Update REORDER_BLOCK_EFF_HEAD and REORDER_BLOCK_EFF_END for new
	block.
	(reorder_basic_blocks): Added calls to build_scope_scope_forest
	and remove_scope_notes before reordering is done. Added calls to
	rebuild_scope_notes, free_scope_forest, and reorder_blocks after
	after reordering is done.

From-SVN: r33560
2000-05-01 03:46:21 +00:00
Mark Mitchell 4c0aad2c08 * decl2.c (finish_file): Fix typo in comment.
From-SVN: r33559
2000-05-01 01:43:24 +00:00
Benjamin Kosnik 6dd4c3fd8f mknumeric_limits (trait_name): Fix copyright notice.
2000-04-30  Benjamin Kosnik  <bkoz@gnu.org>

	* mknumeric_limits (trait_name): Fix copyright notice.
	* src/gen-num-limits.cc: Explicitly instantiate epsilon and
	round_error data members of struct value. This works around
	weak-linking issues on AIX, HPUX.

From-SVN: r33558
2000-05-01 00:14:10 +00:00
Bruce Korb 82c3a53ec9 removed two stale entries
From-SVN: r33557
2000-04-30 23:59:45 +00:00
Bruce Korb 4c1880265e Added definitions needed by OSR5
From-SVN: r33556
2000-04-30 23:30:15 +00:00
Richard Henderson 0ca4f243d7 ifcvt.c (dead_or_predicable): Manually squeeze non-movable notes from the last insn in the sequence.
* ifcvt.c (dead_or_predicable): Manually squeeze non-movable notes
        from the last insn in the sequence.

From-SVN: r33555
2000-04-30 11:41:37 -07:00
Mark Mitchell baf05df059 * method.c (emit_thunk): Don't try to return a `void' value.
From-SVN: r33554
2000-04-30 18:03:36 +00:00
Mark Mitchell 04dfcc8fbe optimize.c (initialize_inlined_parameters): If the parameter is addressable...
* optimize.c (initialize_inlined_parameters): If the parameter is
	addressable, we need to make a new VAR_DECL, even if the
	initializer is constant.

From-SVN: r33553
2000-04-30 18:02:10 +00:00
Zack Weinberg 6d2c2047b5 cpplex.c (cpp_idcmp): New function.
* cpplex.c (cpp_idcmp): New function.
	* cpplib.h: Prototype it.
	* scan_decls.c (scan_decls): Use it to inspect token names.
	* fix-header.c (read_scan_file): Likewise.  Set system_header_p on
	the file being run through the preprocessor.
	(check_macro_names): Provide length of token to cpp_defined.

	* Makefile.in: Remove stale warning message.

From-SVN: r33552
2000-04-30 17:30:25 +00:00
Zack Weinberg 638d694d84 cppfiles.c (redundant_include_p): Provide length of token to cpp_defined.
* cppfiles.c (redundant_include_p): Provide length of token to
	cpp_defined.
	* cpphash.c (_cpp_make_hashnode, _cpp_lookup_slot): Hash
	values are unsigned int.
	(_cpp_lookup, _cpp_lookup_slot): Do not calculate the length.
	(_cpp_lookup_slot): Do not calculate the hash, either.
	* cpphash.h: Update prototypes.
	* cpplib.c (do_define, do_undef, do_pragma_poison, do_assert):
	Hashes are unsigned int.  Calculate hash here, pass by value
	to _cpp_lookup_slot.

From-SVN: r33551
2000-04-30 17:11:25 +00:00
Benjamin Kosnik 3f49b8429c mkcheck.in: Rely on exit status instead of the presence of a core file.
2000-04-28  Loren J. Rittle  <ljrittle@acm.org>

        * mkcheck.in: Rely on exit status instead of the presence of a
        core file.  Added comments on how/where to save core and exe
        files.  Move shell wildcards outside quotes and fix core path.

From-SVN: r33550
2000-04-30 16:12:56 +00:00
Bernd Schmidt 4d0482f6eb Fix memory corruption bug
From-SVN: r33549
2000-04-30 13:37:15 +00:00
Richard Henderson a5c874cb02 d30v: New port.
* config/d30v: New port.

        * configure.in (d30v-*): Set fp format.
        * configure: Rebuild.

From-SVN: r33548
2000-04-30 04:17:13 -07:00
Richard Henderson 9ec6d7ab0f ifcvt.c: New file.
* ifcvt.c: New file.
        * Makefile.in (OBJS): Add it.
        (ifcvt.o): New target.
        * jump.c (jump_optimize_1): Remove all code related to if-conversion,
        and conditional arithmetic.
        (find_insert_position): Remove.
        * timevar.def (TV_IFCVT, TV_IFCVT2): New.
        * toplev.c (DFI_ce, DFI_ce2): New.
        (dump_file): Add ce and ce2 dumps.
        (rest_of_compilation): Run if_convert a couple o times.  Set
        cse_not_expected after cse2.  Don't set no_new_pseudos until
        after sched1 or recompute_reg_usage.

From-SVN: r33547
2000-04-30 04:01:53 -07:00
Richard Henderson 927b868f8c t-crtbe (crtbegin.o): Add "-I.".
* config/alpha/t-crtbe (crtbegin.o): Add "-I.".
        (crtend.o, crtbeginS.o, crtendS.o): Likewise.

From-SVN: r33546
2000-04-30 03:56:21 -07:00
Richard Henderson 4151b3135a Remove ifnottex block confusing makeinfo 3.12.
From-SVN: r33545
2000-04-30 03:50:57 -07:00
Richard Henderson 11ae508b7a flow.c (struct reg_cond_life_info): New.
* flow.c (struct reg_cond_life_info): New.
        (struct propagate_block_info): Add reg_cond_dead and reg_cond_reg.
        (init_propagate_block_info): Initialize them.
        (free_propagate_block_info): Destruct them.
        (mark_set_1): Consider conditional life before killing a register.
        (mark_regno_cond_dead): New.
        (free_reg_cond_life_info): New.
        (flush_reg_cond_reg_1, flush_reg_cond_reg): New.
        (ior_reg_cond, not_reg_cond, nand_reg_cond): New.
        (mark_used_reg): Record conditional life.

        * haifa-sched.c (schedule_insns): Disable death counting
        sanity check for HAVE_conditional_execution.

From-SVN: r33544
2000-04-30 03:37:57 -07:00
Richard Henderson 614f6bc164 Makefile.in (TIMEVAR_H): New.
* Makefile.in (TIMEVAR_H): New.
        (ggc-simple.o, ggc-page.o, toplev.o, timevar.o): Use it.
        (timevar.h): Remove rule.

From-SVN: r33543
2000-04-30 03:31:01 -07:00
Richard Henderson 99eb5b266f Missed last config/alpha update.
From-SVN: r33540
2000-04-30 03:15:05 -07:00
Jeff Law d77ffb2ada Daily bump.
From-SVN: r33539
2000-04-30 01:45:07 -06:00
Zack Weinberg d2158690ae cpphash.h (enum node_type): Take out T_MCONST.
* cpphash.h (enum node_type: Take out T_MCONST.
	(union hashval): Move into struct hashnode.
	(struct hashnode): Pack tighter.  Remove file, line, col
	members.
	* cpphash.c: Constify most of the macro-definition structures.
	(struct definition): Replace by struct object_defn
	and struct funct_defn.  Put file, line, column information
	here.  All users updated to match.
	(_cpp_create_definition, _cpp_macroexpand): Remove special
	case for #define WORD OTHERWORD.
	* cpplib.c (do_undef): Remove T_MCONST case.

From-SVN: r33538
2000-04-30 01:34:00 +00:00
Richard Henderson 10d1117cbc crtend.asm: Use C comments instead of #.
* config/alpha/crtend.asm: Use C comments instead of #.
        * config/alpha/crtbegin.asm: Likewise.  Mark __dso_handle hidden.

        * config/alpha/elf.h (SELECT_SECTION): Treat CONSTRUCTOR like VAR_DECL.

From-SVN: r33537
2000-04-29 14:12:45 -07:00
Zack Weinberg 5cebbd8de3 cpphash.h: Move struct reflist, struct definition, and the DEFINITION typedef to cpphash.c.
* cpphash.h: Move struct reflist, struct definition, and the
	DEFINITION typedef to cpphash.c.  Use 'struct definition *' in
	union hashval.  _cpp_free_definition takes a HASHNODE pointer.
	* cpphash.c (_cpp_free_definition): Free data pointed to by
	MCONST, XCONST, MACRO, and FMACRO nodes properly.
	(_cpp_create_definition, del_HASHNODE): Just call
	_cpp_free_definition to clear out a hashnode.
	* cpplib.c (do_pragma_poison): Likewise.

From-SVN: r33536
2000-04-29 20:58:12 +00:00
Phil Edwards 0bf0f02717 download.html: Add link to list of mirror sites.
2000-04-29  Phil Edwards  <pme@sourceware.cygnus.com>

	* docs/download.html:  Add link to list of mirror sites.

From-SVN: r33535
2000-04-29 20:41:19 +00:00
Alexandre Oliva a47944e2be mn10300.h (FIRST_DATA_REGNUM, [...]): New macros.
* config/mn10300/mn10300.h (FIRST_DATA_REGNUM,
LAST_DATA_REGNUM, FIRST_ADDRESS_REGNUM, LAST_ADDRESS_REGNUM,
FIRST_EXTENDED_REGNUM, LAST_EXTENDED_REGNUM): New macros.
(REGNO_SP_P): Redefine in terms of STACK_POINTER_REGNUM.
(REGNO_DATA_P, REGNO_ADDRESS_P, REGNO_EXTENDED_P,
REGNO_AM33_P): Redefine in terms of the new macros.
(CONDITIONAL_REGISTER_USAGE, REGNO_REG_CLASS): Likewise.
(FUNCTION_VALUE, LIBCALL_VALUE, FUNCTION_VALUE_REGNO_P,
STRUCT_VALUE): Likewise.
(STACK_POINTER_REGNUM, FRAME_POINTER_REGNUM,
ARG_POINTER_REGNUM, STATIC_CHAIN_REGNUM): Likewise.  Moved.

From-SVN: r33534
2000-04-29 15:28:42 +00:00
Alexandre Oliva 3b94497c20 Makefile.in (maintainer-clean-subdir): Fix handling of empty SUBDIRS.
* Makefile.in (maintainer-clean-subdir): Fix handling of empty
SUBDIRS.

From-SVN: r33533
2000-04-29 14:25:12 +00:00
Jeff Law 9fe4928b88 Daily bump.
From-SVN: r33532
2000-04-29 01:45:07 -06:00
Jason Merrill 0cc2105eb3 revert
From-SVN: r33531
2000-04-28 20:17:06 -04:00
Jan Hubicka a2ee843035 regmove.c (struct record_stack_memrefs_data): New.
* regmove.c (struct record_stack_memrefs_data): New.
	(record_stack_memrefs): New function.
	(combine_stack_adjustments_for_block): Use it.

From-SVN: r33529
2000-04-28 23:27:40 +00:00
Jan Hubicka 0c4c16df3e calls.c (calls_function_1): Propertly handle TREE_LIST expressions; use special_function_p to detect alloca.
* calls.c (calls_function_1):  Propertly handle TREE_LIST expressions;
	use special_function_p to detect alloca.

From-SVN: r33528
2000-04-28 23:17:41 +00:00
Marc Espie e67466053b * gcc.texi: Fixes for makeinfo 4.0 --html.
From-SVN: r33526
2000-04-28 16:31:40 -06:00
Kenneth Block 24eaa47a46 * libiberty/cplus-dem.c
(libiberty_demanglers): new table for demangle styles
        (cplus_demangle_set_style): New function for setting style
        (cplus_demangle_name_to_style): New function to translate name
        * include/demangle.h
        (libiberty_demanglers): new table for different styles
        (cplus_demangle_set_style): New function for setting style
        (cplus_demangle_name_to_style): New function to translate name

Co-Authored-By: Jason Merrill <jason@casey.cygnus.com>

From-SVN: r33525
2000-04-28 18:22:22 -04:00
Cosmin Truta 34332678da * decl.c (grok_op_properties): Add an extra check of argtypes.
From-SVN: r33524
2000-04-28 18:10:24 -04:00
Jason Merrill 62014cb327 index-prop: Use a single pattern.
* index-prop: Use a single pattern.  Also support *** cdiffs.

        * index-prop: Don't change /dev/null.

From-SVN: r33523
2000-04-28 18:06:30 -04:00
Zack Weinberg 2f7205ffb2 pcp.h: Delete file.
* pcp.h: Delete file.
	* po/POTFILES.in: Update.

From-SVN: r33522
2000-04-28 22:03:48 +00:00
Kazu Hirata f40a8c0363 h8300.c (function_epilogue): Clean up flags when the last insn in a function is a barrier.
* h8300.c (function_epilogue): Clean up flags when the last insn
        in a function is a barrier.

From-SVN: r33521
2000-04-28 15:51:42 -06:00
Chris Demetriou e7651ec5a5 configure.in (sparc-hal-solaris2*): protect [] glob from my expansion.
* configure.in (sparc-hal-solaris2*): protect [] glob from
        my expansion.
        (mips*-*-ecoff*, mips*-*-elf*, mips*-*-*): use MASK_ defines
        rather than hard-coded constants in target_cpu_default2.
        * configure: Regenerate.

From-SVN: r33520
2000-04-28 15:46:33 -06:00
Jason Merrill c083cf9a09 tree.c (get_callee_fndecl): Extract the initial value from a readonly decl.
* tree.c (get_callee_fndecl): Extract the initial value from
        a readonly decl.

        * cp/optimize.c (initialize_inlined_parameters): Call
        c_apply_type_quals_to_decl.  Set DECL_INITIAL.

From-SVN: r33518
2000-04-28 16:52:31 -04:00
Richard Henderson e67cd9f80d varasm.c (record_constant_1): Record the CODE_LABEL when taking the address of a LABEL_REF.
* varasm.c (record_constant_1): Record the CODE_LABEL when
        taking the address of a LABEL_REF.

From-SVN: r33517
2000-04-28 13:25:38 -07:00
Richard Henderson ce48579b9a calls.c (combine_pending_stack_adjustment_and_call): Return the adjustment; don't do the stack adjust.
* calls.c (combine_pending_stack_adjustment_and_call): Return the
        adjustment; don't do the stack adjust.
        (expand_call): Call compute_argument_block_size right before
        allocating the block; update comment; don't do alignment sanity
        checking for sibling call; use args_size instead of
        unadjusted_args_size before args_size is adjusted.  Use
        combine_pending_stack_adjustment_and_call to compute stack adjust
        for must_preallocate case.

        * expr.c (push_block): Remove shadow `temp' in inner scope.

Co-Authored-By: Jan Hubicka <jh@suse.cz>

From-SVN: r33516
2000-04-28 11:25:23 -07:00
Jason Merrill f1f39752d6 toplev.c (rest_of_compilation): Call note_deferral_of_defined_inline_function even if the function can't be inlined.
* toplev.c (rest_of_compilation): Call
        note_deferral_of_defined_inline_function even if the function
        can't be inlined.

From-SVN: r33515
2000-04-28 14:22:33 -04:00
Scott Bambrough bb1ec1d79f cpplex.c (_cpp_scan_line): Fix buffer overwrite.
2000-04-28  Scott Bambrough  <scottb@netwinder.org>

	* cpplex.c (_cpp_scan_line): Fix buffer overwrite.

From-SVN: r33514
2000-04-28 18:17:54 +00:00
Richard Henderson d8d1d62b90 * toplev.c (rest_of_type_compilation): Fix sdb TIMEVAR typo.
From-SVN: r33513
2000-04-28 11:05:39 -07:00
Tom Tromey 72ddef6d32 Removed mistakenly-committed ChangeLog entry
From-SVN: r33512
2000-04-28 16:29:30 +00:00
Tom Tromey f9f70f2dda re GNATS gcj/218 (Java executables can abort trying to access a null pointer in a leaf function)
* libgcj.spec.in (*jc1): Added -fasynchronous-exceptions.
	Fix for PR gcj/218.

From-SVN: r33511
2000-04-28 16:11:56 +00:00
Kaveh R. Ghazi 4fbe8d0735 * timevar.c (init_timevar): DeANSIfy function definition.
From-SVN: r33509
2000-04-28 13:51:55 +00:00