Commit Graph

31195 Commits

Author SHA1 Message Date
Mark Mitchell
37ab89b9cf Fix copyright date
From-SVN: r37133
2000-10-29 22:31:16 +00:00
Mark Harig
a50372f5fd Makefile.am: Change logic for include dir options.
2000-10-29   Mark Harig <mharig@landmark.com>

	* src/Makefile.am: Change logic for include dir options.
	* src/Makefile.in: Regenerate.
	* libsupc++/Makefile.am: Ditto.
	* libsupc++/Makefile.in: Regenerate.

From-SVN: r37132
2000-10-29 22:30:28 +00:00
Mark Mitchell
3c97056f54 c_io_libio.cc (basic_file<char>::__basic_file): Don't pass a NULL _IO_wide_data to _IO_no_init when...
* config/c_io_libio.cc (basic_file<char>::__basic_file):
	Don't pass a NULL _IO_wide_data to _IO_no_init when
	_GLIBCPP_USE_WCHAR_T is not defined.
	* config/c_io_libio.h (_IO_codecvt): Don't declare when
	_GLIBCPP_USE_WCHAR_T is not defined.
	* config/c_io_libio_codecvt.c: Don't compile it
	when _GLIBCPP_USE_WCHAR_T is not defined.
	* include/bits/codecvt.h (codecvt<_InternT, _ExternT, __enc_traits):
	Don't define this specialization when _GLIBCPP_USE_WCHAR_T
	is not defined.
	* include/bits/locale_facets.h (<bits/std_cwctype.h>): Don't
	include it when _GLIBCPP_USE_WCHAR_T is not defined.
	* src/codecvt.cc (__enc_traits::_S_max_size): Don't define
	when _GLIBCPP_USE_WCHAR_T is not defined.
	* src/localename.cc (locale::_Impl::_M_construct_collate):
	Don't call wide-character functions when _GLIBCPP_USE_WCHAR_T is
	not defined.
	(locale::_Impl::_M_construct_ctype): Likewise.
	(locale::_Impl::_M_construct_monetary): Likewise.
	(locale::_Impl::_M_construct_numeric): Likewise.
	(locale::_Impl::_M_construct_time): Likewise.
	(locale::_Impl::_M_construct_messages): Likewise.

	* iofopen.c (_IO_new_fopen): Don't define `_IO_wide_data wd'
	if _GLIBCPP_USE_WCHAR_T is not defined.
	* iofwide.c: Don't define codecvt functions when
	_GLIBCPP_USE_WCHAR_T is not defined.
	(_IO_fwide): Don't try to put the stream in wide mode when
	_GLIBCPP_USE_WCHAR_T is not defined.
	* libio.h (_IO_wide_data): Define it as an incomplete struct
	when _GLIBCPP_USE_WCHAR_T is not defined.
	* wfiledoalloc.c: Don't define anything when
	_GLIBCPP_USE_WCHAR_T is not defined.
	* wfileops.c: Likewise.
	* wgenops.c: Likewise.

From-SVN: r37131
2000-10-29 21:52:54 +00:00
Mark Mitchell
f80c00cc55 _G_config.h (_G_USING_THUNKS): Allow overrides from OS-configuration files.
* _G_config.h (_G_USING_THUNKS): Allow overrides from
	OS-configuration files.
	* libioP.h: Test _G_USING_THUNKS with #if, rather than #ifdef.

From-SVN: r37130
2000-10-29 21:21:51 +00:00
Mark Mitchell
9ece5af645 acinclue.m4 (GLIBCPP_ENABLE_ATOMICITY): Handle IRIX.
* acinclue.m4 (GLIBCPP_ENABLE_ATOMICITY): Handle IRIX.
	* aclocal.m4: Regenerated.
	* configure: Likewise.
	* config/os/irix/bits/atomicity.h: New file.
	* config/os/irix/bits/os_defines.h (_POSIX_SOURCE): Undefine.
	(__off_t): Define.
	(__off64_t): Likewise.
	(__ssize_t): Likewise.
	(_G_USING_THUNKS): Define to zero.

