Commit Graph

23751 Commits

Author SHA1 Message Date
Mark Mitchell
b5434ee085 cp-tree.def (LABEL_STMT): New tree node.
* cp-tree.def (LABEL_STMT): New tree node.
	(LABEL_STMT_LABEL): New macro.
	(shadow_label): Remove.
	(declare_local_label): New function.
	(finish_label_decl): Likewise.
	* decl.c (make_label_decl): New function, split out from
	lookup_label.
	(shadowed_labels): Remove.
	(binding_level): Add shadowed_labels.
	(clear_binding_level): Remove.
	(push_binding_level): Just bzero the new binding level.
	(pushlevel): Fix indentation.
	(pop_label): New function.
	(pop_labels): Likewise, split out from poplevel.
	(poplevel): Pop local labels.  Use pop_labels.
	(maybe_push_to_top_level): Don't clear shadowed_labels.
	(lookup_label): Use make_label_decl.
	(shadow_label): Remove.
	(declare_local_label): New function.
	(define_label): Simplify.
	(start_function): Don't clear shadowed_labels.
	(cp_function): Remove shadowed_labels.
	(push_cp_function_context): Don't save shadowed_labels.
	(pop_cp_function_context): Don't restore it.
	* dump.c (dequeue_and_dump): Handle LABEL_STMT.
	* parse.y (label_decl): Use finish_label_decl.
	* pt.c (tsubst_expr): Handle LABEL_STMTs, and local label
	declarations.
	* semantics.c (finish_label_stmt): Add a LABEL_STMT when
	building_stmt_tree.
	(finish_label_decl): New function.
	(expand_stmt): Handle LABEL_STMTs and local label declarations.

From-SVN: r28950
1999-08-29 00:51:31 +00:00
Richard Henderson
5aabad0023 flow.c (flow_delete_insn_chain): Rename from delete_insn_chain.
* flow.c (flow_delete_insn_chain): Rename from delete_insn_chain.
        (update_life_info) [REG_WAS_0]: Search the original insns rather
        than the new insns for the note.  Fix typos finding note_dest.
        If no dest found, discard the note rather than abort.
        [REG_NOALIAS]: Handle as REG_NO_CONFLICT.
        (replace_insns): Remove the old insn list after update_life_info
        not before.

From-SVN: r28946
1999-08-28 16:29:55 -07:00
Richard Henderson
87373fba4a haifa-sched.c (sched_analyze): Clear LOG_LINKS before calling sched_analyze_insn.
* haifa-sched.c (sched_analyze): Clear LOG_LINKS before calling
        sched_analyze_insn.
        (sched_analyze_1): Let add_dependence care for not adding dups.
        (sched_analyze_2): Likewise.
        (add_branch_dependences): Likewise.

From-SVN: r28945
1999-08-28 16:20:34 -07:00
Mumit Khan
8e260ba4db Mumit Khan <khan@xraylith.wisc.edu>
* i386/winnt.c (export_list): New type.
        (exports_head): Rename to
        (export_head):  this.
        (i386_pe_record_exported_symbol): Add is_data flag.
        (i386_pe_asm_file_end): Emit directive for exported variables.
        * i386/cygwin.h (i386_pe_record_exported_symbol): Update
        prototype.
        * i386/cygwin.h (ASM_OUTPUT_COMMON): Specify symbol type.
        (ASM_DECLARE_OBJECT_NAME): Likewise.
        (ASM_DECLARE_FUNCTION_NAME): Likewise.
        * i386/uwin.h (ASM_DECLARE_FUNCTION_NAME): Likewise.

