Commit Graph

26390 Commits

Author SHA1 Message Date
Zack Weinberg
c4e041786a Add -fno-show-column to avoid dejagnu bug
From-SVN: r33993
2000-05-18 17:54:51 +00:00
Chris Demetriou
7aba5a5ff9 c-common.h (enum c_tree_index): Add g77 type entries.
* c-common.h (enum c_tree_index): Add g77 type entries.
        (g77_integer_type_node, g77_uinteger_type_node): New.
        (g77_longint_type_node, g77_ulongint_type_node): New.
        * c-decl.c (init_decl_processing): Initialize them.

Co-Authored-By: Richard Henderson <rth@cygnus.com>

From-SVN: r33992
2000-05-18 10:53:04 -07:00
Chris Demetriou
91542396a6 com.h (FFECOM_f2cINTEGER, [...]): Note that these types correspond to built-in types now defined in the C front...
* com.h (FFECOM_f2cINTEGER, FFECOM_f2cLONGINT): Note that
        these types correspond to built-in types now defined in
        the C front end (for libf2c).

From-SVN: r33991
2000-05-18 10:45:30 -07:00
David Billinghurst
3eb16773fc * g77.f-torture/compile/200005018.f: New test.
From-SVN: r33988
2000-05-18 10:10:18 -07:00
Richard Henderson
14f3e03b14 * config/h8300/h8300.md (subs patterns): Use %G to negate.
From-SVN: r33986
2000-05-18 09:58:03 -07:00
Richard Henderson
009ac3d324 h8300.c (ok_for_bclr): Take a HOST_WIDE_INT.
* config/h8300/h8300.c (ok_for_bclr): Take a HOST_WIDE_INT.
        (small_power_of_two): Likewise; use exact_log2.
        (adds_subs_operand, one_insn_adds_subs_operand): Remove.
        (output_adds_subs): Remove.
        (two_insn_adds_subs_operand): New.
        (split_adds_subs): New.
        * config/h8300/h8300-protos.h: Update.
        * config/h8300/h8300.h (CONST_OK_FOR_J): Cast to uns HOST_WIDE_INT.
        (CONST_OK_FOR_L): Match strict adds operands.
        (CONST_OK_FOR_N): Match struct subs operands.
        * config/h8300/h8300.md (adds_subs insns): Remove.
        (addhi patterns): Output adds/subs directly.
        (addsi_h8300h): Likewise.
        (addhi/addsi splitters): New.  Decompose two_insn_adds_subs_operand.

From-SVN: r33985
2000-05-18 09:52:10 -07:00
Zack Weinberg
15dad1d908 cppexp.c (parse_assertion): New.
* cppexp.c (parse_assertion): New.
	(lex): Call it for CPP_HASH.  Remove CPP_ASSERTION case.
	(_cpp_parse_expr): Remove case '#'.  Don't set
	parsing_if_directive.
	* cpphash.c (collect_objlike_expansion,
	collect_funlike_expansion, collect_params,
	_cpp_create_definition): The list no longer has a trailing
	VSPACE token.
	* cpphash.h (enum node_type): Add T_ASSERTION.
	(struct hashnode): Remove aschain, add pred.
	(struct predicate): New.
	Update prototypes.

	* cpplex.c (expand_token_space): Handle both offset and
	nonoffset lists.
	(init_token_list, _cpp_free_token_list, _cpp_parse_assertion): Delete.
	(_cpp_init_toklist, _cpp_clear_toklist, _cpp_free_toklist,
	_cpp_slice_toklist, _cpp_squeeze_toklist, _cpp_equiv_tokens,
	_cpp_equiv_toklists): New.
	(_cpp_scan_line): Rename to _cpp_scan_until; add ability to
	stop at any single-character token, not just newline.
	(_cpp_lex_token): Remove special cases for #define and #if.
	(cpp_get_token): Expect # as a separate token type.  Remove
	DIRECTIVE case.
	(_cpp_get_directive_token): Remove DIRECTIVE case.
	(_cpp_lex_line, _cpp_lex_file, _cpp_init_input_buffer): Update.

	* cpplib.c (_cpp_check_directive): Set dirno and
	SYNTAX_INCLUDE bit of flags, not dir_handler and dir_flags.
	(_cpp_handle_directive): Run # <number> through the same logic
	as normal directives.
	(do_define): Don't set parsing_define_directive.  Use
	_cpp_scan_until.  The list does not have a VSPACE at the end.
	(do_if): Save, clear, and restore only_seen_white around
	_cpp_parse_expr.
	(skip_if_group): s/CPP_DIRECTIVE/CPP_HASH/
	(do_assert, do_unassert): Rewrite.

	* cpplib.h (TTYPE_TABLE): Remove CPP_ASSERTION.
	(LIST_OFFSET): New flag.
	(struct cpp_toklist): Replace dir_handler and dir_flags with
	dirno and flags.
	(struct cpp_reader): Remove parsing_if_directive and
	parsing_define_directive.