From-SVN: r37129
2000-10-29 21:05:07 +00:00
Mark Mitchell
2f974bd2f9 atomicity.h: New file.
* config/os/irix/bits/atomicity.h: New file.
	* config/os/irix/bits/os_defines.h (_POSIX_SOURCE): Undefine.
	(__off_t): Define.
	(__off64_t): Likewise.
	(__ssize_t): Likewise.
	(_G_USING_THUNKS): Define to zero.

From-SVN: r37128
2000-10-29 20:47:00 +00:00
Joseph Myers
526aba2811 toplev.c, [...]: Change comments mentioning C9X to refer to C99 instead.
* toplev.c, flags.h, fold-const.c, real.c, rtl.c,
	fixinc/inclhack.def: Change comments mentioning C9X to refer to
	C99 instead.

From-SVN: r37127
2000-10-29 19:34:53 +00:00
Neil Booth
9f6ef6bcaf defined.c, [...]: New tests.
* gcc.dg/cpp/defined.c, include1.c, paste11.c, skipping.c:
	New tests.
	* gcc.dg/cpp/macsyntx.c: Move test to defined.c.
	* gcc.dg/cpp/mi3.c, mi3.h: New test for over-enthusiastic
	optimisation.

From-SVN: r37126
2000-10-29 17:43:57 +00:00
Joseph Myers
8c7b74b939 invoke.texi: Document that -V will only work for very similar versions of driver and compiler.
* invoke.texi: Document that -V will only work for very similar
	versions of driver and compiler.

From-SVN: r37125
2000-10-29 17:37:50 +00:00
Neil Booth
00c83d4661 macro4.c, macro5.c: New tests.
* gcc.dg/cpp/macro4.c, macro5.c: New tests.
        * mi1.c, mi1c.h: Add null directives to multiple-include test.
        * mi5.c: Test multiple includes work with -C.
        * trigraphs.c: Test ^= version.

From-SVN: r37124
2000-10-29 11:49:09 +00:00
Neil Booth
44ed91a1d6 cppmacro.c (_cpp_create_definition): Optimize the case of a macro defined to itself.
* cppmacro.c (_cpp_create_definition): Optimize the case of
        a macro defined to itself.

From-SVN: r37123
2000-10-29 11:37:18 +00:00
Neil Booth
3542203b30 * cpplex.c (save_comment): Don't store new lines in C++ comments.
From-SVN: r37122
2000-10-29 09:56:00 +00:00
Michael Hayes
6f268adf3b * integrate.c (copy_insn_list): Copy the unchanging flag for calls.
From-SVN: r37121
2000-10-29 09:14:22 +00:00
Jeff Law
2bf9b928a5 Daily bump.
From-SVN: r37120
2000-10-29 01:45:08 -06:00
Geoff Keating
926c56780f cpphash.c (cpp_forall_identifiers): Add context variable for callback routine.
* cpphash.c (cpp_forall_identifiers): Add context variable
	for callback routine.
	* cppmain.c (dump_macro): Update to match cpp_forall_identifiers
	change.
	(main): Call cpp_forall_identifiers with null context.
	* cpplib.h (cpp_forall_identifiers): Update prototype.

	* cppmain.c: Make `parse_in' and `print' static.

From-SVN: r37119
2000-10-29 07:07:20 +00:00
Alan Modra
69f4cc4b9e * c-decl.c (finish_function): Clear c_function_name_declared_p.
From-SVN: r37118
2000-10-28 22:59:58 -07:00
Richard Henderson
ce73761f15 regrename.c (scan_rtx_address): Frob action, not class, when trying to disable optimization.
* regrename.c (scan_rtx_address): Frob action, not class,
        when trying to disable optimization.

