Mark Mitchell [Wed, 4 Nov 1998 21:54:29 +0000 (21:54 +0000)]
cp-tree.h (CP_TYPE_CONST_P): Make {0,1}-valued.
* cp-tree.h (CP_TYPE_CONST_P): Make {0,1}-valued.
(CP_TYPE_VOLATILE_P): Likewise.
(CP_TYPE_RESTRICT_P): Likewise.
From-SVN: r23530
Bernd Schmidt [Wed, 4 Nov 1998 21:25:00 +0000 (21:25 +0000)]
recog.h (enum op_type): Define.
* recog.h (enum op_type): Define.
(constrain_operands): Adjust prototype.
(recog_op_type): Declare new variable.
* recog.c (recog_op_type): New variable.
(insn_invalid_p): Allow modifying an asm statement after reload.
(extract_insn): Set up recog_op_type.
(constrain_operands): Lose INSN_CODE_NUM arg. All callers changed.
Don't compute operand types, use recog_op_type.
Use the information computed by extract_insn instead of the previous
method of finding it by insn code number.
* caller-save.c (init_caller_save): Use extract_insn, not insn_extract.
* reorg.c (fill_slots_from_thread): Likewise.
* reload1.c (reload_as_needed): Likewise.
(gen_reload): Likewise.
(inc_for_reload): Likewise.
(reload_cse_simplify_operands): Likewise.
Use the information computed by extract_insn instead of the previous
method of finding it by insn code number.
* genattrtab.c (write_attr_case): Generate call to extract_insn, not
insn_extract.
* final.c (final_scan_insn): Use extract_insn, not insn_extract.
(cleanup_operand_subregs): Use extract_insn, not insn_extract.
Use the information computed by extract_insn instead of the previous
method of finding it by insn code number.
* regmove.c (find_matches): Likewise. Change meaning of the return
value to be nonzero if the optimization can be performed, zero if
not. All callers changed.
Shorten some variable names to fix formatting problems.
(regmove_optimize): Shorten some variable names to fix formatting
problems.
Use the information computed by extract_insn instead of the previous
method of finding it by insn code number.
* regclass.c (scan_one_insn): Likewise.
(record_reg_classes): Don't compute operand types, use recog_op_type.
* reload.c (find_reloads): Lose CONSTRAINTS1 variable; use
recog_constraints instead.
From-SVN: r23529
Jeff Law [Wed, 4 Nov 1998 20:45:03 +0000 (13:45 -0700)]
rtl.h (flow2_completed): Declare.
x
* rtl.h (flow2_completed): Declare.
* flow.c (flow2_completed): Definition.
* toplev.c (rest_of_compilation): Set and clear flow2_completed
as necessary.
From-SVN: r23528
Jeff Law [Wed, 4 Nov 1998 20:45:01 +0000 (13:45 -0700)]
rtl.h (flow2_completed): Declare.
�
* rtl.h (flow2_completed): Declare.
* flow.c (flow2_completed): Definition.
* toplev.c (rest_of_compilation): Set and clear flow2_completed
as necessary.
From-SVN: r23527
Jeff Law [Wed, 4 Nov 1998 20:44:58 +0000 (13:44 -0700)]
rtl.h (flow2_completed): Declare.
@
* rtl.h (flow2_completed): Declare.
* flow.c (flow2_completed): Definition.
* toplev.c (rest_of_compilation): Set and clear flow2_completed
as necessary.
From-SVN: r23526
Jeff Law [Wed, 4 Nov 1998 19:33:07 +0000 (12:33 -0700)]
[multiple changes]
Wed Nov 4 19:15:37 1998 "Melissa O'Neill" <oneill@cs.sfu.ca>
* Makefile.in (libcpp.a): Ranlib libcpp.a
* cppulp.c (user_label_prefix): Initialize.
Wed Nov 4 19:07:08 1998 John Wehle (john@feith.com)
* flow.c (mark_regs_live_at_end): Mark the stack pointer as live
at a RETURN if current_function_sp_is_unchanging is set.
From-SVN: r23525
Herman A.J. ten Brugge [Wed, 4 Nov 1998 17:21:52 +0000 (18:21 +0100)]
* emit-rtl.c (try_split): Fixed error in Oct 10 patch.
From-SVN: r23524
Geoffrey Noer [Wed, 4 Nov 1998 15:25:33 +0000 (15:25 +0000)]
Add -mno-cygwin flag that links in the mingw libraries.
* i386/cygwin32.h (MASK_WIN32, MASK_CYGWIN, MASK_WINDOWS, MASK_DLL,
TARGET_WIN32, TARGET_CYGWIN, TARGET_WINDOWS, TARGET_DLL): New.
(SUBTARGET_SWITCHES): Add -mno-cygwin, -mcygwin, and -mdll options.
(CPP_PREDEFINES): Don't define __CYGWIN32__ here.
(STARTFILE_SPEC): Handle -mdll, -mno-cygwin options.
(CPP_SPEC): Handle -mno-cygwin option. Define __CYWIN__ in addition
to __CYGWIN32__.
(LIB_SPEC): Handle -mno-cyginw option.
(LINK_SPEC): Handle -mdll.
From-SVN: r23523
J"orn Rennecke [Wed, 4 Nov 1998 14:58:29 +0000 (14:58 +0000)]
reload.c (find_reloads): Fix test for usage by other reload to handle secondary reloads properly.
* reload.c (find_reloads): Fix test for usage by other reload
to handle secondary reloads properly.
From-SVN: r23522
Kaveh R. Ghazi [Wed, 4 Nov 1998 14:30:56 +0000 (14:30 +0000)]
Warning fixes:
* reload1.c (ELIMINABLE_REGS, NUM_ELIMINABLE_REGS): Introduce an
intermediate structure which has exactly the members provided by
ELIMINABLE_REGS. Define NUM_ELIMINABLE_REGS in terms of the
static intermediate structure.
(init_elim_table): Xmalloc() `reg_eliminate', and initialize it
from the intermediate structure. Do the same analogous fix in
the case where ELIMINABLE_REGS is not defined.
From-SVN: r23521
Dave Love [Wed, 4 Nov 1998 11:18:19 +0000 (11:18 +0000)]
g77.texi: Small formatting/indexing fixes.
1998-11-04 Dave Love <d.love@dl.ac.uk>
* g77.texi: Small formatting/indexing fixes.
From-SVN: r23519
Dave Love [Wed, 4 Nov 1998 11:14:41 +0000 (11:14 +0000)]
Small formatting/indexing fixes.
From-SVN: r23518
Jeff Law [Wed, 4 Nov 1998 00:45:03 +0000 (17:45 -0700)]
Daily bump.
From-SVN: r23517
Mark Mitchell [Tue, 3 Nov 1998 22:30:18 +0000 (22:30 +0000)]
* pt.c (tsubst): Use build_index_type, not build_index_2_type.
From-SVN: r23516
Jeffrey A Law [Tue, 3 Nov 1998 19:56:12 +0000 (19:56 +0000)]
* pa.h (SELECT_SECTION): Fix thinko.
From-SVN: r23513
Jim Wilson [Tue, 3 Nov 1998 17:52:59 +0000 (17:52 +0000)]
Comment to document possible problems with last change.
* dwarf2out.c (output_call_frame_info): Comments on last change.
From-SVN: r23512
Jason Merrill [Tue, 3 Nov 1998 17:37:51 +0000 (17:37 +0000)]
class.c (instantiate_type): Be more helpful.
* class.c (instantiate_type): Be more helpful.
* decl2.c (import_export_decl): Call import_export_class.
* cp-tree.h (EMPTY_CONSTRUCTOR_P): Check !TREE_HAS_CONSTRUCTOR.
* decl2.c (build_expr_from_tree): Propagate TREE_HAS_CONSTRUCTOR.
* pt.c (tsubst_copy): Likewise.
From-SVN: r23511
Richard Earnshaw [Tue, 3 Nov 1998 08:00:15 +0000 (08:00 +0000)]
arm.c (add_constant): When taking the address of an item in the pool, get the mode of the item addressed.
* arm.c (add_constant): When taking the address of an item in the
pool, get the mode of the item addressed.
* arm.c (final_prescan_insn case INSN): If an insn doesn't
contain a SET or a PARALLEL, don't consider it for conditional
execution.
Restore ABI compatibility for NetBSD.
* arm/netbsd.h (DEFAULT_PCC_STRUCT_RETURN): Override setting in arm.h
(RETURN_IN_MEMORY): Likewise.
From-SVN: r23510
Jeff Law [Tue, 3 Nov 1998 00:45:03 +0000 (17:45 -0700)]
Daily bump.
From-SVN: r23509
Mark Mitchell [Mon, 2 Nov 1998 22:20:39 +0000 (22:20 +0000)]
* init.c (expand_vec_init): Fix off-by-one error.
From-SVN: r23506
Doug Evans [Mon, 2 Nov 1998 11:48:08 +0000 (11:48 +0000)]
m32r.c (m32r_expand_block_move): Fix byte count computations.
* m32r/m32r.c (m32r_expand_block_move): Fix byte count computations.
(m32r_output_block_move): Rewrite bytes < 4 handling.
From-SVN: r23503
Doug Evans [Mon, 2 Nov 1998 11:18:39 +0000 (11:18 +0000)]
* execute/memcpy-bi.c: New testcase.
From-SVN: r23501
Bruce Korb [Mon, 2 Nov 1998 08:31:30 +0000 (08:31 +0000)]
Reworked (slightly) to process a list of directories
From-SVN: r23500
Kaveh R. Ghazi [Mon, 2 Nov 1998 07:24:47 +0000 (07:24 +0000)]
pexecute.c: Check HAVE_CONFIG_H, not IN_GCC, when determining whether to include config.h.
* pexecute.c: Check HAVE_CONFIG_H, not IN_GCC, when determining
whether to include config.h. Possibly include unistd.h in the
!IN_GCC case. Define VFORK_STRING as a printable function call
for error messages (either "vfork" or "fork".) If HAVE_VFORK_H is
defined, include vfork.h. If VMS is defined, define vfork()
appropriately. Remove vfork check on USG, we're using autoconf.
(pexecute): Set `errmsg_fmt' to VFORK_STRING instead of checking
locally what string to use.
From-SVN: r23499
Kaveh R. Ghazi [Mon, 2 Nov 1998 07:20:48 +0000 (07:20 +0000)]
configure.in: Call AC_FUNC_VFORK.
* configure.in: Call AC_FUNC_VFORK.
* collect2.c: Define VFORK_STRING as a printable string for
error messages (either "vfork" or "fork".) If HAVE_VFORK_H is
defined, include vfork.h. If VMS is defined, define vfork()
appropriately. Remove vfork check on USG, we're using autoconf.
(collect_execute): Pass VFORK_STRING to fatal_perror instead of
checking locally what string to pass.
(scan_prog_file): Likewise.
(scan_libraries): Likewise.
* gcc.c: Remove vfork check on USG, we're using autoconf.
Besides, no calls to vfork/fork occur in this file.
* protoize.c: Likewise.
From-SVN: r23498
Alexandre Oliva [Mon, 2 Nov 1998 02:17:53 +0000 (02:17 +0000)]
configure.in (DEFAULT_LINKER): renamed from LD
* configure.in (DEFAULT_LINKER): renamed from LD
(DEFAULT_ASSEMBLER): renamed from AS; reverted Schwab's patch
(gcc_cv_as): try $DEFAULT_ASSEMBLER before $AS
* configure: rebuilt
From-SVN: r23497
Jeff Law [Mon, 2 Nov 1998 00:45:01 +0000 (17:45 -0700)]
Daily bump.
From-SVN: r23496
Alexandre Oliva [Sun, 1 Nov 1998 20:12:31 +0000 (20:12 +0000)]
parse.y (apparent_template_type): new type
* parse.y (apparent_template_type): new type
(named_complex_class_head_sans_basetype): use it
* Makefile.in (CONFLICTS): one new conflict
* parse.c: Regenerated
From-SVN: r23495
Alexandre Oliva [Sun, 1 Nov 1998 19:52:23 +0000 (19:52 +0000)]
BUGS: fix the regexp for `more' to find the appropriate node.
* BUGS: fix the regexp for `more' to find the appropriate node.
Reported by Joerg Pietschmann <joerg_pietschmann@zkb.ch>
* BUGS: added link to the WWW FAQ
From-SVN: r23494
Jeffrey A Law [Sun, 1 Nov 1998 18:27:20 +0000 (11:27 -0700)]
Bump for snapshot
From-SVN: r23492
Mark Mitchell [Sun, 1 Nov 1998 16:47:09 +0000 (16:47 +0000)]
stl_alloc.h (default_alloc_template::_S_free_list): Don't qualify _NFREELISTS.
* stl_alloc.h (default_alloc_template::_S_free_list): Don't
qualify _NFREELISTS.
From-SVN: r23491
Mark Mitchell [Sun, 1 Nov 1998 15:45:11 +0000 (15:45 +0000)]
cp-tree.h (COMPARE_STRICT): New macro.
* cp-tree.h (COMPARE_STRICT): New macro.
(COMPARE_BASE): Likewise.
(COMPARE_RELAXED): Likewise.
(COMPARE_REDECLARATION): Likewise.
(same_type_p): Likewise.
(same_or_base_type_p): Likewise.
* call.c (standard_conversion): Use them, in place of comptypes
with numeric arguments.
(reference_binding): Likewise.
(convert_like): Likewise.
(build_over_call): Likewise.
(is_subseq): Likewise.
(is_properly_derived_from): Likewise.
(compare_ics): Likewise.
(joust): Likewise.
* class.c (delete_duplicate_fields_1): Likewise.
(resolves_to_fixed_type_p): Likewise.
(instantiate_type): Likewise. Remove #if 0'd code.
* decl.c (decls_match): Likewise. Use COMPARE_REDECLARATION here.
(pushdecl): Likewise.
(lookup_name_real): Likewise.
(grokdeclarator): Likewise. Check for illegal array declarations.
(grokparms): Likewise.
(grok_op_properties): Likewise.
* decl2.c (check_classfn): Likewise.
* friend.c (is_friend): Likewise.
(make_friend_class): Likewise.
* init.c (expand_aggr_init): Likewise.
(expand_vec_init): Likewise.
* pt.c (is_member_template_class): Remove declaration.
(is_specialization_of): Use COMPARE_* and new macros.
(comp_template_parms): Likewise.
(convert_nontype_argument): Likewise.
(coerce_template_template_parms): Likewise.
(template_args_equal): Likewise.
(lookup_template_class): Likewise.
(type_unification_real): Likewise.
(unify): Likewise.
(get_bindings_real): Likewise.
* search.c (covariant_return_p): Likewise.
(get_matching_virtual): Likewise.
* sig.c (match_method_types): Likewise.
* tree.c (vec_binfo_member): Likewise.
(cp_tree_equal): Likewise.
* typeck.c (common_type): Likewise.
(comp_array_types): Likewise. Get issues involving unknown array
bounds right.
(comptypes): Update comments. Use new flags.
(comp_target_types): Use new macros.
(compparms): Likewise.
(comp_target_parms): Likewise.
(string_conv_p): Likewise.
(build_component_ref): Likewise.
(build_indirect_ref): Likewise.
(build_conditional_expr): Likewise.
(build_static_cast): Likewise.
(build_reinterpret_cast): Likewise.
(build_const_cast): Likewise.
(build_modify_expr): Likewise.
(convert_for_assignment): Likewise.
(comp_ptr_ttypes_real): Likewise.
(ptr_reasonably_similar): Likewise.
(comp_ptr_ttypes_const): Likewise.
From-SVN: r23490
Jeffrey A Law [Sun, 1 Nov 1998 10:13:42 +0000 (10:13 +0000)]
linux.h (CPP_PREDEFINES): Add -D__i386__.
* From Christian Gafton:
* i386/linux.h (CPP_PREDEFINES): Add -D__i386__.
* sparc/linux.h (CPP_PREDEFINES): Add -D__sparc__.
* sparc/linux64.h (CPP_PREDEFINES): Add -D__sparc__.
From-SVN: r23485
Jeff Law [Sun, 1 Nov 1998 09:47:22 +0000 (02:47 -0700)]
Get it in the repo
From-SVN: r23483
Jeff Law [Sun, 1 Nov 1998 00:45:02 +0000 (17:45 -0700)]
Daily bump.
From-SVN: r23482
Mark Mitchell [Sat, 31 Oct 1998 20:44:46 +0000 (13:44 -0700)]
c-common.c (c_get_alias_set): Allow all type-punning through unions.
�
* c-common.c (c_get_alias_set): Allow all type-punning through
unions. Don't get confused about the type of a bit-field, despite
the antics of build_modify_expr.
From-SVN: r23481
Mark Mitchell [Sat, 31 Oct 1998 20:44:44 +0000 (13:44 -0700)]
c-common.c (c_get_alias_set): Allow all type-punning through unions.
�
* c-common.c (c_get_alias_set): Allow all type-punning through
unions. Don't get confused about the type of a bit-field, despite
the antics of build_modify_expr.
From-SVN: r23480
Jean-Pierre Radley [Sat, 31 Oct 1998 20:37:50 +0000 (20:37 +0000)]
fixinc.sco: Paramaterize #include_next values.
* fixinc.sco: Paramaterize #include_next values.
* fixinc/fixinc.sco: Likewise.
From-SVN: r23479
Jeff Law [Sat, 31 Oct 1998 19:44:19 +0000 (12:44 -0700)]
toplev.c (rest_of_compilation): No longer set reload_completed.
�
* toplev.c (rest_of_compilation): No longer set reload_completed.
* reload1.c (reload): Set it here. Perform instruction splitting
after reload has completed if we will be running the scheduler
again.
From-SVN: r23478
Jeff Law [Sat, 31 Oct 1998 19:44:17 +0000 (12:44 -0700)]
toplev.c (rest_of_compilation): No longer set reload_completed.
�
* toplev.c (rest_of_compilation): No longer set reload_completed.
* reload1.c (reload): Set it here. Perform instruction splitting
after reload has completed if we will be running the scheduler
again.
From-SVN: r23477
Jeff Law [Sat, 31 Oct 1998 19:44:15 +0000 (12:44 -0700)]
toplev.c (rest_of_compilation): No longer set reload_completed.
H
* toplev.c (rest_of_compilation): No longer set reload_completed.
* reload1.c (reload): Set it here. Perform instruction splitting
after reload has completed if we will be running the scheduler
again.
From-SVN: r23476
Jeffrey A Law [Sat, 31 Oct 1998 11:32:02 +0000 (11:32 +0000)]
jump.c (jump_optimize): Initialize mappings from INSN_UID to EH region if...
* jump.c (jump_optimize): Initialize mappings from INSN_UID to
EH region if exceptions are enabled and we're performing cross
jump optimizations.
(find_cross_jump): Exit loop if the insns are in different EH regions.
From-SVN: r23475
Mark Mitchell [Sat, 31 Oct 1998 10:04:48 +0000 (10:04 +0000)]
dwarf2out.c (output_call_frame_info): Use ASM_OUTPUT_DWARF_DELTA4 for the CIE offset to match frame.c.
* dwarf2out.c (output_call_frame_info): Use
ASM_OUTPUT_DWARF_DELTA4 for the CIE offset to match frame.c.
From-SVN: r23474
Kaveh R. Ghazi [Sat, 31 Oct 1998 08:30:53 +0000 (08:30 +0000)]
warn_summary (longLineFilter): New shell function to encapsulate this functionality.
* warn_summary (longLineFilter): New shell function to encapsulate
this functionality. It is off by default, only active if -llf
flag is specified.
(subdirectoryFilter): Fix bug in filtering which made some
subdirectory warnings erroneously appear in the toplevel set.
(stageNfilter): Renamed from `stageNwarns'. Updated to collect
warnings from stage1 as well as stage0, which means warnings from
outside the bootstrap directory. Eg, the libraries, etc.
(warningFilter): New shell function to encapsulate this
functionality.
(keywordFilter): New shell function to encapsulate this
functionality.
Store data in a temp file rather than calculating it 3x. Arrange
to remove it on exit and signals.
Add -pass/-wpass flags to do "pass through" (i.e. manual
inspection) of bootstrap output from a particular stageN as well
as language subdirs.
Add better comments/documentation.
From-SVN: r23473
Kaveh R. Ghazi [Sat, 31 Oct 1998 07:50:34 +0000 (07:50 +0000)]
Reinstall Apr 24th fix, lost during May 6th gcc2 merge:
* c-common.c (check_format_info): Don't check for the 'x'
format character twice, instead check for 'x' and 'X'
From-SVN: r23472
Gerald Pfeifer [Sat, 31 Oct 1998 07:45:22 +0000 (08:45 +0100)]
* egcs_update: Add comment about keeping the FAQ synchronized.
From-SVN: r23471
Jason Merrill [Sat, 31 Oct 1998 02:50:29 +0000 (02:50 +0000)]
* rtti.c (build_dynamic_cast_1): Fix cut-and-paste error.
From-SVN: r23470
Alexandre Oliva [Sat, 31 Oct 1998 02:06:21 +0000 (02:06 +0000)]
sizeof3.C: a similar testcase not involving base classes
* g++.old-deja/g++.pt/sizeof3.C: a similar testcase not involving
base classes
From-SVN: r23469
Alexandre Oliva [Sat, 31 Oct 1998 01:54:35 +0000 (01:54 +0000)]
sizeof2.C: incorrect specialization of base template is selected
* g++.old-deja/g++.pt/sizeof2.C: incorrect specialization of base
template is selected
From-SVN: r23468
Jeff Law [Sat, 31 Oct 1998 00:45:01 +0000 (17:45 -0700)]
Daily bump.
From-SVN: r23467
Alexandre Oliva [Sat, 31 Oct 1998 00:38:12 +0000 (00:38 +0000)]
arrnew2.C: if new T[n](i) is accepted for classes, it should be accepted for all types.
* g++.old-deja/g++.ext/arrnew2.C: if new T[n](i) is accepted for
classes, it should be accepted for all types.
From-SVN: r23466
Alexandre Oliva [Sat, 31 Oct 1998 00:29:38 +0000 (00:29 +0000)]
* g++.old-deja/g++.eh/sjlj1.C: test checked sjlj-exception
From-SVN: r23465
Alexandre Oliva [Sat, 31 Oct 1998 00:06:24 +0000 (00:06 +0000)]
spec24.C: ensure that template specializations start with template headers
* g++.old-deja/g++.pt/spec24.C: ensure that template
specializations start with template headers
From-SVN: r23464
Jeff Law [Fri, 30 Oct 1998 13:55:47 +0000 (06:55 -0700)]
configure.in (assembler features): Also make gas is configured if we find it in the souce tree.
8
* configure.in (assembler features): Also make gas is configured if
we find it in the souce tree.
From-SVN: r23459
Jeff Law [Fri, 30 Oct 1998 13:55:43 +0000 (06:55 -0700)]
configure.in (assembler features): Also make gas is configured if we find it in the souce tree.
X
* configure.in (assembler features): Also make gas is configured if
we find it in the souce tree.
From-SVN: r23458
Richard Henderson [Fri, 30 Oct 1998 13:24:33 +0000 (05:24 -0800)]
i386.c (i386_comp_type_attributes): Compare whether the attributes are defined, not their tree nodes.
* i386.c (i386_comp_type_attributes): Compare whether the
attributes are defined, not their tree nodes.
From-SVN: r23457
Richard Henderson [Fri, 30 Oct 1998 13:18:50 +0000 (05:18 -0800)]
Fix lying changelog entry.
From-SVN: r23456
Mark Mitchell [Fri, 30 Oct 1998 11:17:50 +0000 (11:17 +0000)]
decl2.c (delete_sanity): Pass integer_zero_node, not integer_two_node, to build_vec_delete.
* decl2.c (delete_sanity): Pass integer_zero_node, not
integer_two_node, to build_vec_delete.
* init.c (build_array_eh_cleanup): Remove.
(expand_vec_init_try_block): New function.
(expand_vec_init_catch_clause): Likewise.
(build_vec_delete_1): Don't deal with case that auto_delete_vec
might be integer_two_node anymore.
(expand_vec_init): Rework for initialization-correctness and
exception-correctness.
* typeck2.c (process_init_constructor): Make mutual exclusivity
of cases more obvious.
From-SVN: r23455
Tom Tromey [Fri, 30 Oct 1998 09:15:12 +0000 (09:15 +0000)]
class.c (build_class_ref): Changed name of primitive classes to start with `_Jv_'.
* class.c (build_class_ref): Changed name of primitive classes to
start with `_Jv_'.
From-SVN: r23454
Alexandre Oliva [Fri, 30 Oct 1998 05:44:07 +0000 (05:44 +0000)]
configure.in (gxx_include_dir): bitten by autoconf quoting characters :-(
* configure.in (gxx_include_dir): bitten by autoconf quoting
characters :-(
* configure: rebuilt
From-SVN: r23453
Andreas Schwab [Fri, 30 Oct 1998 01:45:46 +0000 (01:45 +0000)]
* configure.in: Ignore non-absolute value in $AS.
From-SVN: r23451
Jeff Law [Fri, 30 Oct 1998 00:45:03 +0000 (17:45 -0700)]
Daily bump.
From-SVN: r23450
Tom Tromey [Fri, 30 Oct 1998 00:35:32 +0000 (00:35 +0000)]
class.c (make_class_data): Renamed fields: nmethods to method_count, method_count to dtable_method_count.
* class.c (make_class_data): Renamed fields: nmethods to
method_count, method_count to dtable_method_count. Always set
`state' field to 0.
* decl.c (init_decl_processing): Likewise.
From-SVN: r23449
Peter Jakubek [Thu, 29 Oct 1998 23:57:11 +0000 (23:57 +0000)]
* m68k.h (INDIRECTABLE_1_ADDRESS_P): Fix thinko.
From-SVN: r23446
Mark Elbrecht [Thu, 29 Oct 1998 23:44:38 +0000 (23:44 +0000)]
* configure.in (msdosdjgpp): Set exeext and target_alias.
From-SVN: r23445
Jeffrey A Law [Thu, 29 Oct 1998 23:40:27 +0000 (23:40 +0000)]
egcs_update: Do touch java/parse.c and java/parse-scan.c.
* egcs_update: Do touch java/parse.c and java/parse-scan.c. They're
in the repo again.
From-SVN: r23444
Bernd Schmidt [Thu, 29 Oct 1998 23:18:51 +0000 (23:18 +0000)]
flow.c (XNMALLOC): New macro.
* flow.c (XNMALLOC): New macro.
(flow_int_list_blocks, basic_block_succ, basic_block_pred): New
static variables.
(add_edge, add_edge_to_label): New static functions.
(free_bb_memory): New function.
(flow_delete_insn): Delete function.
(basic_block_drops_in): Delete variable.
(find_basic_blocks): Allocate and initialize basic_block_head,
basic_block_succ. Don't allocate basic_block_drops_in.
Call free_bb_memory at the beginning.
(find_basic_blocks_1): Don't do multiple passes.
Delete code to compute basic_block_drops_in.
After calling make_edges, mark blocks reached by current block live.
Update test for unreachable live blocks.
(mark_label_ref): Delete args X, CHECKDUP. Add PRED arg. All callers
changed.
Simplify to call add_edge_to_label when a LABEL_REF is found.
(make_edges): Simplify to call add_edge_to_label instead of
mark_label_ref most of the time.
Compute here whether control drops into the next block.
(delete_unreachable_blocks): Return void. All callers changed.
Delete unreachable blocks in reverse order.
After deleting all unreachable blocks, renumber the remaining ones
and update n_basic_blocks.
(delete_block): Speed up deletion a bit.
Don't set basic_block_drops_in for deleted blocks.
(free_basic_block_vars): Don't free basic_block_drops_in.
(life_analysis_1): Update to use new edge representation.
(dump_flow_info): Delete code to print basic block info; call
dump_bb_data instead.
(compute_preds_succs): Delete code to recompute basic_block_drops_in
and uid_block_number.
Simply copy the previously computed cfg.
(dump_bb_data): New arg LIVE_INFO. All callers changed.
Print register lifetime information if LIVE_INFO is nonzero.
* basic-block.h (dump_bb_data): Adjust prototype.
* gcse.c (gcse_main): Update call to dump_bb_data.
* rtl.h (free_bb_memory): Declare.
* toplev.c (rest_of_compilation): Call free_bb_memory.
From-SVN: r23443
Jeff Law [Thu, 29 Oct 1998 23:07:56 +0000 (16:07 -0700)]
reload1.c (struct elim_table): Delete MAX_OFFSET member.
�
* reload1.c (struct elim_table): Delete MAX_OFFSET member.
(update_eliminable_offsets): Don't compute it.
(set_initial_elim_offsets): Don't initialize it.
Break out some code into set_initial_label_offsets so the rest of
this function can be called from reload_as_needed.
Assume that INITIAL_FRAME_POINTER_OFFSET is defeined when
ELIMINABLE_REGS isn't.
(set_initial_label_offsets): New function, broken out of
set_initial_elim_offsets.
(set_offsets_for_label): New function, broken out of set_label_offsets
and reload_as_needed.
(reload): Call the two new functions.
(reload_as_needed): Call set_initial_elim_offsets instead of
duplicating the code. Likewise for set_offsets_for_label.
From-SVN: r23442
Jeff Law [Thu, 29 Oct 1998 23:07:53 +0000 (16:07 -0700)]
reload1.c (struct elim_table): Delete MAX_OFFSET member.
H
* reload1.c (struct elim_table): Delete MAX_OFFSET member.
(update_eliminable_offsets): Don't compute it.
(set_initial_elim_offsets): Don't initialize it.
Break out some code into set_initial_label_offsets so the rest of
this function can be called from reload_as_needed.
Assume that INITIAL_FRAME_POINTER_OFFSET is defeined when
ELIMINABLE_REGS isn't.
(set_initial_label_offsets): New function, broken out of
set_initial_elim_offsets.
(set_offsets_for_label): New function, broken out of set_label_offsets
and reload_as_needed.
(reload): Call the two new functions.
(reload_as_needed): Call set_initial_elim_offsets instead of
duplicating the code. Likewise for set_offsets_for_label.
From-SVN: r23441
Bernd Schmidt [Thu, 29 Oct 1998 22:58:05 +0000 (22:58 +0000)]
reload1.c (choose_reload_regs): Fix typo in Oct 17 change.
* reload1.c (choose_reload_regs): Fix typo in Oct 17 change.
(emit_reload_insns): Ensure that when we set reg_reloaded_valid for
any hard reg, reg_reloaded_dead contains valid data.
From-SVN: r23440
Jason Merrill [Thu, 29 Oct 1998 21:54:57 +0000 (21:54 +0000)]
* decl.c (lookup_name_real): Simplify suggested fix.
From-SVN: r23439
Jason Merrill [Thu, 29 Oct 1998 21:47:33 +0000 (21:47 +0000)]
* decl.c (lookup_name_real): OK, only warn if not lexing.
From-SVN: r23438
Marcus Meissner [Thu, 29 Oct 1998 21:37:24 +0000 (21:37 +0000)]
i386.c (i386_valid_type_attribute_p): Return nonzero for mismatched "stdcall" and "cdecl" attributes.
* i386.c (i386_valid_type_attribute_p): Return nonzero for mismatched
"stdcall" and "cdecl" attributes.
From-SVN: r23436
Jason Merrill [Thu, 29 Oct 1998 21:23:53 +0000 (16:23 -0500)]
new
From-SVN: r23435
Jason Merrill [Thu, 29 Oct 1998 21:10:23 +0000 (16:10 -0500)]
new
From-SVN: r23434
Jason Merrill [Thu, 29 Oct 1998 20:46:55 +0000 (20:46 +0000)]
cp-tree.h (IDENTIFIER_MARKED): New macro.
* cp-tree.h (IDENTIFIER_MARKED): New macro.
* search.c (lookup_conversions): Use breadth_first_search.
(add_conversions): Avoid adding two conversions to the same type.
(breadth_first_search): Work with base binfos, rather
than binfos and base indices.
(get_virtual_destructor): Adjust.
(tree_has_any_destructor_p): Adjust.
(get_matching_virtual): Adjust.
Fixes g++.other/conv4.C
From-SVN: r23433
Jason Merrill [Thu, 29 Oct 1998 20:18:48 +0000 (15:18 -0500)]
* pt.c (push_template_decl_real):Remove unused var.
(is_member_template_class): #if 0.
From-SVN: r23432
Jim Wilson [Thu, 29 Oct 1998 19:06:48 +0000 (19:06 +0000)]
Fix sched REG_DEAD note handling bug found by post-reload-flow pass.
* sched.c (update_flow_info): Add code to ! found_orig_dest case to
handle deleted no-op moves of hard registers.
* haifa-sched.c (update_flow_info): Likewise.
From-SVN: r23431
Jeffrey A Law [Thu, 29 Oct 1998 17:18:07 +0000 (17:18 +0000)]
mips.md (reload_{in,out}{si,di}): Emit a USE of HILO at the end of the sequences to reload the HILO register...
* mips.md (reload_{in,out}{si,di}): Emit a USE of HILO at the end
of the sequences to reload the HILO register which do not actually
reference HILO.
From-SVN: r23430
Alexandre Oliva [Thu, 29 Oct 1998 13:58:38 +0000 (13:58 +0000)]
* g++.old-deja/g++.other/dcast2.C: cannot dynamic downcast &x
From-SVN: r23429
Alexandre Oliva [Thu, 29 Oct 1998 13:44:56 +0000 (13:44 +0000)]
init9.C: test cross initialization of non-POD types
* g++.old-deja/g++.other/init9.C: test cross initialization of
non-POD types
From-SVN: r23428
Jim Wilson [Thu, 29 Oct 1998 12:40:21 +0000 (12:40 +0000)]
Fix for sparc va_arg macro aliasing problem.
* c-common.c (c_get_alias_set): Handle ARRAY_REF of union field.
From-SVN: r23427
Zack Weinberg [Thu, 29 Oct 1998 11:55:06 +0000 (11:55 +0000)]
lex.c: Call check_newline from lang_init always.
1998-10-28 Zack Weinberg <zack@rabi.phys.columbia.edu>
* cp/lex.c: Call check_newline from lang_init always. After
calling cpp_start_read, set yy_cur and yy_lim to read from the
cpplib token buffer.
From-SVN: r23425
Zack Weinberg [Thu, 29 Oct 1998 11:54:13 +0000 (11:54 +0000)]
[multiple changes]
1998-10-28 16:10 -0500 Zack Weinberg <zack@rabi.phys.columbia.edu>
* c-lang.c: Declare extern char *yy_cur if USE_CPPLIB.
(lang_init): Call check_newline always.
* c-lex.c (init_parse) [USE_CPPLIB=1]: After calling
cpp_start_read, set yy_cur and yy_lim to read from
parse_in.token_buffer, so that we'll see the first #line
directive.
* cpplib.c (cpp_start_read): finclude the main input file
before processing -include/-imacros. Process -imacros and
-include separately, and handle -include by stacking a
buffer for the file in question as if it'd been #included.
* toplev.c (documented_lang_options) Recognize -H when
USE_CPPLIB is on.
1998-10-28 16:09 -0500 Zack Weinberg <zack@rabi.phys.columbia.edu>
* cpplib.c: Merge do_once into do_pragma. Break file handling
code out of do_include.
Move append_include_chain, deps_output,
file_cleanup, redundant_include_p, import_hash,
lookup_import, add_import, read_filename_string, read_name_map,
open_include_file, finclude, safe_read to cppfiles.c.
Move prototypes for deps_output, append_include_chain,
finclude to cpplib.h. Move definition of struct
file_name_list there also.
* cppfiles.c: New file. Contains all the above functions
broken out of cpplib.c; also hack_vms_include_specification
from cccp.c and find_include_file, a new function broken out of
do_include.
* Makefile.in (cppmain): Depend on cppfiles.o.
(fix-header): Likewise.
(cppfiles.o): New target.
* configure.in (--enable-c-cpplib): Add cppfiles.o to
extra_c_objs. Add ../cppfiles.o to extra_cxx_objs.
From-SVN: r23424
Andrew MacLeod [Thu, 29 Oct 1998 11:21:20 +0000 (11:21 +0000)]
except.c (emit_eh_context): Make the EH context register stay alive at -O0 so stupid.c doesn't get confused.
Thu Oct 29 14:10:22 EST 1998 Andrew MacLeod <amacleod@cygnus.com>
* except.c (emit_eh_context): Make the EH context register stay alive
at -O0 so stupid.c doesn't get confused.
From-SVN: r23423
Jason Merrill [Thu, 29 Oct 1998 02:27:55 +0000 (02:27 +0000)]
pt.c (push_template_decl_real): Generalize check for incorrect number of template parms.
* pt.c (push_template_decl_real): Generalize check for incorrect
number of template parms.
From-SVN: r23422
Jason Merrill [Thu, 29 Oct 1998 02:27:41 +0000 (21:27 -0500)]
new
From-SVN: r23421
Herman A.J. ten Brugge [Thu, 29 Oct 1998 01:25:35 +0000 (02:25 +0100)]
emit-rtl.c (try_split): Do not try to split a BARRIER.
* emit-rtl.c (try_split): Do not try to split a BARRIER.
Fixes core dump for c4x c-torture test.
From-SVN: r23420
Jeff Law [Thu, 29 Oct 1998 00:45:02 +0000 (17:45 -0700)]
Daily bump.
From-SVN: r23419
Jan Hubicka [Thu, 29 Oct 1998 00:38:31 +0000 (01:38 +0100)]
i386.md: Change ix86_cpu == PROCESSOR_PENTIUM to TARGET_PENTIUM
* i386.md: Change ix86_cpu == PROCESSOR_PENTIUM to TARGET_PENTIUM
(zero_extendsidi2): Use # in output template and handle completely by
splits.
(zero_extend splitters): New define_splits.
(ashiftrt_32): New pattern.
Co-Authored-By: Jeffrey A Law <law@cygnus.com>
From-SVN: r23418
Jason Merrill [Wed, 28 Oct 1998 23:08:06 +0000 (18:08 -0500)]
up
From-SVN: r23417
Jason Merrill [Wed, 28 Oct 1998 22:59:08 +0000 (22:59 +0000)]
tree.c (append_random_chars): New fn.
* tree.c (append_random_chars): New fn.
(get_file_function_name_long): Use it.
From-SVN: r23416
Richard Henderson [Wed, 28 Oct 1998 22:31:06 +0000 (14:31 -0800)]
Makefile.in (cc1): Put C_OBJS, and thence @extra_c_objs@ last.
* Makefile.in (cc1): Put C_OBJS, and thence @extra_c_objs@ last.
(LIBCPP_OBJS): New. Add cppulp.o.
(cppmain, fix-header): Depend on and use libcpp.a.
* configure.in (extra_c_objs, extra_cxx_objs): Use libcpp.a instead
of the individual object files.
* objc/Make-lang.in (cc1obj): Put OBJC_OBJS, and thence @extra_c_objs@,
last.
* cccp.c (user_label_prefix): New.
(main): Set it off -f*leading-underscore.
(special_symbol): Use it.
* cpplib.c (special_symbol): Likewise.
(cpp_handle_option): Handle -f*leading-underscore.
* cppulp.c: New file.
* output.h (user_label_prefix): Declare it.
* dwarf2out.c (ASM_NAME_TO_STRING): Prepend user_label_prefix.
* toplev.c (f_options, main): Handle -f*leading-underscore.
* defaults.h (ASM_OUTPUT_LABELREF): Use asm_fprintf instead of
referencing USER_LABEL_PREFIX directly.
* config/nextstep.h (ASM_OUTPUT_LABELREF): Likewise.
* m32r/m32r.h (ASM_OUTPUT_LABELREF): Likewise.
* final.c (asm_fprintf): Use user_label_prefix instead.
* arm/thumb.c (thumb_print_operand): Likewise.
* gcc.c (default_compilers): Pass -f*leading-underscore on to
cpp wherever appropriate.
From-SVN: r23415
Richard Henderson [Wed, 28 Oct 1998 22:26:24 +0000 (14:26 -0800)]
Makefile.in (cc1plus): Put CXX_OBJS, and thence @extra_cxx_objs@, last.
* Makefile.in (cc1plus): Put CXX_OBJS, and thence @extra_cxx_objs@,
last.
From-SVN: r23414
Robert Lipe [Wed, 28 Oct 1998 21:10:55 +0000 (21:10 +0000)]
sco5.h (SUBTARGET_SWITCHES): Add documentation for OpenServer- specific compiler switches.
* sco5.h (SUBTARGET_SWITCHES): Add documentation for OpenServer-
specific compiler switches.
From-SVN: r23413
Jason Merrill [Wed, 28 Oct 1998 21:02:49 +0000 (21:02 +0000)]
class.c (instantiate_type): Don't consider templates for a normal match.
* class.c (instantiate_type): Don't consider templates for a normal
match.
From-SVN: r23412
Jason Merrill [Wed, 28 Oct 1998 20:29:09 +0000 (20:29 +0000)]
class.c (finish_struct_1): Don't complain about non-copy assignment ops in union members.
* class.c (finish_struct_1): Don't complain about non-copy
assignment ops in union members.
* class.c (build_vtable): Don't pass at_eof to import_export_vtable.
(prepare_fresh_vtable): Likewise.
(finish_struct_1): Don't call import_export_class.
* decl2.c (finish_vtable_vardecl): Do import/export stuff.
(finish_prevtable_vardecl): Lose.
(finish_file): Don't call it.
* pt.c (instantiate_class_template): Likewise.
From-SVN: r23410
Jeffrey A Law [Wed, 28 Oct 1998 20:08:34 +0000 (20:08 +0000)]
Makefile.in (c-common.o): Depend on c-pragma.h.
* Makefile.in (c-common.o): Depend on c-pragma.h. Use $(RTL_H) instead
of rtl.h.
From-SVN: r23409
Kaveh R. Ghazi [Wed, 28 Oct 1998 18:00:53 +0000 (18:00 +0000)]
Warning fixes:
* gcc.c (EXTRA_SPECS, extra_specs): Introduce an intermediate
structure which has exactly the members provided by EXTRA_SPECS.
Xmalloc() the real `extra_specs', and initialize it from this
intermediate structure.
* alpha.h (EXTRA_SPECS): Revert change for missing initializers.
* mips.h (EXTRA_SPECS): Likewise.
* sparc.h (EXTRA_SPECS): Likewise.
From-SVN: r23406
Andreas Schwab [Wed, 28 Oct 1998 16:46:46 +0000 (16:46 +0000)]
Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* function.c (purge_addressof_1): Instead of aborting when a
bitfield insertion as a replacement for (MEM (ADDRESSOF)) does not
work just put the ADDRESSOF on stack. Otherwise remember all such
successfull replacements, so that exactly the same replacements
can be made on the REG_NOTEs. Remove the special case for CALL
insns again.
(purge_addressof_replacements): New variable.
(purge_addressof): Clear it at end.
From-SVN: r23405