Commit Graph

19326 Commits

Author SHA1 Message Date
Jeff Law
7e0a7fc28e Daily bump.
From-SVN: r23467
1998-10-30 17:45:01 -07:00
Alexandre Oliva
073b7cea92 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
1998-10-31 00:38:12 +00:00
Alexandre Oliva
57d75d5fe9 * g++.old-deja/g++.eh/sjlj1.C: test checked sjlj-exception
From-SVN: r23465
1998-10-31 00:29:38 +00:00
Alexandre Oliva
f76f703ffd 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
1998-10-31 00:06:24 +00:00
Jeff Law
5585c1bc80 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
1998-10-30 06:55:47 -07:00
Jeff Law
09bedf8000 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
1998-10-30 06:55:43 -07:00
Richard Henderson
6093f019b9 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
1998-10-30 05:24:33 -08:00
Richard Henderson
f3196f46a2 Fix lying changelog entry.
From-SVN: r23456
1998-10-30 05:18:50 -08:00
Mark Mitchell
8a72a04676 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
1998-10-30 11:17:50 +00:00
Tom Tromey
66d88624a9 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
1998-10-30 09:15:12 +00:00
Alexandre Oliva
de82584de7 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
1998-10-30 05:44:07 +00:00
Andreas Schwab
d65ae0584b * configure.in: Ignore non-absolute value in $AS.
From-SVN: r23451
1998-10-30 01:45:46 +00:00
Jeff Law
f5343a9dd0 Daily bump.
From-SVN: r23450
1998-10-29 17:45:03 -07:00
Tom Tromey
9cfceb60cd 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
1998-10-30 00:35:32 +00:00
Peter Jakubek
8b83b2a74d * m68k.h (INDIRECTABLE_1_ADDRESS_P): Fix thinko.
From-SVN: r23446
1998-10-29 16:57:11 -07:00
Mark Elbrecht
dedcc3997e * configure.in (msdosdjgpp): Set exeext and target_alias.
From-SVN: r23445
1998-10-29 16:44:38 -07:00
Jeffrey A Law
0999b4b825 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
1998-10-29 16:40:27 -07:00
Bernd Schmidt
421382ac8c 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
1998-10-29 16:18:51 -07:00
Jeff Law
1f3b1e1a0b 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
1998-10-29 16:07:56 -07:00
Jeff Law
6467c05f00 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
1998-10-29 16:07:53 -07:00
Bernd Schmidt
00f9f1bc15 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
1998-10-29 15:58:05 -07:00
Jason Merrill
24c659840f * decl.c (lookup_name_real): Simplify suggested fix.
From-SVN: r23439
1998-10-29 16:54:57 -05:00
Jason Merrill
d7b3753c8e * decl.c (lookup_name_real): OK, only warn if not lexing.
From-SVN: r23438
1998-10-29 16:47:33 -05:00
Marcus Meissner
afcfe58c38 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
1998-10-29 14:37:24 -07:00
Jason Merrill
1a7a342d99 new
From-SVN: r23435
1998-10-29 16:23:53 -05:00
Jason Merrill
384278ddcd new
From-SVN: r23434
1998-10-29 16:10:23 -05:00
Jason Merrill
72c4a2a6fb 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
1998-10-29 15:46:55 -05:00
Jason Merrill
ba4f4e5d1c * pt.c (push_template_decl_real):Remove unused var.
(is_member_template_class): #if 0.

From-SVN: r23432
1998-10-29 15:18:48 -05:00
Jim Wilson
faff4ab8c5 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
1998-10-29 11:06:48 -08:00
Jeffrey A Law
839366ddec 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
1998-10-29 10:18:07 -07:00
Alexandre Oliva
60049c8def * g++.old-deja/g++.other/dcast2.C: cannot dynamic downcast &x
From-SVN: r23429
1998-10-29 13:58:38 +00:00
Alexandre Oliva
124e573237 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
1998-10-29 13:44:56 +00:00
Jim Wilson
1e2800358a Fix for sparc va_arg macro aliasing problem.
* c-common.c (c_get_alias_set): Handle ARRAY_REF of union field.

From-SVN: r23427
1998-10-29 04:40:21 -08:00
Zack Weinberg
7140b0dba6 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
1998-10-29 06:55:06 -05:00
Zack Weinberg
add7091b5b [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
1998-10-29 06:54:13 -05:00
Andrew MacLeod
0fc1434bd0 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
1998-10-29 11:21:20 +00:00
Jason Merrill
e1a5ccf7e6 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
1998-10-28 21:27:55 -05:00
Jason Merrill
1d194eae19 new
From-SVN: r23421
1998-10-28 21:27:41 -05:00
Herman A.J. ten Brugge
e526eeec3f 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
1998-10-28 18:25:35 -07:00
Jeff Law
af2c0a263d Daily bump.
From-SVN: r23419
1998-10-28 17:45:02 -07:00
Jan Hubicka
bb62e19a20 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
1998-10-28 17:38:31 -07:00
Jason Merrill
63ece2d277 up
From-SVN: r23417
1998-10-28 18:08:06 -05:00
Jason Merrill
e2c3143293 tree.c (append_random_chars): New fn.
* tree.c (append_random_chars): New fn.
	(get_file_function_name_long): Use it.

From-SVN: r23416
1998-10-28 17:59:08 -05:00
Richard Henderson
19283265ad 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
1998-10-28 14:31:06 -08:00
Richard Henderson
a45a7ba073 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
1998-10-28 14:26:24 -08:00
Robert Lipe
79a9696b22 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
1998-10-28 21:10:55 +00:00
Jason Merrill
e15a4d0dc0 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
1998-10-28 16:02:49 -05:00
Jason Merrill
2455f26fc1 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
1998-10-28 15:29:09 -05:00
Jeffrey A Law
5916476fda 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
1998-10-28 13:08:34 -07:00
Kaveh R. Ghazi
829245be1b 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
1998-10-28 18:00:53 +00:00