From-SVN: r28944
1999-08-28 15:58:42 -07:00
Mark Mitchell
acef433b61 cp-tree.def (LABEL_STMT): New tree node.
* cp-tree.def (LABEL_STMT): New tree node.
	(LABEL_STMT_LABEL): New macro.
	(shadow_label): Remove.
	(declare_local_label): New function.
	(finish_label_decl): Likewise.
	* decl.c (make_label_decl): New function, split out from
	lookup_label.
	(shadowed_labels): Remove.
	(binding_level): Add shadowed_labels.
	(clear_binding_level): Remove.
	(push_binding_level): Just bzero the new binding level.
	(pushlevel): Fix indentation.
	(pop_label): New function.
	(pop_labels): Likewise, split out from poplevel.
	(poplevel): Pop local labels.  Use pop_labels.
	(maybe_push_to_top_level): Don't clear shadowed_labels.
	(lookup_label): Use make_label_decl.
	(shadow_label): Remove.
	(declare_local_label): New function.
	(define_label): Simplify.
	(start_function): Don't clear shadowed_labels.
	(cp_function): Remove shadowed_labels.
	(push_cp_function_context): Don't save shadowed_labels.
	(pop_cp_function_context): Don't restore it.
	* dump.c (dequeue_and_dump): Handle LABEL_STMT.
	* parse.y (label_decl): Use finish_label_decl.
	* pt.c (tsubst_expr): Handle LABEL_STMTs, and local label
	declarations.
	* semantics.c (finish_label_stmt): Add a LABEL_STMT when
	building_stmt_tree.
	(finish_label_decl): New function.
	(expand_stmt): Handle LABEL_STMTs and local label declarations.

From-SVN: r28943
1999-08-28 21:46:30 +00:00
Jeff Law
7910192000 Daily bump.
From-SVN: r28942
1999-08-28 01:45:09 -06:00
Jeffrey A Law
4741f6ad9a * cse.c (fold_rtx): Work around bug in Sun V5.0 compilers.
From-SVN: r28941
1999-08-27 23:41:44 -06:00
Jeffrey A Law
5f9ee6953e gjavah.c, [...]: Do not use C++ style comments in C code.
* gjavah.c, jcf-write.c, verify.c: Do not use C++ style
        comments in C code.

From-SVN: r28940
1999-08-27 23:33:02 -06:00
Jeffrey A Law
7144300698 pa.c (emit_move_sequence): Do not stop on SUBREG_WORD of an operand.
* pa.c (emit_move_sequence): Do not stop on SUBREG_WORD of an
        operand.

From-SVN: r28939
1999-08-27 15:40:33 -06:00
Marc Espie
203cb4ef87 Marc Espie <espie@cvs.openbsd.org>
* config/openbsd.h: Define SET_ASM_OP.
        * tm.texi: cross-reference SET_ASM_OP in the index.

From-SVN: r28938
1999-08-27 14:03:30 -07:00
Zack Weinberg
aa0b446591 rtl.c: Define CONST_DOUBLE_FORMAT to the appropriate format for a CONST_DOUBLE...
1999-08-27 13:27 -0700  Zack Weinberg  <zack@bitmover.com>

	* rtl.c: Define CONST_DOUBLE_FORMAT to the appropriate format
	for a CONST_DOUBLE, at compile time.  Initialize rtx_length
	and class_narrowest_mode at compile time.  Kill init_rtl.
	Mark rtx_length, mode_class, mode_size, mode_unit_size,
	mode_wider_mode, mode_mask_array, class_narrowest_mode, and
	rtx_format as const.  Kill all references to EXTRA_CC_MODES or
	EXTRA_CC_NAMES.
	* rtl.def (CONST_DOUBLE): Use CONST_DOUBLE_FORMAT macro for
	format.
	* rtl.h: Declare rtx_length and rtx_format as const.
	* machmode.def: Define CC().  Use CC() to define CCmode.  If
	EXTRA_CC_MODES is defined, expand it here.
	* machmode.h: Declare mode_class, mode_size, mode_unit_size,
	mode_wider_mode, mode_mask_array, and class_narrowest_mode as
	const.  Kill all references to EXTRA_CC_MODES.

	* toplev.c: Don't prototype or call init_rtl.
	* optabs.c: Don't call init_mov_optab.
	* genemit.c: Don't generate init_mov_optab.  Don't call
	init_rtl.
	* gengenrtl.c: Duplicate calculation of CONST_DOUBLE_FORMAT
	here.
	* genattr.c, genattrtab.c, gencodes.c, genconfig.c,
	genextract.c, genflags.c, genopinit.c, genoutput.c, genpeep.c,
	genrecog.c: Don't call init_rtl.

	* arc.h, arm.h, c4x.h, i386.h, i960.h, m88k.h, pa.h, pdp11.h,
	rs6000.h, sparc.h: Don't define EXTRA_CC_NAMES.  Use CC() in
	definition of EXTRA_CC_MODES.

	* md.texi: Kill ref to EXTRA_CC_NAMES.
	* tm.texi: Document new way to define EXTRA_CC_MODES.

	* genrecog.c: Do not look up the name of a define_split.
	(Unrelated bugfix.)

