geoffk [Sun, 28 May 2000 01:06:11 +0000 (01:06 +0000)]
* combine.c (subst): Honour CLASS_CANNOT_CHANGE_SIZE when
substituting the REG in a (subreg:X (reg:Y ...)).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34217
138bc75d-0d04-0410-961f-
82ee72b054a4
neil [Sun, 28 May 2000 01:03:16 +0000 (01:03 +0000)]
* cpplex.c (_cpp_lex_line): Merge vertical space. Flag
first token of a line BOL. Update EOF code for this.
Remove illegal directive check - it appears in the (not
yet committed) caller.
* cpplib.h (BOL): New flag.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34216
138bc75d-0d04-0410-961f-
82ee72b054a4
neil [Sat, 27 May 2000 23:27:36 +0000 (23:27 +0000)]
* cpplex.c (_cpp_init_toklist): No comment space to initialise.
(_cpp_free_toklist): No comment space to free.
(expand_comment_space): Remove.
(save_comment_space): Place the comment in the current token and
not in a separate comment space.
(_cpp_lex_line): Save comments during plain code and #define
directives only.
* cpplib.h (struct _cpp_toklist): Remove comment space.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34215
138bc75d-0d04-0410-961f-
82ee72b054a4
neil [Sat, 27 May 2000 23:19:56 +0000 (23:19 +0000)]
* cppexp.c (parse_assertion): Supply extra argument to
_cpp_init_toklist.
* cpplib.c (do_assert, do_unassert): Similarly.
* cpphash.h (_cpp_init_toklist) Update.
(_cpp_expand_token_space): New.
(DUMMY_TOKEN, NO_DUMMY_TOKEN): New.
* cpplex.c (_cpp_init_toklist): New argument.
(parse_string2): New argument multiline_ok.
(spell_token): Take a const cpp_token *.
(INIT_NAME): Replace with INIT_TOKEN_NAME. Update tokens_used.
(SPELL_ macros): Replace with enum.
(expand_token_space): Replace with _cpp_expand_token_space.
Take COUNT argument.
(IS_DIRECTIVE): Update.
(_cpp_lex_line): Update token structure before parsing number.
Don't assume start at beginning of token list.
(save_comment): Use INIT_TOKEN_NAME.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34214
138bc75d-0d04-0410-961f-
82ee72b054a4
zack [Sat, 27 May 2000 22:34:05 +0000 (22:34 +0000)]
* configure.in (stage1_warn_cflags): Add -Wstrict-prototypes
-Wmissing-prototypes.
* configure: Regenerate.
* gcc.texi: Remove explanation of MD_CALL_PROTOTYPES.
* builtins.c, calls.c: Change all instances of gen_call_* or
gen_sibcall_* to GEN_CALL_* and GEN_SIBCALL_*.
* calls.c (struct_value_size_rtx): Separate definition from
initialization to avoid unused variable warning.
* genflags.c (gen_macro): New function.
(gen_proto): Call it for gen_call_* and gen_sibcall_*.
(gen_nonproto): Delete.
(gen_insn): Put all insns on the same obstack.
(main): Generate prototypes for everything unconditionally.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34213
138bc75d-0d04-0410-961f-
82ee72b054a4
zack [Sat, 27 May 2000 22:05:01 +0000 (22:05 +0000)]
* configure.in: Add AC_CHECK_TYPE(ssize_t). Remove commented
out check for wchar_t.
* acconfig.h: Add template for ssize_t. Remove @TOP@.
* system.h: Add infrastructure for defining missing
TYPE_MAX/TYPE_MIN macros. Use it to provide fallback
definitions of UCHAR_MAX and SSIZE_MAX.
* configure: Regenerate.
* config.in: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34212
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Sat, 27 May 2000 21:37:17 +0000 (21:37 +0000)]
* Makefile.in (libgcc2.ready): Rename to libgcc.ready.
Depend on $(LANGUAGES) as well as $(GCC_PATCHES) and fixed
headers.
(clean): No need to delete libgcc1.a, libgcc1-asm.a,
libgcc2.a, or libgcc1.null.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34211
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Sat, 27 May 2000 21:36:52 +0000 (21:36 +0000)]
* Make-lang.in (cplib2.ready): Eradicate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34210
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Sat, 27 May 2000 20:34:12 +0000 (20:34 +0000)]
* config/alpha/alpha.c (hard_fp_register_operand): Mind the mode.
(hard_int_register_operand): New.
* config/alpha/alpha-protos.h: Declare it.
* config/alpha/alpha.h (PREDICATE_CODES): Update.
* config/alpha/alpha.md (peep2 patterns): Use hard_int_register_operand
as needed; use peep2_reg_dead_p instead of dead_or_set_p.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34209
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Sat, 27 May 2000 20:23:15 +0000 (20:23 +0000)]
* Makefile.in (recog.o): Don't depend on resource.h.
* recog.c: Don't include resource.h.
(recog_last_allowed_insn): Remove.
(recog_next_insn): Remove.
(struct peep2_insn_data): New.
(peep2_insn_data, peep2_current): New.
(peep2_next_insn): New.
(peep2_regno_dead_p, peep2_reg_dead_p): New.
(peep2_find_free_register): New.
(peephole2_optimize): Track life information by insn as we go.
* recog.h: Update declarations.
* resource.c (find_free_register, reg_dead_p): Remove.
* resource.h: Remove their declarations.
* toplev.c: Include hard-reg-set.h before recog.h.
* genconfig.c (max_insns_per_peep2): New.
(gen_peephole2): New.
(main): Call it.
* genemit.c (output_peephole2_scratches): Generate calls to
peep2_find_free_register; adjust surrounding code.
(main): Have insn-emit.c include hard-reg-set.h before recog.h.
* genrecog.c (change_state): Don't track last_insn.
(write_action): Write into *_pmatch_len before accepting.
(write_tree): Adjust peephole2_insns and subroutines to match.
* config/i386/i386.md (all peepholes): Use peep2_regno_dead_p.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34208
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Sat, 27 May 2000 20:10:38 +0000 (20:10 +0000)]
* function.c (thread_prologue_epilogue_insns): Don't move the
line note at the head of the chain. Only force a lineno note
before the end of block 0.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34207
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Sat, 27 May 2000 20:03:31 +0000 (20:03 +0000)]
* gensupport.c (collect_insn_data): Record the maximum number
of alternatives, not the last seen.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34206
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Sat, 27 May 2000 20:01:10 +0000 (20:01 +0000)]
* genoutput.c: Don't include errors.h.
(struct data): Add lineno member.
(have_error): New.
(scan_operands): Use message_with_line instead of error.
(validate_insn_alternatives): Likewise.
(gen_insn): Accept and store the pattern's line number.
(gen_peephole, gen_expand, gen_split): Likewise.
(main): Don't set progname. Pass line_no to gen_foo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34205
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Sat, 27 May 2000 19:53:21 +0000 (19:53 +0000)]
* config/d30v/d30v.c (d30v_print_operand): Handle ':'.
* config/d30v/d30v.h (PRINT_OPERAND_PUNCT_VALID_P): Accept ':'.
* config/d30v/d30v.md (attr predicable): New.
(all insn patterns): Mark non-predicable patterns; use %: on the rest.
(andsi3*): Unify into one pattern.
(iorsi3*, xorsi3*): Likewise.
(peephole2 patterns): Use peep2_reg_dead_p; verify not a
conditional return.
(old cond_exec patterns): Remove.
(define_cond_exec): New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34204
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Sat, 27 May 2000 15:21:17 +0000 (15:21 +0000)]
* tree.h (TREE_CODE_LENGTH): New macro.
* c-common.c (c_find_base_decl): Use it.
* expr.c (safe_from_p): Likewise.
* print-tree.c (print_node): Likewise.
* tree.c (make_node, copy_node, get_identifier): Likewie.
(first_rtl_op, contains_placeholder_p, substitute_in_expr): Likewise.
(build, build_nt, build_parse_node, simple_cst_equal): Likewise.
* fold-const.c (make_range): Likewise.
(fold): Likewise; also use first_rtl_op.
* c-iterate.c (collect_iterators): Use first_rtl_op.
* calls.c (calls_function_1): Likewise; also rename TYPE to CLASS.
Use IS_EXPR_CODE_CLASS.
(preexpand_calls): Likewise.
* ggc-common.c (ggc_mark_trees): Rework to use first_rtl_op
and TREE_CODE_LENGTH.
* stmt.c (warn_if_unused_value): If no operands, no unused value.
* ch/lang.c (deep_const_expr): Use first_rtl_op.
* ch/satisfy.c (satisfy): Use TREE_CODE_LENGTH.
* cp/method.c (mangle_expression): Use TREE_CODE_LENGTH.
* cp/tree.c (break_out_calls, build_min_nt): Use TREE_CODE_LENGTH.
(built_min, cp_tree_equal): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34203
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sat, 27 May 2000 07:45:07 +0000 (07:45 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34202
138bc75d-0d04-0410-961f-
82ee72b054a4
geoffk [Sat, 27 May 2000 07:44:25 +0000 (07:44 +0000)]
* config/rs6000/rs6000.md (movsi_internal1): Use '%a1' rather
than '%1(%*)'.
(movdi_internal64): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34201
138bc75d-0d04-0410-961f-
82ee72b054a4
geoffk [Sat, 27 May 2000 02:24:32 +0000 (02:24 +0000)]
* config/rs6000/rs6000.md: Correct order of operands for DImode
boolean patterns.
* config/rs6000/rs6000.c (boolean_or_operator): New function.
* config/rs6000/rs6000-protos.h (boolean_or_operator): Prototype it.
* config/rs6000/rs6000.h (PREDICATE_CODES): Add boolean_or_operator.
* config/rs6000/rs6000.md: Use boolean_or_operator instead of
boolean_operator for the boolean patterns without NOTs.
* config/rs6000/rs6000.c (reg_or_logical_cint_operand): Rename
from reg_or_u_cint_operand. Change comment and behaviour.
(logical_operand): Clean up, add assertion.
(non_logical_cint_operand): Also check for
reg_or_logical_cint_operand.
* config/rs6000/rs6000.h (PREDICATE_CODES): Update.
* config/rs6000/rs6000.md (iorsi3): Use reg_or_logical_cint_operand
in the expander.
(xorsi3): Likewise.
(iordi3): Likewise.
(xordi3): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34200
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Fri, 26 May 2000 21:40:01 +0000 (21:40 +0000)]
* tree.h (struct record_layout_info): Rename to (struct
record_layout_info_s).
* stor-layout.c (start_record_layout): Replace
`record_layout_info' with `record_layout_info_s'.
* class.c (layout_nonempty_base_or_field): Replace
`record_layout_info' with `record_layout_info_s'.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34199
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 26 May 2000 21:05:05 +0000 (21:05 +0000)]
Fix goto checking.
* cp-tree.h (struct language_function): x_named_labels is now
a struct named_label_list*.
* decl.c (struct named_label_use_list): Renamed from...
(struct named_label_list): ...this. New struct.
(push_binding_level): Don't set eh_region.
(note_level_for_eh): New fn.
(pop_label): Take label and old value directly.
(pop_labels): Adjust for new named_labels format.
(lookup_label): Likewise.
(poplevel): Note characteristics of a binding level containing a
named label. Mess with named label lists earlier.
(mark_named_label_lists): New fn.
(mark_lang_function): Call it.
(use_label): New fn, split out from...
(make_label_decl): ...here. Don't call it.
(decl_jump_unsafe, check_previous_goto, check_previous_goto_1,
check_previous_gotos): New fns, split out from...
(define_label): ...here.
(check_switch_goto): New fn.
(define_case_label): Call it.
(check_goto): New fn.
* semantics.c (finish_goto_stmt): Call it and use_label.
(begin_compound_stmt): If we're a try block, call note_level_for_eh.
(expand_stmt): Never pass 1 as DONT_JUMP_IN to expand_end_bindings.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34198
138bc75d-0d04-0410-961f-
82ee72b054a4
pme [Fri, 26 May 2000 19:59:46 +0000 (19:59 +0000)]
2000-05-26 Phil Edwards <pme@sourceware.cygnus.com>
* acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): If strtoll isn't
available, force --disable. Need to flesh this out; make smarter.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* mkcheck.in: Minor tweaks.
* docs/download.html: Fix typo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34197
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Fri, 26 May 2000 18:57:28 +0000 (18:57 +0000)]
2000-05-26 Zack Weinberg <zack@wolery.cumb.org>
* java/parse.y (find_applicable_accessible_methods_list):
Don't add an uninitialized value to the list.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34196
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Fri, 26 May 2000 17:47:25 +0000 (17:47 +0000)]
* class.c (build_vtable_entry_ref): Correct usage of
get_vtbl_decl_for_binfo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34195
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Fri, 26 May 2000 16:54:18 +0000 (16:54 +0000)]
* decl2.c (grokclassfn): Set DECL_LANGUAGE here.
* method.c (implicitly_declare_fn): Not here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34194
138bc75d-0d04-0410-961f-
82ee72b054a4
rearnsha [Fri, 26 May 2000 10:30:47 +0000 (10:30 +0000)]
* flow.c (find_label_refs): New function.
(find_basic_blocks_1): Call it for each alternative of a call
placeholder.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34193
138bc75d-0d04-0410-961f-
82ee72b054a4
rearnsha [Fri, 26 May 2000 09:51:00 +0000 (09:51 +0000)]
* ifcvt.c (cond_exec_get_condition): Set test_if to the SET_SRC
of get_pc.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34192
138bc75d-0d04-0410-961f-
82ee72b054a4
nathan [Fri, 26 May 2000 08:50:47 +0000 (08:50 +0000)]
* cp-tree.h (CPTI_PTMD_DESC_TYPE): Rename to ...
(CPTI_PTMD_DESC_TYPE): ... here.
(ptmd_desc_type_node): Rename to ...
(ptm_desc_type_node): ... here.
* decl.c: Likewise.
* rtti.c (ptmd_initializer): Rename to ...
(ptm_initializer): ... here.
(sythesize_tinfo_var): Adjust. Deal with pointer to member
function.
(create_tinfo_types): Adjust.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34190
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Fri, 26 May 2000 07:45:07 +0000 (07:45 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34189
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Fri, 26 May 2000 07:04:21 +0000 (07:04 +0000)]
* config/alpha/alpha.c (alpha_comparison_operator): Don't be
so strict about DImode.
(alpha_swapped_comparison_operator): Likewise.
* config/alpha/alpha.md (*setne_internal): Name it. Allow
any integer output mode.
(*setcc_internal): Likewise.
(*setcc_swapped_internal): Likewise.
(*movdicc_internal, *movdicc_lbc, *movdicc_lbs): Name them.
(*mov[qhs]icc_internal): New.
(*mov[qhs]icc_lbc, *mov[qhs]icc_lbs): New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34188
138bc75d-0d04-0410-961f-
82ee72b054a4
zack [Fri, 26 May 2000 03:36:25 +0000 (03:36 +0000)]
2000-05-25 J. David Anglin <dave@hiauly1.hia.nrc.ca>
* vax.h (CPP_SPEC): Define __GFLOAT and GFLOAT when -mg is specified.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34187
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Fri, 26 May 2000 03:34:33 +0000 (03:34 +0000)]
* bb-reorder.c (reorder_block_def): Reorder elements for size.
Remove add_jump; add next; replace flags with visited.
(rbd_init): Remove.
(REORDER_BLOCK_HEAD, REORDER_BLOCK_VISITED): Remove.
(REORDER_BLOCK_FLAGS, REORDER_BLOCK_INDEX): Remove.
(REORDER_BLOCK_ADD_JUMP, REORDER_BLOCK_EFF_HEAD): Remove.
(REORDER_BLOCK_EFF_END, REORDER_BLOCK_SCOPE): Remove.
(RBI): New.
(reorder_index, reorder_last_visited): Remove.
(skip_insns_after_block): Rewrite to use a switch.
(get_common_dest): Remove.
(chain_reorder_blocks): Remove.
(record_effective_endpoints): Split out from reorder_basic_blocks.
(make_reorder_chain): Likewise. Loop until all blocks are placed.
(make_reorder_chain_1): Renamed from old make_reorder_chain.
Only construct the reorder chain, do not move insns. Try harder
to tail recurse.
(label_for_bb, emit_jump_to_block_after): New.
(fixup_reorder_chain): Use them. Do bulk block movement. Examine
and adjust the jump insns appropriately. Fixup basic_block_info.
(verify_insn_chain): Always define.
(relate_bbs_with_scopes): Call xmalloc, not xcalloc. Fix thinko
in allocation size.
(make_new_scope): Don't write zeros to calloc'd space.
(build_scope_forest): Rely on xrealloc to DTRT.
(reorder_basic_blocks): Don't build loop nest. Don't fail if
profile_arc_flag. Streamline EH test.
* flow.c (redirect_edge_succ, redirect_edge_pred): New.
* basic-block.h: Declare them.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34186
138bc75d-0d04-0410-961f-
82ee72b054a4
aoliva [Fri, 26 May 2000 02:15:55 +0000 (02:15 +0000)]
* gcc.c-torture/compile/
20000523-1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34185
138bc75d-0d04-0410-961f-
82ee72b054a4
aoliva [Fri, 26 May 2000 01:49:38 +0000 (01:49 +0000)]
* emit-rtl.c (reset_used_decls): New function.
(unshare_all_rtl_again): Call it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34184
138bc75d-0d04-0410-961f-
82ee72b054a4
zack [Fri, 26 May 2000 01:29:35 +0000 (01:29 +0000)]
* cpplex.c (maybe_macroexpand): Warn about function-like
macros used in non-function context, if -Wtraditional.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34183
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Fri, 26 May 2000 01:16:20 +0000 (01:16 +0000)]
* parse.y (resolve_field_access): Don't check DECL_LANG_SPECIFIC
when trying to see if field's class should be initialized. Always
initialize field's declaring class, not qualified class.
For PR gcj/162.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34182
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Fri, 26 May 2000 01:12:37 +0000 (01:12 +0000)]
* parse.y (array_constructor_check_entry): Pass `wfl_value', not
`wfl_operator', to maybe_build_primttype_type_ref.
Fixes PR gcj/235.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34181
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Thu, 25 May 2000 23:59:45 +0000 (23:59 +0000)]
* recog.c (peephole2_optimize): Use INSN_P.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34180
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 25 May 2000 23:53:23 +0000 (23:53 +0000)]
* ifcvt.c (seq_contains_jump): New.
(noce_try_store_flag_constants): Use it to fail conversion.
(noce_try_store_flag_inc, noce_try_store_flag_mask): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34179
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Thu, 25 May 2000 23:43:43 +0000 (23:43 +0000)]
* except.h (can_throw): Declare it.
* except.c (can_throw): Give it external linkage.
* resource.c (find_dead_or_set_registers): Use can_throw.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34178
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Thu, 25 May 2000 23:27:18 +0000 (23:27 +0000)]
Finish implementation of VTTs.
* cp-tree.h (cp_tree_index): Add CPTI_VTT_PARM_TYPE and
CPTI_VTT_PARM_IDENTIFIER.
(vtt_parm_identifier): New macro.
(vtt_parm_type): Likewise.
(BINFO_SUBVTT_INDEX): Likewise.
(BINFO_VPTR_INDEX): Likewise.
(struct lang_decl): Add vtt_parm.
(DECL_VTT_PARM): New macro.
(DECL_USE_VTT_PARM): Likewise.
(DECL_NEEDS_VTT_PARM_P): Likewise.
(get_vtt_name): Declare.
(build_artifical_parm): Likewise.
(fixup_all_virtual_upcast_offsets): Likewise.
(expand_indirect_vtbls_init): Remove.
* call.c (build_new_method_call): Pass the vtt to subobject
constructors and destructors.
* class.c (get_vtt_name): Give it external linkage.
(build_clone): Handle the magic VTT parameters for clones.
(clone_function_decl): Fix typo in comment.
(build_vtt): Keep track of the indices in the VTTs where various
entities are stored.
(build_vtt_inits): Likewise.
(dfs_build_vtt_inits): Likewise.
(build_ctor_vtbl_group): Tweak type of construction vtables.
(dfs_accumulate_vtbl_inits): Build vtables for all bases, even
primary bases, when building construction vtables.
* decl.c (duplicate_decls): Handle DECL_VTT_PARM.
(initialize_predefined_identifiers): Add vtt_parm_identifier.
(init_decl_processing): Initialize vtt_parm_type.
(grokfndecl): Use DECL_OVERLOADED_OPERATOR_P.
(lang_mark_tree): Make vtt_parm.
* decl2.c (build_artificial_parm): New function.
(maybe_retrofit_in_chrg): Use it. Add VTT parameters.
(grokclassfn): Use build_artificial_parm.
* init.c (initialize_vtbl_ptrs): Call
fixup_all_virtual_upcast_offsets directly.
(perform_member_init): Use the complete subobject destructor for
member cleanups.
(build_vtbl_address): New function.
(expand_virtual_init): Handle VTTs.
* optimize (maybe_clone_body): Likewise.
* search.c (fixup_all_virtual_upcast_offsets): Give it external
linkage.
(expand_indirect_vtbls_init): Remove.
* semantics.c (setup_vtbl_ptr): Fix typos in comment.
* tree.c (make_binfo): Make them bigger.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34177
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 25 May 2000 23:19:35 +0000 (23:19 +0000)]
* flow.c (mark_set_1): Don't record conditionally dead memory.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34176
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 25 May 2000 21:38:49 +0000 (21:38 +0000)]
* combine.c (try_combine): Use any_condjump_p, any_uncondjump_p
and pc_set at the place of simplejump_p and condjump_p.
* cse.c (record_jump_equiv): Likewise.
* emit-rtl.c (emit): Likewise.
* explow.c (find_next_ref): Likewise.
* flow.c (tidy_fallthru_edge): Likewise.
(init_propagate_block_info): Likewise.
* gcse.c (delete_null_pointer_checks): Likewise.
* ifcvt.c (cond_exec_get_condition, noce_get_condition,
dead_or_predicable): Likewise.
* integrate.c (copy_insn_list): Likewise.
* loop.c (scan_loop, verify_dominator, find_and_verify_loops,
for_each_insn_in_loop, check_dbra_loop, get_condition,
insert_bct, load_mems): Likewise.
* resource.c (find_dead_or_set_registers): Likewise.
* sibcalls.c (simplejump_p): Likewise.
* unroll.c (copy_loop_body, reg_dead_after_loop): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34175
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Thu, 25 May 2000 18:17:46 +0000 (18:17 +0000)]
* rs6000.c (expand_block_move): Add 64-bit PowerPC doubleword move
to STRING case. Use doubleword STRING move for TARGET_POWERPC64
when unaligned.
* rs6000.h (CONST_OK_FOR_LETTER_P, 'J'): unsigned HOST_WIDE_INT.
(RETURN_ADDR_RTX): Use COUNT and FRAME, not count and frame.
(LEGITIMIZE_RELOAD_ADDRESS): unsigned HOST_WIDE_INT high.
* rs6000.md: Name various internal patterns.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34174
138bc75d-0d04-0410-961f-
82ee72b054a4
pme [Thu, 25 May 2000 16:59:08 +0000 (16:59 +0000)]
Early checkin of footer.html to trigger web checkout.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34173
138bc75d-0d04-0410-961f-
82ee72b054a4
nathan [Thu, 25 May 2000 16:58:47 +0000 (16:58 +0000)]
* g++.old-deja/g++.abi/ptrflags.C: Use __pbase_type_info.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34172
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 25 May 2000 16:41:30 +0000 (16:41 +0000)]
Jan Hubicka <jh@suse.cz>
* jump.c (invert_exp_1): Remove first argument, use pc_set
to get the expression.
(redirect_exp): Make static; redirect only the pc_set expression,
remove first argument.
(invert_exp): Remove first argument, make static.
(jump_optimize): Use any_condjump_p, any_uncondjump_p and
any_onlyjump at most places where we originaly did condjump_p
and simplejump_p.
(jump_back_p, follow_jumps, thread_jumps): Likewise.
(delete_barrier_succesors): Use pc_set.
(invert_jump_1, invert_jump, redirect_jump_1, redirect_jump): Update
calls of invert_exp and redirect_exp.
* rtl.h (redirect_exp, invert_exp): Remove.
* unroll.c (copy_loop_body): Use invert_jump and redirect_jump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34171
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 25 May 2000 16:33:32 +0000 (16:33 +0000)]
* stmt.c (expand_end_bindings): Fix thinko last change.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34170
138bc75d-0d04-0410-961f-
82ee72b054a4
aph [Thu, 25 May 2000 15:21:51 +0000 (15:21 +0000)]
2000-05-25 Andrew MacLeod <amacleod@cygnus.com>
Andrew Haley <aph@cygnus.com>
* except.c (func_eh_entry): Add emitted field.
(new_eh_region_entry): Set emitted field to 0;
(output_exception_table_entry): Only emit previously un-emitted data,
and send it to the eh_data section.
(output_exception_table): Break out common parts. Output
exception table for entire compilation unit to eh_data section.
(output_exception_table_data): Common parts of output_exception_table.
Send output to eh_data section.
(output_function_exception_table): Output exception table data for
a single function to eh_data section.
(free_exception_table): New external to free the table.
* except.h (free_exception_table): Add prototype.
(output_function_exception_table): Add prototype.
* final.c (final_end_function): Output function exception table
for IA64_UNWIND_INFO.
(final_scan_insn): Emit any unwind directives for an insn.
* frame-dwarf2.c: New file containing all DWARF 2 specific code
from frame.c.
* frame.c: Remove all DWARF 2 specific code.
* config/ia64/frame-ia64.c: New file.
(gthread_stuff): Make all gthread available with
IA64_UNWIND_INFO.
(dwarf_fde): Define an IA64 struct for dwarf_fde.
(__register_frame_info, __register_frame): Move to common area of file.
(__register_frame_info_table, __register_frame_table): Move to common i
area.
(__deregister_frame_info, __deregister_frame): Move to common area.
(__frame_init, find_fde): New versions for IA64_UNWIND_INFO.
(read_uleb128): New version for ia64.
(get_unwind_record): Read the next IA-64 unwind record.
(read_R_record): Read a region header record.
(process_a_b_reg_code): X record helper.
(read_X_record): Read an X format record.
(read_B_record): Read a B format record.
(P3_record_types): List of record types matching the P3 format.
(P7_record_types): List of record types matching the P7 format.
(P8_record_types): List of record types matching the P8 format.
(read_P_record): Read a P format record.
(init_ia64_reg_loc): Set default fields for a register.
(init_ia64_unwind_frame): Set defaults for all register records.
(execute_one_ia64_descriptor): Execute one descriptor record.
(rse_address_add): Calculate the position of a local reg in memory.
(normalize_reg_loc): Turn a location descriptor into a memory address.
(maybe_normalize_reg_loc): Only normalize a descriptor if it falls
within a specified PC offset range.
(get_real_reg_value): Given a register location, retrieve its value.
(set_real_reg_value): Change the value of a register location.
(copy_reg_value): Copy reg values, if needed.
(copy_saved_reg_state): Copy all registers that need to be copied.
(process_state_between): Normalize all frame register records that
fall within the specified PC range.
(frame_translate): Take a processed frame description, and turn
everything into addresses.
(build_ia64_frame_state ): Find and create frame state record for a PC.
(get_personality): Get the personality routine for a given frame.
(get_except_table): Get the exception table for a given frame.
(record_name): Unwind record names for debugging.
(print_record): Print and unwind record.
(print_all_records): Print an entire unwind image.
(__ia64_backtrace): Print a backtrace.
(ia64_backtrace_helper): New function.
(__register_frame_info_aux): New function.
* config/ia64/crtend.asm (__do_frame_setup_aux): New function.
* frame.h (enum unw_record_type): New unwind record types.
(struct unw_p_record, unw_b_record, unw_x_record) : New unwind records.
(struct unw_r_record, unwind_record): New unwind record structs.
(struct unwind_info_ptr): Unwind information layout.
(IA64_UNW_LOC_TYPE_*): Macros for different types for location
descriptors.
(struct ia64_reg_loc): Register location description.
(struct ia64_frame_state): Location of all registers in a frame.
(struct object): Add pc_base and fde_end for IA64_UNWIND_INFO.
* libgcc2.c (__ia64_personality_v1): Personality routine.
(__calc_caller_bsp): Calculate the bsp register for the caller's
frame.
(ia64_throw_helper): Figure out who to return to and set up the
registers.
(__throw): Throw routine.
* output.h (assemble_eh_align, assemble_eh_label): New functions
to generate EH info where we want it.
(assemble_eh_integer): New function.
* toplev.c (compile_file): Output module level exception table for
non-ia64 targets.
(main): Set exceptions_via_longjump and flag_new_exceptions based
on IA64_UNWIND_INFO too.
* varasm.c (assemble_eh_label): Generate a label via
ASM_OUTPUT_EH_LABEL if it has been specified.
(assemble_eh_align): Generate an alignment directive via
ASM_OUTPUT_EH_ALIGN if it has been specified.
(assemble_eh_label): Generate an integer value via
ASM_OUTPUT_EH_type if they have been specified.
* config/ia64/ia64.c (rtx_needs_barrier): Add flushrs.
(ia64_init_builtins): Add __builtin_ia64_bsp
and __builtin_ia64_flushrs.
(ia64_expand_builtin): Add IA64_BUILTIN_BSP and
IA64_BUILTIN_FLUSHRS.
* config/ia64/ia64.h (ia64_builtins): Add IA64_BUILTIN_BSP and
IA64_BUILTIN_FLUSHRS.
* config/ia64/ia64.md (flushrs): New insn to flush the register
stack. Add to unspec list.
* config/ia64/crtbegin.asm (frame_object): Change size.
(__do_frame_setup_aux): New function.
* config/ia64/crtend.asm: call __do_frame_setup_aux.
* config/ia64/t-ia64 (LIB2ADDEH): Add.
* Makefile.in (LIB2ADDEH): Add.
(LIB2ADD): Use LIB2ADDEH.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34169
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Thu, 25 May 2000 13:25:46 +0000 (13:25 +0000)]
2000-05-25 Benjamin Kosnik <bkoz@milou.soma.redhat.com>
* inclosure: Change to...
* mkinclosure: This.
Fix paths to bash.
* mkcshadow: Fix paths to bash.
* src/Makefile.am: Tweaks. Do cshadow header trickery at build time.
* src/Makefile.in: Regnerate.
* acinclude.m4 (GLIBCPP_COMPILER_VERSION): Fix typo.
(GLIBCPP_ENABLE_SHADOW): Do a less gross hack.
* aclocal.m4: Regenerate.
* mkcheck.in (INC_PATH): Tweak.
* configure.in: Enable long long by default.
* configure: Regenerate.
* mkcheck.in (LIB_PATH): Revert.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34168
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Thu, 25 May 2000 13:19:15 +0000 (13:19 +0000)]
2000-05-25 Benjamin Kosnik <bkoz@milou.soma.redhat.com>
* inclosure: Change to...
* mkinclosure: This.
Fix paths to bash.
* mkcshadow: Fix paths to bash.
* src/Makefile.am: Tweaks. Do cshadow header trickery at build time.
* src/Makefile.in: Regnerate.
* acinclude.m4 (GLIBCPP_COMPILER_VERSION): Fix typo.
(GLIBCPP_ENABLE_SHADOW): Do a less gross hack.
* aclocal.m4: Regenerate.
* mkcheck.in (INC_PATH): Tweak.
* configure.in: Enable long long by default.
* configure: Regenerate.
* mkcheck.in (LIB_PATH): Revert.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34167
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Thu, 25 May 2000 13:09:01 +0000 (13:09 +0000)]
2000-05-25 Benjamin Kosnik <bkoz@milou.soma.redhat.com>
* inclosure: Change to...
* mkinclosure: This.
Fix paths to bash.
* mkcshadow: Fix paths to bash.
* src/Makefile.am: Tweaks. Do cshadow header trickery at build time.
* src/Makefile.in: Regnerate.
* acinclude.m4 (GLIBCPP_COMPILER_VERSION): Fix typo.
(GLIBCPP_ENABLE_SHADOW): Do a less gross hack.
* aclocal.m4: Regenerate.
* configure.in: Enable long long by default.
* configure: Regenerate.
* mkcheck.in (LIB_PATH): Revert.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34166
138bc75d-0d04-0410-961f-
82ee72b054a4
nathan [Thu, 25 May 2000 11:49:34 +0000 (11:49 +0000)]
* inc/cxxabi.h (__pbase_type_info): Define, based on
__pointer_type_info.
(__pointer_type_info): Derive from __pbase_type_info. Adjust.
(__pointer_to_member_type_info): Likewise.
* tinfo2.cc (__pbase_type_info::~__pbase_type_info): Implement.
(__pointer_to_member_type_info::__is_pointer_p): Remove.
(__pointer_type_info::__do_catch): Rename to ...
(__pbase_type_info::__do_catch): ... here. Adjust.
(__pbase_type_info::__pointer_catch): Implement.
(__pointer_type_info::__pointer_catch): Adjust.
(__pointer_to_member_type_info::__pointer_catch): Adjust.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34165
138bc75d-0d04-0410-961f-
82ee72b054a4
nathan [Thu, 25 May 2000 11:16:11 +0000 (11:16 +0000)]
* g++.old-deja/g++.eh/catch11.C: New test.
* g++.old-deja/g++.eh/catch12.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34164
138bc75d-0d04-0410-961f-
82ee72b054a4
nathan [Thu, 25 May 2000 11:13:17 +0000 (11:13 +0000)]
* tinfo.h (__user_type_info::contained_virtual_p): New
predicate.
* tinfo.cc (__user_type_info::do_upcast): Fix bug with diamond
shaped heirarchy.
(__vmi_class_type_info::__do_upcast): Fix bug with NULL pointer to
diamond shaped heirarchy. Add early out for mixed diamond and
duplicate shaped heirarchy.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34163
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Thu, 25 May 2000 10:14:26 +0000 (10:14 +0000)]
2000-05-24 Nathan "I don't write ChangeLog Entries" Myers <ncm@cantrip.org>
* config/cpu/i486: New directory.
* config/cpu/i486/bits: New directory.
* config/cpu/i486/bits/atomicity.h: New file.
* config/cpu/i386/bits/atomicity.h (__compare_and_swap): Delete
'cmpxchgl' asm.
* acinclude.m4 (GLIBCPP_CHECK_CPU): Enable i386.
2000-05-24 Loren J. Rittle <ljrittle@acm.org>
* backward/alloc.h (__default_alloc_template): Only expose
implementation-specific symbol, if it exists in the
configuration.
* backward/iostream.h (ends): Expose symbol.
* backward/strstream.h: New file.
* backward/stream.h: New file.
* backward/ostream.h: New file.
* backward/istream.h: New file.
* backward/fstream.h: New file.
* backward/complex.h: New file.
* backward/iomanip.h: New file.
* mkcheck.in (LIB_PATH): Add -R bits.
* math/carg.c (carg): Replace __atan2 with atan2.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34162
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Thu, 25 May 2000 10:06:30 +0000 (10:06 +0000)]
2000-05-24 Loren J. Rittle <ljrittle@acm.org>
* backward/alloc.h (__default_alloc_template): Only expose
implementation-specific symbol, if it exists in the
configuration.
* backward/iostream.h (ends): Expose symbol.
* backward/strstream.h: New file.
* backward/stream.h: New file.
* backward/ostream.h: New file.
* backward/istream.h: New file.
* backward/fstream.h: New file.
* backward/complex.h: New file.
* backward/iomanip.h: New file.
* mkcheck.in (LIB_PATH): Add -R bits.
* math/carg.c (carg): Replace __atan2 with atan2.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34161
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Thu, 25 May 2000 10:04:12 +0000 (10:04 +0000)]
2000-05-19 Nathan "I don't write ChangeLog Entries" Myers <ncm@cantrip.org>
* config/cpu/i486: New directory.
* config/cpu/i486/bits: New directory.
* config/cpu/i486/bits/atomicity.h: New file.
* config/cpu/i386/bits/atomicity.h (__compare_and_swap): Delete
'cmpxchgl' asm.
* acinclude.m4 (GLIBCPP_CHECK_CPU): Enable i386.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34160
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Thu, 25 May 2000 07:45:06 +0000 (07:45 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34159
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 25 May 2000 06:17:05 +0000 (06:17 +0000)]
* recog.c (offsettable_address_p): If mode size is zero, assume
BIGGEST_ALIGNMENT.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34158
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Thu, 25 May 2000 05:11:42 +0000 (05:11 +0000)]
2000-05-24 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
* Makefile.am (TAGS): Construct.
* Makefile.in: Rengerate.
* src/Makefile.am: Tweak.
* src/Makefile.in: Tweak.
* configure.in: Tweak.
* bits/c++config.h: Rename to ...
* bits/c++config: This.
* mkc++config: Adjust.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34157
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Thu, 25 May 2000 01:49:09 +0000 (01:49 +0000)]
* configure.in: Check for -Wno-long-long option support and improve
handling of warning CFLAGS for stages 1 and 2.
* Makefile.in (WARN_CFLAGS): Move definition to configure.in.
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34156
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Thu, 25 May 2000 01:44:42 +0000 (01:44 +0000)]
Fix minor goofs pointed out by Stan.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34155
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Thu, 25 May 2000 01:38:25 +0000 (01:38 +0000)]
Forgot to commit.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34154
138bc75d-0d04-0410-961f-
82ee72b054a4
amylaar [Thu, 25 May 2000 01:30:51 +0000 (01:30 +0000)]
* loop.c (basic_induction_var): Avoid double recording of an increment.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34153
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Thu, 25 May 2000 01:28:57 +0000 (01:28 +0000)]
* gcc.texi: Remove contributor list. Instead include contrib.texi.
* contrib.texi: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34152
138bc75d-0d04-0410-961f-
82ee72b054a4
amylaar [Thu, 25 May 2000 01:21:52 +0000 (01:21 +0000)]
* Back out this patch:
Tue Dec 7 19:22:06 1999 Richard Henderson <rth@cygnus.com>
* loop.h (struct induction): Add multi_insn_incr.
* loop.c (basic_induction_var): New multi_insn_incr argument.
Set it if we search back through previous insns for the biv.
(record_biv): New multi_insn_incr argument; fill in struct induction.
(strength_reduce): Discard an iv with multiple bivs, any of
which require multiple insns to increment.
* loop.c (check_insn_for_bivs): Remove bits copied from above patch.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34151
138bc75d-0d04-0410-961f-
82ee72b054a4
amylaar [Thu, 25 May 2000 01:11:22 +0000 (01:11 +0000)]
* rtl.h (loc_mentioned_in_p): Declare.
* reload.c (loc_mentioned_in_p): Moved from here...
* rtlanal.c (loc_mentioned_in_p): to here. No longer static.
Fix loop increment for 'E' handling.
* loop.c (strength_reduce): When doing biv->giv conversion,
take multi-insn biv increments into account.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34150
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Thu, 25 May 2000 00:36:28 +0000 (00:36 +0000)]
* stmt.c (expand_end_bindings): Look through NOTEs to find a
BARRIER.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34149
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Thu, 25 May 2000 00:34:20 +0000 (00:34 +0000)]
new
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34148
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Wed, 24 May 2000 22:56:54 +0000 (22:56 +0000)]
* cp-tree.h (build_delete): Change prototype.
(build_vec_delete): Likewise.
* call.c (build_scoped_method_call): Use special_function_kind
values to indicate the kind of destruction to be done.
(build_method_call): Likewise.
* decl.c (finish_destructor_body): Likewise.
(maybe_build_cleanup_1): Likewise. Rename to ...
(maybe_build_cleanup): ... this.
* decl2.c (delete_sanity): Use special_function_kind
values to indicate the kind of destruction to be done.
(build_cleanup): Likewise.
* init.c (perform_member_init): Likewise.
(build_vec_delete_1): Likewise.
(build_dtor_call): Simplify.
(build_delete): Use special_function_kind
values to indicate the kind of destruction to be done.
(build_vbase_delete): Likewise.
(build_vec_delete): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34147
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Wed, 24 May 2000 22:48:03 +0000 (22:48 +0000)]
2000-05-24 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
* m4: Remove.
* m4/lc_message.m4: Merge into acinclude.m4.
* m4/mathfcts.m4: Same.
* m4/stringfcts.m4: Same.
* acinclude.m4: Add here.
* configure: Regnerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34146
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Wed, 24 May 2000 22:45:29 +0000 (22:45 +0000)]
2000-05-24 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
* m4: Remove.
* m4/lc_message.m4: Merge into acinclude.m4.
* m4/mathfcts.m4: Same.
* m4/stringfcts.m4: Same.
* acinclude.m4: Add here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34145
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Wed, 24 May 2000 22:36:40 +0000 (22:36 +0000)]
2000-05-24 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
* acinclude.m4 (GLIBCPP_CHECK_COMPILER_VERSION): Remove
OPTLEVEL. Add FMTFLAGS.
* aclocal.m4: Regenerate.
* src/Makefile.am (AC_CXXFLAGS): Take out OPTLEVEL, as this is has
been disabled due to higher-level makefiles running amuck over
this bit, and add in FMTFLAGS so that formatting is clear.
* src/Makefile.in: Regenerate.
* configure: Regenerate.
* src/ios.cc (ios_base::sync_with_stdio): Cleanup buffers from
initialization.
* docs/download.html: Remove references to Cygwin-specific bits,
as this can now be built natively.
Update with current information.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34144
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Wed, 24 May 2000 21:43:42 +0000 (21:43 +0000)]
* calls.c (expand_call): Handle cleanups in tail-recursion
arguments analagously to cleanups in sibling calls.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34143
138bc75d-0d04-0410-961f-
82ee72b054a4
warrenl [Wed, 24 May 2000 21:15:51 +0000 (21:15 +0000)]
* java/io/ObjectOutputStream.java (writeObject): Use component type
when writing arrays.
Fixed typo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34142
138bc75d-0d04-0410-961f-
82ee72b054a4
ghazi [Wed, 24 May 2000 20:26:54 +0000 (20:26 +0000)]
* simplify-rtx.c: Rename macro SIGN_EXTEND to HWI_SIGN_EXTEND.
All callers changed.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34141
138bc75d-0d04-0410-961f-
82ee72b054a4
aoliva [Wed, 24 May 2000 19:49:28 +0000 (19:49 +0000)]
* expr.c (expand_assignment, store_expr, expand_expr,
expand_expr_unaligned): Set in_check_memory_usage while emitting
chkr_check_addr libcall.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34140
138bc75d-0d04-0410-961f-
82ee72b054a4
dlindsay [Wed, 24 May 2000 18:48:08 +0000 (18:48 +0000)]
Make g++ struct packing attribute sensitive to -fpack-struct, as per docn
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34139
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Wed, 24 May 2000 18:38:02 +0000 (18:38 +0000)]
ignore test if targets 'long long' is less than 64 bits
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34138
138bc75d-0d04-0410-961f-
82ee72b054a4
pme [Wed, 24 May 2000 18:35:37 +0000 (18:35 +0000)]
2000-05-24 Phil Edwards <pme@sourceware.cygnus.com>
* acinclude.m4 (GLIBCPP_CHECK_COMPILER_VERSION): If we can use
-fdiagnostics-show-location=once, do so. Expand AC_LANG_* to
enclose other tests in this macro, including future ones.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* docs/faq/index.html: Update location of libg++ FAQ.
* docs/faq/index.txt: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34137
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Wed, 24 May 2000 18:25:18 +0000 (18:25 +0000)]
new test case
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34136
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Wed, 24 May 2000 18:24:06 +0000 (18:24 +0000)]
(extract_muldiv): When constructing a multiplier/divisor, do not expect
const_binop to correctly determine if overflow has occured, so check explicitly.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34135
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Wed, 24 May 2000 17:15:03 +0000 (17:15 +0000)]
* init.c (sort_member_init): Fix typo in error message generation
code.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34134
138bc75d-0d04-0410-961f-
82ee72b054a4
korbb [Wed, 24 May 2000 16:12:57 +0000 (16:12 +0000)]
Document the c_fix types
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34133
138bc75d-0d04-0410-961f-
82ee72b054a4
nathan [Wed, 24 May 2000 14:17:27 +0000 (14:17 +0000)]
Update new-abi upcast algorithm.
* inc/cxxabi.h (__class_type_info::__do_upcast): Change
prototype and meaning of return value.
(__si_class_type_info::__do_upcast): Likewise.
(__vmi_class_type_info::__do_upcast): Likewise.
* tinfo.cc (__class_type_info::__upcast_result): Replace
whole2dst with part2dst. Adjust ctor.
(__class_type_info::__do_upcast): Adjust call of worker function.
(__class_type_info::__do_upcast): Adjust.
(__si_class_type_info::__do_upcast): Adjust. Use parent's
__do_upcast.
(__vmi_class_type_info::__do_upcast): Likewise. Fix private
virtual base in diamond heirarchy bug.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34132
138bc75d-0d04-0410-961f-
82ee72b054a4
aoliva [Wed, 24 May 2000 09:08:42 +0000 (09:08 +0000)]
* c-decl.c (build_enumerator): Don't modify the value's type,
convert it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34131
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 24 May 2000 07:45:07 +0000 (07:45 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34130
138bc75d-0d04-0410-961f-
82ee72b054a4
drepper [Wed, 24 May 2000 07:06:31 +0000 (07:06 +0000)]
Update.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34129
138bc75d-0d04-0410-961f-
82ee72b054a4
drepper [Wed, 24 May 2000 07:06:07 +0000 (07:06 +0000)]
(endl): Fix bug in last change.
(ends): Make same change as for endl.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34128
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 24 May 2000 06:25:34 +0000 (06:25 +0000)]
* mips.h (LINKER_ENDIAN_SPEC): Pass -EL to linker by default.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34127
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 24 May 2000 06:21:49 +0000 (06:21 +0000)]
* configure.in: Redefine inhibit_libc conditions.
* libgcc2.c: Remove inhibit_libc conditional define.
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34126
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Wed, 24 May 2000 06:15:04 +0000 (06:15 +0000)]
* cp-tree.h (lang_decl_flags): Rename mutable_flag to uninlinable
and bitfield to tinfo_fn_p.
(DECL_TINFO_FN_P): Adjust.
(SET_DECL_TINFO_FN_P): Likewise.
(DECL_MUTABLE_P): Likewise.
(DECL_C_BIT_FIELD): Likewise.
(SET_DECL_C_BIT_FIELD): Likewise.
(CLEAR_DECL_C_BIT_FIELD): Likewise.
(DECL_UNINLINABLE): Likewise.
* class.c (alter_access): Call retrofit_lang_decl if ncessary.
(handle_using_decl): Remove assertion.
(build_vtbl_or_vbase_field): Use build_decl, not build_lang_decl,
to build FIELD_DECLs.
(build_base_field): Likewise.
(layout_class_type): Likewise.
* decl.c (init_decl_processing): Likewise.
(build_ptrmemfunc_type): Likewise.
(grokdeclarator): Likewise.
* decl2.c (grok_x_components): Likewise.
* except.c (call_eh_info): Likewise.
* init.c (init_init_processing): Likewise.
* rtti.c (expand_class_desc): Likewise.
(create_pseudo_type_info): Likewise.
(get_vmi_pseudo_type_info): Likewise.
(create_tinfo_types): Likewise.
* ptree.c (print_lang_decl): Adjust.
* typeck.c (build_component_ref): Don't check DECL_LANG_SPECIFIC
before checking DECL_MUTABLE_P.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34125
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 24 May 2000 05:18:48 +0000 (05:18 +0000)]
* configure.in: For --enable-languages=LIST, check for empty LIST.
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34123
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 24 May 2000 04:57:22 +0000 (04:57 +0000)]
* iostream.cc (endl): Verify stream can accept characters
before writing its eol.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34122
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 24 May 2000 04:44:25 +0000 (04:44 +0000)]
* pdp11.h (STACK_BOUNDARY): Define.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34121
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Wed, 24 May 2000 04:34:38 +0000 (04:34 +0000)]
* decl2.c (maybe_retrofit_in_chrg): Don't create in-charge
parameters for template functions.
* pt.c (tsubst_decl): Make sure we call maybe_retrofit_in_chrg for
destructors as well as constructors.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34120
138bc75d-0d04-0410-961f-
82ee72b054a4
aoliva [Wed, 24 May 2000 04:21:35 +0000 (04:21 +0000)]
* ifcvt.c (if_convert): Update life info globally.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34119
138bc75d-0d04-0410-961f-
82ee72b054a4
aoliva [Wed, 24 May 2000 03:11:27 +0000 (03:11 +0000)]
* emit-rtl.c (unshare_all_decls): New function.
(unshare_all_rtl): Call it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34118
138bc75d-0d04-0410-961f-
82ee72b054a4
mrs [Wed, 24 May 2000 01:46:44 +0000 (01:46 +0000)]
* Makefile.in (xmalloc.o): Add dependency for config.h, fixes make
-j3.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34117
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Tue, 23 May 2000 22:38:07 +0000 (22:38 +0000)]
* libjava.compile/PR238.java: New file. For PR gcj/238.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34116
138bc75d-0d04-0410-961f-
82ee72b054a4