From-SVN: r33984
2000-05-18 15:55:46 +00:00
Kaveh R. Ghazi
7021bb50d4 inclhack.def (broken_cabs): Update fix to handle comments following the cabs decl which terminate on the...
* fixinc/inclhack.def (broken_cabs): Update fix to handle comments
	following the cabs decl which terminate on the following line.
	Add the corresponding test_text case.

From-SVN: r33983
2000-05-18 15:47:31 +00:00
Neil Booth
6ab3e7dde0 cppinit.c (cpp_reader_init): Initialise col_adjust and default tab stop size.
* cppinit.c (cpp_reader_init): Initialise col_adjust and
	default tab stop size.
	(no_num, OPT_ftabstop): New.
	(handle_option): Handle "ftabstop=" command-line option.
	(print_help): Document it.
	* cpplex.c (COLUMN): Remove.
	(handle_newline): Reset col_adjust.
	(skip_whitespace): Update col_adjust as tabs encountered.
	(_cpp_lex_line): Update to use col_adjust.  Call
	skip_whitespace for all whitespace.
	* cpplib.h (struct cpp_options): New member tabstop.
	(struct cpp_reader): New member col_adjust.
	(CPP_BUF_COL): Update.
	(CPP_BUF_COLUMN): New.
	* cpp.texi: Document "-ftabstop=" command line option.

From-SVN: r33982
2000-05-18 11:09:27 +00:00
Jeff Law
ec9616c316 Daily bump.
From-SVN: r33979
2000-05-18 01:45:07 -06:00
Jeffrey A Law
233f4c9826 * gcc.c-torture/compile/20000517-1.c: New test.
From-SVN: r33972
2000-05-17 18:30:08 -06:00
Philippe De Muyter
b4c7e5673b configure.in (NO_MINUS_C_MINUS_O): Macro made availabe for AC_OUTPUT files.
* configure.in (NO_MINUS_C_MINUS_O): Macro made availabe for AC_OUTPUT
        files.
        * configure: Rebuilt.

From-SVN: r33971
2000-05-17 18:20:39 -06:00
John David Anglin
b7d95e6f33 * mklibgcc.in Add missing -DL$name when compiling modules in libgcc1.c.
From-SVN: r33970
2000-05-17 18:18:06 -06:00
John David Anglin
935fb9c457 tree.c (build_common_tree_nodes): Do not build TI nodes unless HOST_BITS_PER_WIDE_INT is >= 64.
* tree.c (build_common_tree_nodes): Do not build TI nodes unless
        HOST_BITS_PER_WIDE_INT is >= 64.

From-SVN: r33969
2000-05-17 18:07:45 -06:00
Richard Henderson
d67b9d0011 jump.c (jump_optimize_1): Remove inactive but real insns in jump-to-next-insn optimization.
* jump.c (jump_optimize_1): Remove inactive but real insns
        in jump-to-next-insn optimization.