From-SVN: r28937
1999-08-27 20:37:06 +00:00
Paul Burchard
b780db794f derived3.C: Renamed from lss-001.C.
* g++.old-deja/g++.pt/derived3.C: Renamed from lss-001.C.
* g++.old-deja/g++.pt/ttp56.C: Renamed from lss-002.C.
* g++.old-deja/g++.pt/decl4.C: Renamed from lss-003.C.
* g++.old-deja/g++.pt/memtemp85.C: Renamed from lss-004.C.
* g++.old-deja/g++.pt/memtemp86.C: Renamed from lss-005.C.
* g++.old-deja/g++.pt/memtemp87.C: Renamed from lss-006.C.
* g++.old-deja/g++.pt/static10.C: Renamed from lss-007.C.
* g++.old-deja/g++.pt/memtemp88.C: Renamed from lss-008.C.
* g++.old-deja/g++.pt/memtemp89.C: Renamed from lss-009.C.
* g++.old-deja/g++.pt/memtemp90.C: Renamed from lss-010.C.
* g++.old-deja/g++.pt/memtemp91.C: Renamed from lss-011.C.

From-SVN: r28936
1999-08-27 20:23:30 +00:00
Mark Mitchell
4ca7ba8639 Fix typo in last change
From-SVN: r28935
1999-08-27 18:22:35 +00:00
Zack Weinberg
82f7a8467a Forgot to commit the ChangeLog update for the errors.c patch.
Oops.

From-SVN: r28933
1999-08-27 16:44:21 +00:00
Nick Clifton
3d07a7c46f Fix typo introduced by previous delta
From-SVN: r28932
1999-08-27 16:06:02 +00:00
Kaveh R. Ghazi
3995f0f9f2 * gcc.c (fatal): Make definition static to match prototype.
From-SVN: r28931
1999-08-27 13:50:23 +00:00
Bernd Schmidt
6c1b3bf290 Fix for 'Deadly optimization bug' (see egcs mailing list archive)
From-SVN: r28928
1999-08-27 09:39:14 +00:00
Nathan Sidwell
7cfc8a7830 configure.in: Don't use shell ! to negate exit codes
* configure.in: Don't use shell ! to negate exit codes
* configure: Regenerate

From-SVN: r28927
1999-08-27 09:12:11 +00:00
Andreas Schwab
010529e58b function.c (assign_stack_temp_for_type): Fix change of Mar 5 for the fact that ALIGN is measured in bits, not bytes.
* function.c (assign_stack_temp_for_type): Fix change of Mar 5 for
	the fact that ALIGN is measured in bits, not bytes.

From-SVN: r28926
1999-08-27 07:53:33 +00:00
Zack Weinberg
f8b6598ecc errors.c: New file...
1999-08-27 00:27 -0700  Zack Weinberg  <zack@bitmover.com>

	* errors.c: New file; defines functions error, warning, and
	fatal, variables have_error and progname.
	* errors.h: New file; prototypes and decls for stuff in errors.c.

	* Makefile: Add rules to build errors.o and
	$(HOST_PREFIX)errors.o.  Link genconfig, gencodes, genemit,
	genopinit, genrecog, genextract, genpeep, genattr, and
	genoutput with errors.o.  Add errors.h to deps of genconfig.o,
	gencodes.o, genemit.o, genopinit.o, genrecog.o, genextract.o,
	genpeep.o, genattr.o, and genoutput.o.

	* genconfig.c, gencodes.c, genemit.c, genopinit.c, genrecog.c,
	genextract.c, genpeep.c, genattr.c:  Include errors.h.  Don't
	define or prototype fatal.  Set progname at beginning of main.
	* genoutput.c:  Likewise, and don't define or prototype error
	either.

From-SVN: r28925
1999-08-27 07:47:17 +00:00
Jeff Law
2ca7bde973 Daily bump.
From-SVN: r28924
1999-08-27 01:45:18 -06:00
Zack Weinberg
e89a9554e3 c-typeck.c (c_expand_start_case): Return immediately if exp is an ERROR_MARK.
1999-08-27 00:27 -0700  Zack Weinberg  <zack@bitmover.com>

	* c-typeck.c (c_expand_start_case): Return immediately if exp
	is an ERROR_MARK.
	* fold-const.c (operand_equal_p): Return immediately if arg1
	or arg0 are ERROR_MARKs.
	* stor-layout.c (layout_type [case RECORD_TYPE]): Ignore
	fields of type ERROR_MARK when calculating if the record can
	go in a register.

