Diego Novillo [Thu, 18 Nov 1999 00:41:13 +0000 (00:41 +0000)]
invoke.texi: Add documentation for -muninit-const-in-rodata.
* invoke.texi: Add documentation for -muninit-const-in-rodata.
* config/mips/mips.h (MASK_UNINIT_CONST_IN_RODATA): Define.
(TARGET_UNINIT_CONST_IN_RODATA): Define.
(text_section): Add switches -munint-const-in-rodata and
-mno-uninit-const-in-rodata.
(ASM_OUTPUT_COMMON): Remove.
(ASM_OUTPUT_ALIGNED_DECL_COMMON): Define. Check if uninitialized
const objects should be placed in read-only data. Otherwise declare
them in common.
Jan Hubicka [Wed, 17 Nov 1999 17:39:18 +0000 (18:39 +0100)]
i386.md (divmodsi4): Rewrite to expander.
Mon Nov 15 22:45:39 CET 1999 Jan Hubicka <hubicka@freesoft.cz>
* i386.md (divmodsi4): Rewrite to expander.
(*divmodsi4_nocltd): New.
(*divmodsi4_cltd): New.
(divmodsi4 splitter): Handle the case when input comes in edx.
(udivmodhi4): Do not use constraints in exander.
(ashrsi3_31): Conditionize by TARGET_USE_CLTD.
Geoff Keating [Wed, 17 Nov 1999 02:34:15 +0000 (02:34 +0000)]
u77-test.f (wd): Allow for longer working directory pathnames.
* gcc/testsuite/g77.f-torture/execute/u77-test.f (wd): Allow for longer
working directory pathnames.
* libf2c/libU77/u77-test.f (wd): Allow for longer working directory
pathnames.
ggc-common.c (ggc_print_statistics): Cast size_t to unsigned long for printing.
* ggc-common.c (ggc_print_statistics): Cast size_t to unsigned long
for printing.
* ggc.h (struct ggc_statistics): Rearrange elements for better
packing on 64-bit hosts.
* lcm.c (compute_laterin): Store a size_t not an int in bb->aux.
(compute_nearerout): Likewise.
Mark Mitchell [Tue, 16 Nov 1999 03:42:28 +0000 (03:42 +0000)]
cp-tree.h (build_enumerator): Change prototype.
* cp-tree.h (build_enumerator): Change prototype.
* decl.c (enum_next_value): Remove.
(enum_overflow): Likewise.
(init_decl_processing): Don't register enum_next_value as a root.
(start_enum): Clear TYPE_VALUES for a redefined enum.
(finish_enum): Reset the type of enumeration constants.
(build_enumerator): Fix indentation. Don't copy CONST_DECLs when
we don't need to. Maintain the TYPE_VALUES list and look there
for the previously defined enumeration constant. Let enumeration
constants have the type of their values until the enumeration type
is complete.
* parse.y (enumlist_opt, enumlist, enumerator): Don't return a value.
(structsp): Adjust.
* parse.c: Regenerated.
* pt.c (tsubst_enum): Adjust according to build_enumerator changes.
Jason Merrill [Tue, 16 Nov 1999 01:37:39 +0000 (01:37 +0000)]
class.c (finish_struct): If we're a local class in a template function, add a TAG_DEFN.
* class.c (finish_struct): If we're a local class in a template
function, add a TAG_DEFN.
* pt.c (lookup_template_class): If this is a local class in a
template function, call pushtag.
(tsubst_expr, case TAG_DEFN): Handle classes, too.
Emit debug info with the vtable.
* search.c (maybe_suppress_debug_info): New function...
* class.c (finish_struct_1): ...split out from here.
* cp-tree.h: Declare it.
* decl2.c (finish_vtable_vardecl): Override TYPE_DECL_SUPPRESS_DEBUG
if we're writing out the vtable.
* decl.c, search.c (dfs_debug_mark, dfs_debug_unmarked_p,
note_debug_info_needed): #if 0 out.
Jason Merrill [Tue, 16 Nov 1999 00:13:51 +0000 (00:13 +0000)]
dwarf2out.c (scope_die_for): Don't rely on the decl_scope_table notion of nesting to find the DIE for a type...
* dwarf2out.c (scope_die_for): Don't rely on the decl_scope_table
notion of nesting to find the DIE for a type or function.
DIEs can go in limbo even if we got a context_die.
(push_decl_scope): Our context doesn't need to be in decl_scope_table.
(gen_struct_or_union_type_die): Don't use TREE_PERMANENT to test
for local type.
(gen_decl_die): Ignore NAMESPACE_DECLs for now.
(gen_type_die): Writing out the context doesn't cause member class
template instantiations to be written out as well.
Jeffrey A Law [Mon, 15 Nov 1999 08:12:29 +0000 (08:12 +0000)]
basic-block.h: Remove all #defines and prototypes related to integer lists.
* basic-block.h: Remove all #defines and prototypes related to
integer lists.
(free_bb_mem, compute_preds_succs): Remove prototype.
* rtl.h (free_bb_mem): Remove prototype.
* flow.c (alloc_int_list_node); Remove function.
(add_inst_list_node, free_int_list, add_pred_succ): Likewise.
(compute_preds_succs, free_bb_mem): Likewise.
* gcse.c (gcse_main): Do not call free_bb_mem anymore.
* toplev.c (rest_of_compilation): Likewise.
* haifa-sched.c (build_control_flow): Use flow generated edge
list to build the haifa specific edge list.
(find_rgns): Use new CFG data structures instead of pred/succ lists.
(schedule_insns): Do not build pred/succ lists anymore. Instead
build the edge table.
* gcse.c (delete_null_pointer_checks_1): Kill unused s_preds
argument. All callers changed.
(delete_null_pointer_checks_1): No longer need to compute the
pred/succ lists.
Mark Mitchell [Sun, 14 Nov 1999 20:29:06 +0000 (20:29 +0000)]
cp-tree.h (DECL_LOCAL_FUCNTION_P): New macro.
* cp-tree.h (DECL_LOCAL_FUCNTION_P): New macro.
* call.c (equal_functions): Use DECL_LOCAL_FUCNTION_P, not
TREE_PERMANENT.
* decl.c (pushdecl): Set DECL_LOCAL_FUNCTION_P.
* decl2.c (lookup_arg_dependent): Use it.
Mark Mitchell [Sun, 14 Nov 1999 05:04:19 +0000 (05:04 +0000)]
call.c (build_conditional_expr): Use build_target_expr_with_type.
* call.c (build_conditional_expr): Use build_target_expr_with_type.
(convert_like): Likewise.
(build_over_call): Likewise.
* cp-tree.h (build_target_expr): Remove.
(build_target_expr_with_type): New function.
* cvt.c (build_up_reference): Use get_target_expr.
* decl.c (build_target_expr): Move to ...
* tree.c (build_target_expr): Here. Make it static.
(build_target_expr_with_type): New function. Set DECL_CONTEXT on
the temporary VAR_DECLs.
(get_target_expr): Use it.
* decl.c (duplicate_decls): Propagate DECL_DEFER_OUTPUT.
* decl2.c (comdat_linkage): Set DECL_DEFER_OUTPUT.
* rtti.c (get_tinfo_fn_unused): Split out from get_tinfo_fn.
* class.c (set_rtti_entry): Use it.
Vladimir Makarov [Fri, 12 Nov 1999 20:26:29 +0000 (20:26 +0000)]
i960.h (CAN_DEBUG_WITHOUT_FP): Don't define it.
Fri Nov 12 15:14:19 1999 Vladimir Makarov <vmakarov@tofu.to.cygnus.com>
* i960.h (CAN_DEBUG_WITHOUT_FP): Don't define it.
(FRAME_POINTER_REQUIRED): Don't worry about nonlocal goto.
(ELIMINABLE_REGS, CAN_ELIMINATE, INITIAL_ELIMINATION_OFFSET): New.
(INITIAL_FRAME_POINTER_OFFSET): Remove it.
* i960.c (i960_function_prologue): Don't allocate space for g8-g11
saved on the stack. Output more accurate stack frame statistics
into assembler file.
* genextract.c (record_insn_name): New function.
(get_insn_name): No longer a stub.
(main): Call record_insn_name for each insn. After each label
written, print the insn name in a comment.
Mike Stump [Fri, 12 Nov 1999 19:13:06 +0000 (19:13 +0000)]
Date...
Date: Sun, 20 Dec 1998 22:07:16 -0700
Message-ID: <10469.914216836@upchuck>
From: Jeffrey A Law <law@upchuck.cygnus.com>
Update the MAINTAINERS file and the next time you encounter one of these
obviously correct fixes send a copy of the patch you checked in to egcs-patches
with a note that you checked the patch in.
Jeffrey A Law [Thu, 11 Nov 1999 09:21:12 +0000 (09:21 +0000)]
flow.c (compute_flow_dominators): Initially put all blocks on the worklist.
* flow.c (compute_flow_dominators): Initially put all blocks on
the worklist.
* lcm.c (compute_antinout_edge, compute_available): Similarly.
* gcse.c (compute_cprop_avinout): Remove.
(compute_cprop_data): Use compute_available.
(delete_null_pointer_checks_1): Use compute_available.
Jeffrey A Law [Thu, 11 Nov 1999 06:38:15 +0000 (06:38 +0000)]
basic-block.h (compute_available): Returns a void now.
* basic-block.h (compute_available): Returns a void now.
* gcse.c (one_classic_gcse_pass): Do not expect compute_available
to return a value anymore.
* lcm.c (compute_available, compute_antinout_edge): Revamp to use
worklists. Fix boundary cases. Compute maximal solutions.
(compute_laterin, compute_nearerout): Similarly.
Clinton Popetz [Wed, 10 Nov 1999 17:17:15 +0000 (17:17 +0000)]
gcov.c (struct arcdata): Add hits and total, remove prob.
* gcov.c (struct arcdata): Add hits and total, remove prob.
(output_branch_counts): New.
(process_args): Set output_branch_counts if -c.
(calculate_branch_probs): Store hits and total instead of
percentage.
(output_data): Emit counts if output_branch_counts is true.
* gcov.texi (Invoking Gcov): Document -c switch..