From-SVN: r33966
2000-05-17 14:02:22 -07:00
Richard Henderson
97d36f455e toplev.c (rest_of_compilation): Don't call optimize_mode_switching unless OPTIMIZE_MODE_SWITCHING.
* toplev.c (rest_of_compilation): Don't call optimize_mode_switching
        unless OPTIMIZE_MODE_SWITCHING.  Conditionally set no_new_pseudos.
        Don't call recompute_reg_usage if no_new_pseudos is true.
        * lcm.c (optimize_mode_switching): Move ifdefs outside function.
        Return true if we did work; update global life information.
        * basic-block.h (optimize_mode_switching): Update decl.

From-SVN: r33965
2000-05-17 14:01:07 -07:00
Neil Booth
79f50f2abd cpplex.c (expand_name_space): Don't use ptrdiff_t.
2000-05-17  Neil Booth  <neilb@earthling.net>

	* cpplex.c (expand_name_space): Don't use ptrdiff_t.

From-SVN: r33964
2000-05-17 19:06:20 +00:00
Mark Mitchell
ff9f1a5d55 decl2.c (finish_anon_union): Generalize error messages to handle anonymous structures.
* decl2.c (finish_anon_union): Generalize error messages to handle
	anonymous structures.
	* init.c (perform_member_init): Remove `name' parameter.
	(build_field_list): New function.
	(sort_member_init): Handle anonymous union initialization order
	correctly.  Check for multiple initializations of the same union.
	(emit_base_init): Don't look up fields by name here.
	(expand_member_init): Record the result of name lookup for future
	reference.
	* typeck.c (build_component_ref): Fix formatting.

From-SVN: r33963
2000-05-17 18:46:32 +00:00
Zack Weinberg
2c0b35cb89 cpplib.c: New feature, #pragma system_header.
* cpplib.c: New feature, #pragma system_header.
	* cpp.texi: Document special treatment of system headers, and
	the various mechanisms to get a header that special treatment.

From-SVN: r33962
2000-05-17 18:07:16 +00:00
Bruce Korb
3f69bd930c use #def constant for sub-pattern count
From-SVN: r33961
2000-05-17 16:31:57 +00:00
Bruce Korb
5e36475b82 #ifdef debugging code
From-SVN: r33960
2000-05-17 16:15:22 +00:00
Kaveh R. Ghazi
e0125cf32b system.h (offsetof): Define at the very end, to ensure we prefer the platform's definition if available.
* system.h (offsetof): Define at the very end, to ensure we prefer
	the platform's definition if available.

From-SVN: r33958
2000-05-17 15:21:11 +00:00
Bruce Korb
2dc693ee94 Keep HP-UX 11 from stomping on C++ math namespace
From-SVN: r33957
2000-05-17 14:59:20 +00:00
Bruce Korb
e9099386ae improve the debug displays, ignore SIGPIPE, and fix char_macro_def regex
From-SVN: r33956
2000-05-17 14:56:13 +00:00
Kaveh R. Ghazi
558fe506b5 fixfixes.c (char_macro_use_fix, [...]): Don't check the return value of sprintf.
* fixinc/fixfixes.c (char_macro_use_fix, char_macro_def_fix):
	Don't check the return value of sprintf.  Use asprintf to avoid
	buffer overflows.

From-SVN: r33955
2000-05-17 14:43:50 +00:00
Philippe De Muyter
6f6ceed067 mklibgcc.in (building libgcc1): Find libgcc1.c in $(srcdir), not in the current directory.
* mklibgcc.in (building libgcc1) [Xlibgcc1.a]: Find libgcc1.c in
	$(srcdir), not in the current directory.

From-SVN: r33954
2000-05-17 10:03:04 +00:00
Andrew Cagney
078721e1a2 Add options -Wunused-variable, -Wunused-function, -Wunused-label,
-Wunused-parameter.  Retain existing -Wunused behavour.  Document.

From-SVN: r33953
2000-05-17 08:15:29 +00:00
Jeff Law
ef94b7f541 Daily bump.
From-SVN: r33952
2000-05-17 01:45:07 -06:00
Richard Henderson
53749ab75a crtbegin.asm (__dso_handle): Mark hidden if the assembler supports it.
* config/ia64/crtbegin.asm (__dso_handle): Mark hidden if the
        assembler supports it.
        (.fini, .init): Use a gp-relative indirect call.
        (__do_global_dtors_aux): Preserve the gp; rebundle.
        (__do_frame_setup): Likewise.
        * config/ia64/crtend.asm (.IA_64.unwind): Don't terminate with -1.
        (.init): Use a gp-relative indirect call.
        (__do_global_ctors_aux): Preserve the gp.

From-SVN: r33951
2000-05-16 18:52:18 -07:00
Richard Henderson
f5540cd4aa flow.c (commit_one_edge_insertion): Be prepared for a return insn to be inserted on the edge with a normal jump.
* flow.c (commit_one_edge_insertion): Be prepared for a return
        insn to be inserted on the edge with a normal jump.
        * jump.c (jump_optimize_1): Don't look to create return isns.

        * flow.c (flow_delete_insn): Don't adjust reference count of notes.
        * jump.c (jump_optimize_1): Likewise.
        (returnjump_p): Verify the argument is a JUMP_INSN.
        * rtl.def (NOTE): Add 5th element for NOTE_INSN_DELETED_LABEL.

From-SVN: r33950
2000-05-16 18:44:03 -07:00
Nick Clifton
23568fa021 Replace (GET_RTX_CLASS(GET_CODE()) == 'i') with INSN_P()
From-SVN: r33949
2000-05-16 23:53:19 +00:00
Mark Mitchell
eaef69ce27 cp-treeh (BINFO_NEW_VTABLE_MARKED): Update documentation.
* cp-treeh (BINFO_NEW_VTABLE_MARKED): Update documentation.
	* init.c (dfs_vtable_path_unmark): Remove.
	* search.c (marked_new_vtable_p): Likewise.
	(unmarked_new_vtable_p): Likewise.
	(dfs_search_slot_nonempty_p): Likewise.
	(dfs_mark): Likewise.
	(dfs_vtable_path_unmark): Likewise.
	(dfs_find_vbases): Don't set BINFO_NEW_VTABLE_MARKED.
	(dfs_int_vbase_pointers): Don't clear BINFO_VTABLE_PATH_MARKED.
	(dfs_init_vbase_pointers): Remove special-case new ABI code.
	(dfs_clear_vbase_slots): Don't clear BINFO_NEW_VTABLE_MARKED.
	(init_vbase_pointers): Simplify.
	(expand_indirect_vtbls_init): Likewise.

From-SVN: r33948
2000-05-16 23:51:18 +00:00
Franz Sirl
13fa202991 20000516-1.c: New test.
2000-05-16  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>

	* gcc.c-torture/execute/20000516-1.c: New test.

From-SVN: r33947
2000-05-16 23:07:20 +00:00
Franz Sirl
df3aefb0bf rs6000.c (rs6000_select_section): Treat CONSTRUCTOR like VAR_DECL.
2000-05-16  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>

	* rs6000/rs6000.c (rs6000_select_section): Treat CONSTRUCTOR like
	VAR_DECL.

From-SVN: r33946
2000-05-16 22:59:41 +00:00
Franz Sirl
9e6e5068b3 sysv4.h (ASM_OUTPUT_DWARF_ADDR): Delete unused variable.
2000-05-16  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>

	* rs6000/sysv4.h (ASM_OUTPUT_DWARF_ADDR): Delete unused variable.

From-SVN: r33945
2000-05-16 22:49:01 +00:00
Mark Mitchell
aabb4cd6c0 class.c (copy_virtuals): New function.
* class.c (copy_virtuals): New function.
	(build_primary_table): Use it.
	(build_secondary_vtable): Likewise.
	(modify_vtable_entry): Use NULL_TREE, not integer_zero_node, to
	indicate that no vcall offset is required.
	(add_virtual_function): Likewise.
	(modify_all_vtables): Likewise.
	(dfs_finish_vtbls): Adjust call to build_vtbl_initializer.
	(dfs_accumulate_vtbl_inits): Likewise.
	(build_vtbl_initializer): Make changes to handle construction
	vtables.
	(dfs_build_vcall_offset_vtbl_entries): Likewise.
	(build_rtti_vtbl_entries): Likewise.
	(build_vtable_entries): Handle a NULL vcall_index.

From-SVN: r33944
2000-05-16 22:44:17 +00:00
Franz Sirl
5a1b894d60 sysv4.h (CPP_OS_LINUX_SPEC): Define __unix and __linux according to given options.
2000-05-16  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>

	* sysv4.h (CPP_OS_LINUX_SPEC): Define __unix and __linux according
	to given options.

From-SVN: r33942
2000-05-16 20:53:49 +00:00
Jeffrey A Law
66e85f3856 mn10200.h (PREFERRED_RELOAD_CLASS): Do not prefer DATA_REGS if X has VOIDmode either.
* mn10200.h (PREFERRED_RELOAD_CLASS): Do not prefer DATA_REGS
        if X has VOIDmode either.
        (LIMIT_RELOAD_CLASS): Similarly.

        * mn10200.md (indirect_jump, tablejump): Use "register_operand",
        not "general_operand" to match the processor's capabilities.

From-SVN: r33940
2000-05-16 12:18:32 -06:00
Bruce Korb
d651ee8177 Comments from first commit :-)
From-SVN: r33933
2000-05-16 14:53:06 +00:00
Bruce Korb
1e248c55a7 corrected and rewrote char_macro_* fixes to parse the text with regexes
From-SVN: r33931
2000-05-16 14:23:47 +00:00
Bruce Korb
79589c4d8b added several "test_text" attributes; changed several fixes to use `c_fix = format'
and  re-alphabetized the fixes