From-SVN: r28923
1999-08-27 07:37:16 +00:00
Jeffrey A Law
2dc36fe3a7 * gcc.c-torture/execute/990827-1.c: New test.
From-SVN: r28922
1999-08-27 01:24:32 -06:00
Jim Kingdon
7759f25bfb i386.md: In the 6 insns which call output_fix_trunc, earlyclobber operands[0].
* i386.md: In the 6 insns which call output_fix_trunc,
        earlyclobber operands[0].

From-SVN: r28921
1999-08-27 01:07:06 -06:00
Philip Blundell
5ca8e6f76b jump.c (duplicate_loop_exit_test): Call reg_scan_update after creating new registers.
* jump.c (duplicate_loop_exit_test): Call reg_scan_update after
        creating new registers.

From-SVN: r28920
1999-08-27 01:02:37 -06:00
Zack Weinberg
9c23aa4770 i386.h: Declare ix86_cpu_string...
1999-08-26 23:09 -0700  Zack Weinberg  <zack@bitmover.com>

	* i386.h: Declare ix86_cpu_string, ix86_arch_string,
	i386_reg_alloc_order, i386_regparm_string,
	i386_align_loops_string, i386_align_jumps_string,
	i386_align_funcs_string, i386_preferred_stack_boundary_string,
	and i386_branch_cost_string as type "const char *".
	* i386.c: Define all above strings as type "const char *".

From-SVN: r28919
1999-08-27 06:16:55 +00:00
Mark Mitchell
3fa5619139 decl.c (lookup_label): Build labels on the permanent obstack when building statement trees.
* decl.c (lookup_label): Build labels on the permanent obstack
	when building statement trees.  Don't build RTL for labels when
	building statement trees.
	* semantics.c (finish_goto_stmt): Use LABEL_DECLs even when
	building statement trees.
	(finish_label_stmt): Likewise.
	(expand_stmt): Adjust accordingly.
	* pt.c (tsubst_expr); Likewise.
	(do_decl_instantiation): Robustify.

From-SVN: r28918
1999-08-27 06:07:08 +00:00
Mark Mitchell
ed6d16ade2 Fix typo in last change
From-SVN: r28917
1999-08-27 05:33:09 +00:00
Mark Mitchell
49124a6e01 cp-tree.h (AGGR_INIT_VIA_CTOR_P): New macro.
* cp-tree.h (AGGR_INIT_VIA_CTOR_P): New macro.
	* tree.c (build_cplus_new): Set it.
	* expr.c (cplus_expand_expr): Use it.
	* dump.c (deque_and_dump): Handle AGGR_INIT_EXPR.

From-SVN: r28916
1999-08-27 05:01:08 +00:00
Mark Mitchell
e1376b008f cp-tree.h (AGGR_INIT_VIA_CTOR_P): New macro.
* cp-tree.h (AGGR_INIT_VIA_CTOR_P): New macro.
	* tree.c (build_cplus_new): Set it.
	* expr.c (cplus_expand_expr): Use it.

From-SVN: r28915
1999-08-27 04:58:19 +00:00
Mark Mitchell
078a76c8a0 decl.c (store_parm_decls): Reset immediate_size_expand.
* decl.c (store_parm_decls): Reset immediate_size_expand.
	(finish_function): Likewise.

From-SVN: r28914
1999-08-27 03:52:44 +00:00
Jim Wilson
b122caabab Fix aranges corruption for non-mips 64 bit targets.
* dwarf2out.c (output_aranges): Check DWARF_OFFSET_SIZE not PTR_SIZE
	when emitting alignment padding.  Emit padding byte of 0 instead of 4.

From-SVN: r28913
1999-08-26 20:41:45 -07:00
Mark Mitchell
a4efc7d798 tree.c (store_parm_decls): Reset immediate_size_expand.
* tree.c (store_parm_decls): Reset immediate_size_expand.
	(finish_function): Likewise.

From-SVN: r28912
1999-08-27 03:11:52 +00:00
Mark Mitchell
c3da6f12b8 tree.c (copy_node): Improve documentation.
* tree.c (copy_node): Improve documentation.
	(cplus_unsave_expr_now): Don't return a value.