From-SVN: r37117
2000-10-28 22:41:44 -07:00
Bryce McKinlay
3a73757880 AbstractCollection.java (addAll): Use size() instead of hasNext() in iterator loop.
2000-10-29  Bryce McKinlay  <bryce@albatross.co.nz>

	* java/util/AbstractCollection.java (addAll): Use size() instead of
	hasNext() in iterator loop.
	(clear): Ditto.
	(contains): Ditto. Simplify loop.
	(containsAll): Ditto.
	(remove): Ditto.
	(removeAll): Ditto.
	(retainAll): Ditto.
	(toArray): Ditto.
	(toString): Ditto. Use string concatenation operators, not
	StringBuffer.
	* java/util/AbstractList.java (addAll): Use size() instead of
	hasNext() in iterator loop.
	(equals): Ditto.
	(hashCode): Ditto.
	(indexOf): Ditto. Don't take null check outside of the loop.
	(iterator): Return an AbstractListItr instead of anonymous class.
	(lastIndexOf): Use a for loop bounded by size() instead of
	hasPrevious() in iterator loop.
	(listIterator): Return an AbstractListItr.
	(removeRange): Remove bounds checking code and docs.
	(AbstractListItr): New inner class. Code moved here from
	listIterator().
	(SubList.iterator): Removed. Use default implementation from
	AbstractList instead.
	(SubList.listIterator): As above.
	* java/util/AbstractMap.java (clear): Use a for loop bounded by size()
	instead of hasNext() in iterator loop.
	(containsValue): Ditto.
	(equals): Ditto.
	(get): Ditto.
	(put): Ditto.
	(putAll): Ditto.
	(remove): Ditto.
	(toString): Ditto. Use string concatenation operators, not
	StringBuffer.
	* java/util/AbstractSequentialList.java (addAll): Use a for loop
	bounded by size() instead of hasNext() in iterator loop.
	* java/util/AbstractSet.java (hashCode): Don't catch exception as
	part of normal execution flow. Do an explicit null check instead.
	* java/util/ArrayList.java (_iSize): Rename to `size'.
	(_arData): Rename to `data'.
	(get): Check lower bounds also. Simplify IndexOutOfBoundsException
	message.
	(remove): Ditto.
	(removeRange): Make protected. Don't check bounds.
	(add): Check lower bounds also. Simplify IndexOutOfBoundsException
	message.
	(addAll (Collection)): Use a size-bounded for loop instead of hasNext()
	check.
	(addAll (int, Collection)): Check lower bounds. Simplify exception
	string.
	(clone): Clone the data array too.
	(indexOf): Inline doesEqual().
	(lastIndexOf): Ditto.
	(clear): Don't set array data to null.
	(set): Check lower bounds. Simplify exception string.
	(toArray): Correct comment.
	(trimToSize): Don't update modCount, this is not a structural change.
	Add comment.

	* java/util/BitSet.java: Merged with classpath, new JDK 1.2 methods
	implemented.
	(toString): Declare `bit' as long, not int.
	(data): Made package-private, not private.

From-SVN: r37116
2000-10-29 05:06:10 +00:00
Bryce McKinlay
e2d7960734 Re-indent in preparation for diff.
From-SVN: r37115
2000-10-29 04:46:45 +00:00
Bryce McKinlay
db50e427f6 Re-indent in preparation for diff.
From-SVN: r37114
2000-10-29 04:44:10 +00:00
Mark Mitchell
7d3af72b0a New test
From-SVN: r37113
2000-10-29 02:30:21 +00:00
Mark Mitchell
2c21b2473c c-semantics.c (make_rtl_for_local_static): Don't clobber DECL_ASSEMBLER_NAME.
* c-semantics.c (make_rtl_for_local_static): Don't clobber
	DECL_ASSEMBLER_NAME.

From-SVN: r37112
2000-10-29 02:26:16 +00:00
Joseph Myers
8763704d9b configure.in: Determine and substitute gcc_version_full.
* configure.in: Determine and substitute gcc_version_full.
	* configure: Regenerate.
	* gccbug.in: Use it to give full version.  Don't allow
	confidential PRs.

From-SVN: r37111
2000-10-28 22:44:52 +01:00
Richard Henderson
76b0dc5ef2 recog.c (split_all_insns): Run cleanup_subreg_operands after reload.
* recog.c (split_all_insns): Run cleanup_subreg_operands
        after reload.

From-SVN: r37110
2000-10-28 14:43:29 -07:00
Richard Henderson
85941a0abc regrename.c (regrename_optimize): Verify that all registers of a multiple register mode are available.
* regrename.c (regrename_optimize): Verify that all registers of
        a multiple register mode are available.
        (scan_rtx_address): Accept the mode of the address; all callers
        changed.

From-SVN: r37109
2000-10-28 14:41:24 -07:00
Richard Henderson
7b03adc677 * cpplib.c (run_directive): Fix prototype.
From-SVN: r37108
2000-10-28 14:40:43 -07:00
Mark Mitchell
930cd7963b pt.c (instantiate_decl): Always instantiate static data members initialized in-class.
* pt.c (instantiate_decl): Always instantiate static data members
	initialized in-class.

From-SVN: r37107
2000-10-28 21:37:21 +00:00
Mark Mitchell
cea1f697a4 string-inst.cc (basic_string<C>::npos): Explicitly instantiate it.
* src/string-inst.cc (basic_string<C>::npos): Explicitly
	instantiate it.

From-SVN: r37106
2000-10-28 21:28:44 +00:00
Bernd Schmidt
55d8cb78ce Use dynamic branch prediction hint in more cases.
From-SVN: r37105
2000-10-28 19:42:48 +00:00
Bernd Schmidt
005f39ceb2 Better RTX_COSTS for ia64.
From-SVN: r37104
2000-10-28 19:39:58 +00:00
Bernd Schmidt
4c3a264944 Never set reload_override_in for optional reloads.
From-SVN: r37103
2000-10-28 19:36:04 +00:00
Bernd Schmidt
69add2a8a5 Fix computation of goal_alternative_matched
From-SVN: r37102
2000-10-28 19:33:09 +00:00
Neil Booth
66cb3475e4 *** empty log message ***
From-SVN: r37101
2000-10-28 18:10:41 +00:00
Neil Booth
e7f7ca12e2 *** empty log message ***
From-SVN: r37100
2000-10-28 18:02:28 +00:00
Neil Booth
74f215d7e0 19960224-2.c, [...]: Update tests for new diagnostic messages.
* gcc.dg/cpp/19960224-2.c, 20000625-2.c, cxxcom2.c, directiv.c,
	endif.c, if-4.c, if-5.c, if-mop.c, macsyntx.c, paste2.c, paste6.c,
	paste8.c, redef2.c, strify2.c, strp1.c, tr-warn1.c, tr-warn3.c,
	tr-warn6.c, undef1.c, undef2.c, widestr1.c: Update tests for
	new diagnostic messages.

	* gcc.dg/cpp/macro3.c: New tests.

From-SVN: r37099
2000-10-28 18:01:40 +00:00
Neil Booth
93c80368d9 New macro expander.
2000-10-28  Neil Booth  <neilb@earthling.net>

	New macro expander.

	* cpplib.c (struct answer): New.
	(struct if_stack): Use cpp_lexer_pos rather than line and col.
	Rename cmacro mi_cmacro.
	(struct directive, KANDR, STDC89, EXTENSION, COND, IF_COND, INCL,
	IN_I): New directive and flags.
	(skip_rest_of_line, check_eol, run_directive, glue_header_name,
	parse_answer, parse_assertion, find_answer): New functions.
	(parse_ifdef, detect_if_not_defined, validate_else): Remove.
	(lex_macro_node): New function to replace parse_ifdef and
	get_define_node.

	(_cpp_handle_directive): New function, combines _cpp_check_directive
	and _cpp_check_linemarker.

	(do_define, do_undef, parse_include, do_include, do_import,
	do_include_next, read_line_number, do_line, do_ident, do_pragma,
	do_pragma_once, do_pragma_poison, do_pragma_dependency):
	Update for new token getting interface.

	(do_ifdef, do_ifndef, do_if, do_else, do_endif, push_conditional)
	: Update for new multiple-include optimisation technique.
	(do_elif): Don't forget to invalidate controlling macros.

	(unwind_if_stack, cpp_defined, cpp_push_buffer, cpp_pop_buffer): Update.
	(parse_assertion, parse_answer, find_answer, _cpp_test_assertion):
	Functions to handle assertions with the new token interface.
	(do_assert, do_unassert): Use them.

	(cpp_define, _cpp_define_builtin, cpp_undef, cpp_assert, cpp_unassert):
	Use run_directive.

	(_cpp_init_stacks): Register directive names.  Don't register special
	nodes.

	* cpperror.c (print_containing_files, _cpp_begin_message): Update to
	new position recording regime.
	(cpp_ice, cpp_fatal, cpp_error, cpp_error_with_line, cpp_warning,
	cpp_warning_with_line, cpp_pedwarn, cpp_pedwarn_with_line,
	cpp_pedwarn_with_file_and_line): Update for _cpp_begin_message changes.
	(cpp_type2name): Move to cpplex.c.

	* cppexp.c (parse_charconst): spec_nodes is no longer a pointer.
	(parse_defined): Update to handle new multiple include optimisation
	method.  Remove poisoned identifier warning.
	(parse_assertion, TYPE_NAME): Delete.
	(lex): Update for multiple include optimisation, removal of
	CPP_DEFINED, to use _cpp_test_assertion for assertions and
	cpp_token_as_text.
	(_cpp_parse_expr): Update for MI optimisation, and to use op_as_text.
	(op_as_text): New function, to wrap cpp_token_as_text.

	* cppfiles.c (stack_include_file, _cpp_pop_file_buffer):
	Update for MI optimisation.
	(_cpp_execute_include): Take a token rather than 3 arguments.  Fix
	segfault on diagnostic.
	(_cpp_compare_file_date): Take a token rather than 3 args.
	(cpp_read_file): Work correctly for zero-length files.

	* cpphash.c (_cpp_init_macros, _cpp_cleanup_macros): Rename
	_cpp_init_hashtable and _cpp_cleanup_hashtable.
	(cpp_lookup): Place identifiers at front of identifier pool
	for _cpp_lookup_with_hash.
	(_cpp_lookup_with_hash): Require identifiers to be at the front of
	the identifier pool.  Commit the memory if not already in the
	hash table.

	* cppinit.c (cpp_reader_init): Move cpp_init_completed test to top.
	Initialise various members of cpp_reader, memory pools, and the
	special nodes.
	(cpp_printer_init): Delete.
	(cpp_cleanup): Update.
	(struct builtin, builtin_array, initialize_builtins): Update for new
	hashnode definition and builtin handling.
	(cpp_start_read, cpp_finish): Don't take or initialise a
	printer.  Update.

	* cpplib.h (cpp_printer, cpp_toklist, CPP_DEFINED, BOL,
	PASTED, VAR_ARGS, BEG_OF_FILE, IN_DIRECTIVE, KNOWN_DIRECTIVE,
	T_VOID, T_SPECLINE, T_DATE, T_FILE, T_BASE_FILE, T_INCLUDE_LEVEL,
	T_TIME, T_STDC, T_OPERATOR, T_POISON, T_MACRO, T_ASSERTION): Delete.
	(struct cpp_pool, struct cpp_macro, struct cpp_lexer_pos,
	struct cpp_lookahead, CPP_DHASH, enum mi_state, enum mi_ind,
	NO_EXPAND, VARARGS_FIRST, struct cpp_token_with_pos,
	struct toklist, struct cpp_context, struct specnodes,
	TOKEN_LOOKAHEAD, TOKEN_BUFFSIZE, NODE_OPERATOR, NODE_POISONED,
	NODE_BUILTIN, NODE_DIAGNOSTIC, NT_VOID, NT_MACRO, NT_ASSERTION,
	enum builtin_type, cpp_can_paste): New.
	(struct cpp_token): Delete line and col members.
	(struct cpp_buffer): New member output_lineno.
	(struct lexer_state): Delete indented, in_lex_line, seen_dot.
	Add va_args_ok, poisoned_ok, prevent_expansion, parsing_args.
	(struct cpp_reader): New members lexer_pos, macro_pos, directive_pos,
	ident_pool, temp_string_pool, macro_pool, argument_pool, string_pool,
	base_context, context, directive, mi_state, mi_if_not_defined,
	mi_lexed, mi_cmacro, mi_ind_cmacro, la_read, la_write, la_unused,
	mlstring_pos, macro_buffer, macro_buffer_len.
	Delete members mls_line, mls_column, token_list, potential_control_macro,
	temp_tokens, temp_cap, temp_alloced, temp_used, first_directive_token,
	context_cap, cur_context, no_expand_level, paste_level, contexts, args,
	save_parameter_spellings, need_newline, .
	Change type of date, time and spec_nodes members.
	Change prototypes for include and ident callbacks.
	(struct cpp_hashnode): Change type of name.  Remove union members
	expansion and code.  Add members macro, operator and builtin.

	(cpp_token_len, cpp_token_as_text, cpp_spell_token, cpp_start_read,
	cpp_finish, cpp_avoid_paste, cpp_get_token, cpp_get_line,
	cpp_get_output_line, cpp_macro_definition, cpp_start_lookahead,
	cpp_stop_lookahead): New prototypes.
	(cpp_printer_init, cpp_dump_definition): Delete prototypes.

	(U_CHAR, U, ustrcmp, ustrncmp, ustrlen, uxstrdup, ustrchr, ufputs):
	Move from cpphash.h.

	* cpphash.h (U_CHAR, U, ustrcmp, ustrncmp, ustrlen, uxstrdup, ustrchr,
	ufputs): Move to cpplib.h.
	(enum spell_type, struct token_spelling, _cpp_token_spellings, TOKEN_SPELL,
	TOKEN_NAME, struct answer, FREE_ANSWER, KANDR, STDC89, EXTENSION,
	COND, EXPAND, INCL, COMMENTS, IN_I, struct directive, directive_handler,
	struct spec_nodes, _cpp_digraph_spellings, _cpp_free_temp_tokens,
	_cpp_init_input_buffer, _cpp_grow_token_buffer, _cpp_init_toklist,
	_cpp_clear_toklist, _cpp_expand_token_space, _cpp_expand_name_space,
	_cpp_equiv_tokens, _cpp_equiv_toklists, _cpp_process_directive,
	_cpp_run_directive, _cpp_get_line, _cpp_get_raw_token, _cpp_glue_header_name,
	_cpp_can_paste, _cpp_check_directive, _cpp_check_linemarker,
	_cpp_parse_assertion, _cpp_find_answer): Delete.
	(VALID_SIGN, ALIGN, POOL_FRONT, POOL_LIMIT, POOL_BASE, POOL_SIZE,
	POOL_USED, POOL_COMMIT, struct cpp_chunk, _cpp_lex_token, _cpp_init_pool,
	_cpp_free_pool, _cpp_pool_reserve, _cpp_pool_alloc, _cpp_next_chunk,
	_cpp_lock_pool, _cpp_unlock_pool, _cpp_test_assertion,
	_cpp_handle_directive, DSC): New.
	(struct include_file): New member defined.

	(DO_NOT_REREAD, _cpp_begin_message, _cpp_execute_include,
	_cpp_compare_file_date): Update.
	(_cpp_pop_context, _cpp_get_token, _cpp_free_lookaheads, _cpp_push_token): New.
	(_cpp_init_macros, _cpp_cleanup_macros): Rename to _cpp_init_hashtable,
	_cpp_cleanup_hashtable.

	* Makefile.in: Remove cppoutput.c.

	* cppoutput.c: Delete

	* fixheader.c (read_scan_file): Update for new cpp_get_token
	prototype.
	(recognized_function): New argument LINE.

	* scan-decls.c (skip_to_closing_brace, scan_decls): Update for
	new cpp_get_token prototype.

	* scan.h (recognized_function): Update prototype.

	* po/POTFILES.in: Remove cppoutput.c.

From-SVN: r37098
2000-10-28 17:59:06 +00:00
Jeff Law
de48b52da8 Daily bump.
From-SVN: r37097
2000-10-28 01:45:08 -06:00
Mark Mitchell
229a2e659e c-typeck.c (check_init_type_bitfields): Remove.
* c-typeck.c (check_init_type_bitfields): Remove.
	(constructor_incremental): Likewise.
	(struct constructor_stack): Remove incremental bit.
	(struct initializer_stack): Likewise.
	(start_init): Don't play with constructor_incremental.
	(finish_init): Likewise.
	(really_start_incremental_init): Likewise.
	(push_init_level): Likewise.
	(pop_init_level): Likewise.
	(output_init_level): Likewise.
	(output_pending_init_elements): Likewise.

From-SVN: r37096
2000-10-28 00:18:39 +00:00
Mike Coleman
63eb126948 c-pragma.c (handle_pragma_pack): Initialize align to -1.
2000-10-21  Mike Coleman  <mcoleman2@kc.rr.com>

	* c-pragma.c (handle_pragma_pack): Initialize align to -1.
	Improve error messages.  Correct parsing of
	#pragma pack(pop [,id]).  Do not check the user-supplied
	alignment if we're popping.

	* gcc.dg/pack-test-1.c: New test case.
	* gcc.dg/pack-test-2.c: New test case.
	* gcc.dg/pack-test-1.h: New file.

From-SVN: r37095
2000-10-28 00:04:11 +00:00
Neil Booth
ae2eceaad2 * cpp.texi: Update.
From-SVN: r37094
2000-10-27 23:50:15 +00:00
Kelley Cook
04e149abb6 * invoke.texi: Document -mintel-syntax
From-SVN: r37093
2000-10-27 16:40:00 -07:00
Richard Henderson
2b2a8f1fcd invoke.texi: Document -frename-registers.
* invoke.texi: Document -frename-registers.  Add it to -O3.
        * toplev.c (rest_of_compilation): Run regrename before ifcvt2.
        (enum dump_file_index, dump_file): Update order.
        (main): Set flag_rename_registers at -O3.

From-SVN: r37092
2000-10-27 14:56:01 -07:00
Richard Henderson
93c89ab308 alpha.h (enum reg_class): Add PV_REG.
* config/alpha/alpha.h (enum reg_class): Add PV_REG.
        (REG_CLASS_NAMES, REG_CLASS_CONTENTS, REGNO_REG_CLASS): Update.
        (REG_CLASS_FROM_LETTER): Assign it to 'c'.
        * config/alpha/alpha.md (call_osf_1): Use it.
        (call_value_osf_1): Likewise.

From-SVN: r37091
2000-10-27 14:30:52 -07:00
Richard Henderson
10c9f189d4 ia64.c: Revert 10-23 patch.
* config/ia64/ia64.c: Revert 10-23 patch.
        (ia64_hard_regno_rename_ok): New.
        * config/ia64/ia64-protos.h: Declare it.
        * config/ia64/ia64.h (HARD_REGNO_RENAME_OK): Use it.

From-SVN: r37090
2000-10-27 14:27:10 -07:00
Bernd Schmidt
541f7d5629 regrename.c: Rewrite to handle multi-register modes and cond_exec instructions.
* regrename.c: Rewrite to handle multi-register modes and
        cond_exec instructions.
        * Makefile.in (regrename.o): Update dependancies.
        * recog.h (struct operand_alternative): Add is_address.
        * recog.c (preprocess_constraints) [case 'p']: Set it.

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

From-SVN: r37089
2000-10-27 13:58:57 -07:00
Zack Weinberg
b8dad04b68 configure.in: If not NO_MINUS_C_MINUS_O, substitute OUTPUT_OPTION with '-o $@'.
* configure.in: If not NO_MINUS_C_MINUS_O, substitute
	OUTPUT_OPTION with '-o $@'.  Make zlibdir, zlibinc relative to
	top level.  Kill oldstyle_subdirs.  Do not include
	$srcdir/$s/Makefile.in in all_lang_makefiles, but do include
	$outputs.  Do not run configure.lang from config.status.
	Rearrange warning-flag logic to correspond to what the
	makefile wants.  Put special vax stage1 options in
	@stage1_flags@ not @stage1_warn_cflags@.  Don't do anything
	with extra_c_objs, extra_cxx_objs, or extra_cpp_objs.
	(--enable-c-cpplib): AC_SUBST(maybe_cpplib) with "libcpp.a" if
	switch is given, nothing otherwise.
	* configure.lang: Delete.

        * Makefile.in: Expunge all traces of extra_c_objs,
        extra_cxx_objs, and extra_cpp_objs.  Set MAYBE_CPPLIB from
        @maybe_cpplib@. Add $(MAYBE_CPPLIB) to C_AND_OBJC_OBJS.  Set
        warning options via a three level scheme so that -pedantic and
        -Wtraditional are not used for non-C front ends: LOOSE_WARN,
        STRICT1_WARN, STRICT2_WARN -> $(@D)-warn, GCC_WARN_CFLAGS ->
        WARN_CFLAGS.  Distinguish STAGE1_CFLAGS from BOOT_CFLAGS.
	Add -I$(@D) and -I$(srcdir)/$(@D) to INCLUDES.
	Set OUTPUT_OPTION, ZLIB, ZLIBINC.  Do not set P,
        LANG_FLAGS_TO_PASS.  Add OUTPUT_OPTION to all object-file
        generation rules.  Wrap all rules that change the current
        directory in parentheses; pmake doesn't spawn a new shell for
        each command.  Expunge all references to $(P).  When one
        command depends on another and they're run all at once, use &&
        to separate them, not ;.  Add libgcc_s$(SHLIB_EXT) to files
        deleted on make clean.  Force OUTPUT_OPTION='-o $@' in stage2
        and beyond.

	* cp/Make-lang.in, f/Make-lang.in, java/Make-lang.in,
	objc/Make-lang.in: Wrap all rules that change the current
	directory in parentheses.  Expunge all references to $(P).
	When one command depends on another and they're run all at
	once, use && to separate them, not ;.  Add OUTPUT_OPTION to
	all object-file generation rules.  Delete obsolete variables.
	Move all build rules here from the corresponding Makefile.in and
	adapt to the new environment.

	* cp/Makefile.in, f/Makefile.in, java/Makefile.in, objc/Makefile.in:
	Delete.

	* cp/config-lang.in, f/config-lang.in, java/config-lang.in:
	Delete outputs= line.

From-SVN: r37088
2000-10-27 20:22:28 +00:00
Jakub Jelinek
fadb729c6d calls.c (expand_call): If sibcall_failure is set during pass 1, clear tail_call_insns as well.
* calls.c (expand_call): If sibcall_failure is set during pass 1,
	clear tail_call_insns as well.

	* g++.old-deja/g++.other/eh2.C: New test.

From-SVN: r37087
2000-10-27 21:49:53 +02:00
Nick Clifton
254bb25636 Add prototype to prevent compile time warning
From-SVN: r37086
2000-10-27 18:40:59 +00:00
Bernd Schmidt
ef3809cbd8 New testcase.
From-SVN: r37084
2000-10-27 12:52:16 +00:00
Benjamin Kosnik
e7140677cc [multiple changes]
2000-10-26  Benjamin Kosnik  <bkoz@redhat.com>

	* include/c/bits/std_cmath.h: Fix double declarations in namespace std.

	Clean up naming, consistency in "C" library autoconf testing.
	* acinclude.m4 (GLIBCPP_CHECK_CTYPE): For consistency, change to
	GLIBCPP_CHECK_CTYPE_SUPPORT.
	(GLIBCPP_CHECK_STDLIB_SUPPORT): Add.
	* aclocal.m4: Regenerate.
	* configure.in: And here.
	Add call to GLIBCPP_CHECK_STDLIB_SUPPORT.
	* configure: Regenerate.

2000-10-26  David Edelsohn  <edelsohn@gnu.org>

	* acinclude.m4 (GLIBCPP_CHECK_STDLIB_DECL_AND_LINKAGE_2): New macro.
	(GLIBCPP_CHECK_MATH_SUPPORT): Use it to test for strtold.

From-SVN: r37083
2000-10-27 12:31:37 +00:00