From-SVN: r33930
2000-05-16 14:01:34 +00:00
Alexandre Oliva
789f3ce3dd * config/mn10300/mn10300.h (ASM_OUTPUT_DWARF2_ADDR_CONST): Remove.
From-SVN: r33929
2000-05-16 10:49:58 +00:00
Jakub Jelinek
a48df36232 * g++.old-deja/g++.other/eh.C: New test.
From-SVN: r33928
2000-05-16 12:13:02 +02:00
Jeff Law
f5a5839570 Daily bump.
From-SVN: r33927
2000-05-16 01:45:07 -06:00
Richard Henderson
d2f7de5840 toplev.c (rest_of_compilation): Run full jump pass before find_basic_blocks of flow2.
* toplev.c (rest_of_compilation): Run full jump pass before
        find_basic_blocks of flow2.

From-SVN: r33925
2000-05-15 23:31:39 -07:00
Richard Henderson
d781a164c4 jump.c: Fix typos and clarify commentary from last change.
* jump.c: Fix typos and clarify commentary from last change.
        (any_condjump_p): Verify SET_SRC is an IF_THEN_ELSE.
        (safe_to_remove_jump_p): Remove.
        (condjump_label): Use pc_set.

From-SVN: r33924
2000-05-15 23:26:54 -07:00
Richard Henderson
7f9d9ea1ff ifcvt.c (cond_exec_process_insns): Drop USE and CLOBBER insns that get in the way after reload.
* ifcvt.c (cond_exec_process_insns): Drop USE and CLOBBER insns
        that get in the way after reload.
        (cond_exec_process_if_block): Skip a label heading THEN block.

From-SVN: r33923
2000-05-15 23:21:04 -07:00
Richard Henderson
085ce8c6ac varasm.c (output_constant_pool): Abort instead of converting (improperly) deleted labels to zero.
* varasm.c (output_constant_pool): Abort instead of converting
        (improperly) deleted labels to zero.

From-SVN: r33922
2000-05-15 23:11:56 -07:00
Jeff Law
f7af368f25 Update to libgcc copyright exception clause.
From-SVN: r33916
2000-05-15 17:14:17 -06:00
Neil Booth
41e8b1d735 cpplex.c (parse_string2): Update comment.
* cpplex.c (parse_string2): Update comment.
	(cpp_lex_line): No special assertion treatment for '('.
	* cpplib.c (DIRECTIVE_TABLE): Remove SYNTAX_ASSERT.
	* cpplib.h (SYNTAX_ASSERT): Remove.

From-SVN: r33915
2000-05-15 22:44:22 +00:00