From-SVN: r28911
1999-08-27 03:01:20 +00:00
Jim Wilson
b2244e22a0 Add support for defering line number table construction to assembler.
* dwarf2out.c (DWARF2_ASM_LINE_DEBUG_INFO): Add default definition.
	(debug_dwarf): Add DWARF2_ASM_LINE_DEBUG_INFO support.
	(dwarf2out_line, dwarf2out_finish): Likewise.
	* tm.texi (DWARF2_ASM_LINE_DEBUG_INFO): Add documetation.

From-SVN: r28910
1999-08-26 19:37:40 -07:00
Mark Mitchell
26612c795a tree.c (cplus_unsave_expr_now): Don't return a value.
1999-08-26  Mark Mitchell  <mark@codesourcery.com>

	* tree.c (cplus_unsave_expr_now): Don't return a value.

From-SVN: r28909
1999-08-27 00:51:55 +00:00
Mark Mitchell
38c7331af5 * semantics.c (do_poplevel): Always initialize the return value.
From-SVN: r28908
1999-08-26 23:40:50 +00:00
Craig Burley
723dc4421e New test
From-SVN: r28907
1999-08-26 18:16:57 -04:00
Gavin Romig-Koch
4ef8e8f542 For gcc:
* tree.c (lang_unsave_expr_now) : Correct return type.
	* tree.h (lang_unsave_expr_now) : Same.

For gcc/cp:
	* cp-tree.h (cplus_unsave_expr_now) : Correct return type.
	* tree.h (cplus_unsave_expr_now) : Same.

From-SVN: r28906
1999-08-26 20:47:25 +00:00
Jeff Law
59de811e27 Fix typo in last entry.
From-SVN: r28905
1999-08-26 13:19:58 -06:00
Jeffrey A Law
b85ed4fc35 pa.md (cint_ok_for_move): Use CONST_INT_OK_FOR_LETTER_P macros instead of duplicating code.
* pa.md (cint_ok_for_move): Use CONST_INT_OK_FOR_LETTER_P macros
        instead of duplicating code.

From-SVN: r28904
1999-08-26 13:15:22 -06:00
Tom Tromey
12207a8790 gjavah.c (print_cxx_classname): Print "::" before qualified name.
* gjavah.c (print_cxx_classname): Print "::" before qualified
	name.

http://sourceware.cygnus.com/cgi-bin/gnatsweb.pl?cmd=view&database=java&pr=36

From-SVN: r28902
1999-08-26 18:23:33 +00:00
Bernd Schmidt
21e3a71724 Ignore no-ops in cprop pass.
From-SVN: r28901
1999-08-26 17:33:35 +00:00
Craig Burley
49b1e9eb96 New test
From-SVN: r28900
1999-08-26 13:31:13 -04:00
Craig Burley
c363a0c4a5 New test
From-SVN: r28899
1999-08-26 13:25:27 -04:00
Craig Burley
9dae6a7f36 New test
From-SVN: r28898
1999-08-26 13:13:42 -04:00
Gregg Townsend
ee5cd6389e verify.c (verify_jvm_instructions): Don't check instruction validity beyond end of method.
Wed Aug 25 15:37:15 1999  Gregg Townsend  <gmt@cs.arizona.edu>

        * verify.c (verify_jvm_instructions): Don't check instruction
        validity beyond end of method.

From-SVN: r28897
1999-08-26 10:00:57 -07:00
Craig Burley
b5a3b73799 New tests
From-SVN: r28895
1999-08-26 12:54:30 -04:00
Alexandre Petit-Bianco
f441f67120 re GNATS gcj/32 (A boolean expression containing two qualified expressions makes jc1 die.)
Thu Aug 26 09:10:58 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>

        * parse.y (lookup_cl): Changed leading comment. Now does its best
        to set the column number.
        (qualify_ambiguous_name): Take WFL wrappers into account.

This patch fixes the Java net PR #32.

From-SVN: r28894
1999-08-26 09:51:49 -07:00
Zack Weinberg
8ce2547995 tree.h: fancy_abort always takes three args.
1999-08-26 09:42 -0700  Zack Weinberg  <zack@bitmover.com>

	* tree.h: fancy_abort always takes three args.
	* resource.c: Move include of system.h before toplev.h.

From-SVN: r28893
1999-08-26 16:49:42 +00:00