Commit Graph

33214 Commits

Author SHA1 Message Date
Joseph Myers
1312c143f8 c-common.c: Move format checking code to ...
* c-common.c: Move format checking code to ...
	* c-format.c: ... here.  New file.  Reorder some functions and
	declarations.
	(decl_handle_format_attribute, decl_handle_format_arg_attribute):
	New functions.
	* c-common.h (decl_handle_format_attribute,
	decl_handle_format_arg_attribute): Declare.
	* Makefile.in (C_AND_OBJC_OBJS): Add c-format.o.
	(c-common.o): Adjust dependencies.
	(c-format.o): New list of dependencies.

cp:
	* Make-lang.in (CXX_C_OBJS): Add c-format.o.

From-SVN: r38998
2001-01-13 23:30:02 +00:00
Joseph Myers
6f6684e699 * gcc.c-torture/compile/20010113-1.c: New test.
From-SVN: r38997
2001-01-13 23:27:06 +00:00
Jakub Jelinek
9e2adb2a1c unroll.c (loop_iterations): If we cannot prove iteration variable is set once in each iteration, punt.
* unroll.c (loop_iterations): If we cannot prove iteration variable
	is set once in each iteration, punt.

From-SVN: r38996
2001-01-13 22:54:10 +01:00
Denis Chertykov
63eaee7147 avr.md ("strlenhi"): Remove clobber of input address.
* config/avr/avr.md ("strlenhi"): Remove clobber of input address.
	(*strlenhi): Remove clobber (which was buggy) of output address.

From-SVN: r38995
2001-01-14 00:42:07 +03:00
Jakub Jelinek
b874b32db8 * gcc.c-torture/compile/20001212-1.c: New test.
From-SVN: r38994
2001-01-13 22:35:00 +01:00
Joseph Myers
4bc1997b1a gcc_update: Add gcc/gcc.1 to generated files.
contrib:
	* gcc_update: Add gcc/gcc.1 to generated files.
	* texi2pod.pl: Handle @r and @gccoptlist.  Handle @gol.  Handle
	discarding to end of sentence with @xref where the sentence has an
	interior "." in markup, and handle discarding parentheses around
	such a sentence.

gcc:
	* Makefile.in (generated-manpages): Add gcc.1
	($(srcdir)/gcc.1): New target.
	(maintainer-clean): Delete $(srcdir)/gcc.1.
	* gcc.texi: Add macros @gccoptlist and @gol.
	* invoke.texi: Include option summary in manpage.  Mark up option
	summary with @gccoptlist and @gol.  Use @r in one place where
	appropriate.
	* texinfo.tex: Update to version 2000-12-11.07 from ftp.gnu.org.
	* gcc.1: Generate from invoke.texi.

gcc/cp:
	* g++.1: Change to be ".so man1/gcc.1".

From-SVN: r38993
2001-01-13 21:17:13 +00:00
Richard Henderson
130fadbb36 ggc-page.c (USING_MALLOC_PAGE_GROUPS): New; set if not using mmap.
* ggc-page.c (USING_MALLOC_PAGE_GROUPS): New; set if not using mmap.
        (struct page_entry): Add group member.
        (struct page_group): New.
        (struct globals): Add page_groups member.
        (alloc_anon): Only define for using mmap; remove valloc call.
        (page_group_index): New.
        (set_page_group_in_use): New.
        (clear_page_group_in_use): New.
        (alloc_page): Implement USING_MALLOC_PAGE_GROUPS.
        (free_page, release_pages): Likewise.
        * configure.in (with-gc): Default to ggc-page always.

From-SVN: r38992
2001-01-13 12:36:56 -08:00
Alexandre Oliva
086fef9e5a reload1.c (replace_pseudos_in_call_usage): Use reg_equiv_constant and reg_equiv_address, and don't try regno_reg_rtx first.
* reload1.c (replace_pseudos_in_call_usage): Use
reg_equiv_constant and reg_equiv_address, and don't try
regno_reg_rtx first.

From-SVN: r38991
2001-01-13 20:18:20 +00:00
Richard Henderson
ca79429a53 ggc-page.c (alloc_page): Round up allocation size to one page.
* ggc-page.c (alloc_page): Round up allocation size to one page.
        Set e->order on extra pages.

From-SVN: r38990
2001-01-13 11:58:43 -08:00
Richard Henderson
2cec75a1bd genrecog.c (nodes_identical): Expand commentary.
* genrecog.c (nodes_identical): Expand commentary.
        (write_switch): Watch out for identical nodes.

From-SVN: r38989
2001-01-13 11:31:07 -08:00
Neil Booth
fabfd8029d widestr1.c: Update.
* gcc.dg/cpp/widestr1.c: Update.
        * gcc.dg/cpp/prag-imp.c: Remove.

From-SVN: r38988
2001-01-13 18:40:49 +00:00
Neil Booth
d6d52dd655 cppfiles.c (_cpp_fake_include): New function.
* cppfiles.c (_cpp_fake_include): New function.
        * cpphash.h (_cpp_fake_include): New.
        * cpplib.c (do_line): Call _cpp_fake_include when entering
        header files in preprocessed input.
        * cppmain.c (cb_pragma_implementation): Remove handling.
	(setup_callbacks): Don't register pragmas.

From-SVN: r38987
2001-01-13 18:39:26 +00:00
Neil Booth
ccd96f0ad8 * extend.texi: Update for CPP.
From-SVN: r38986
2001-01-13 16:59:42 +00:00
Andreas Jaeger
174fa2c48b reload1.c: Add prototype for replace_pseudos_in_call_usage.
* reload1.c: Add prototype for replace_pseudos_in_call_usage.

	* regmove.c: Add prototype for replace_in_call_usage.

From-SVN: r38985
2001-01-13 15:43:27 +01:00
Neil Booth
8121d2c384 cpplib.h (cpp_pool, [...]): Move to cpphash.h (struct macro_args): Delete.
* cpplib.h (cpp_pool, mi_state, mi_ind, struct cpp_macro,
        struct cpp_chunk, struct htab, struct toklist,
        struct cpp_context, CPP_STACK_MAX, struct lexer_state,
        struct spec_nodes, struct cpp_reader, CPP_OPTION, CPP_BUFFER,
        CPP_BUF_LINE, CPP_BUF_COL, CPP_BUF_COLUMN, U, ustrcmp, ustrncmp,
        ustrlen, uxstrdup, ustrchr, ufputs): Move to cpphash.h
        (struct macro_args): Delete.
        * cpphash.h: See above.

From-SVN: r38984
2001-01-13 14:32:59 +00:00
Neil Booth
620ef26c8c cppmain.c (struct printer): Remove no_line_dirs.
* cppmain.c (struct printer): Remove no_line_dirs.
        (options, cb): New.
        (main, setup_callbacks, scan_buffer, printer_init, cb_define)
        : Use options rather than CPP_OPTION.
        (setup_callbacks): Use cb rather than pfile->cb.
        (main): No need to check for a buffer.  Use cpp_errors.
        (printer_init): Don't set no_line_dirs.
        (maybe_print_line): Use options not no_line_dirs.
        (cb_file_change): Don't call print_line if -P.

From-SVN: r38983
2001-01-13 14:24:34 +00:00
Neil Booth
b61c5ed005 c-lex.c (init_c_lex): Use cpp_get_callbacks to set callbacks.
* c-lex.c (init_c_lex): Use cpp_get_callbacks to set
        callbacks.
        * c-parse.in (finish_parse): Use cpp_errors.
        (__yylex): Use return value of cpp_pop_buffer.
        * cp/lex.c (finish_parse): Use cpp_errors.
        * cp/spew.c (read_token): Use return value of cpp_pop_buffer.

From-SVN: r38982
2001-01-13 14:23:04 +00:00
Denis Chertykov
f14269a00c * README.AVR: URLs corrected.
From-SVN: r38981
2001-01-13 17:07:43 +03:00
Richard Kenner
757e6639b9 c-decl.c (start_function): Don't warn if old prototype is builtin that's not in C's namespace.
* c-decl.c (start_function): Don't warn if old prototype is builtin
	that's not in C's namespace.
	* libgcc2.c (_varargs): Update definition of __builtin_saveregs.
	(_bb): Add prototype for ctime.
	* config/alpha/osf.h (TRANSFER_FROM_TRAMPOLINE): Add missing protos.

From-SVN: r38980
2001-01-13 07:34:02 -05:00
Jan Hubicka
9e7adcb3f0 i386.c (ix86_fp_comparison_arithmetics_cost, [...]): New functions.
* i386.c (ix86_fp_comparison_arithmetics_cost,
	ix86_fp_comparison_fcomi_cost, ix86_fp_comparison_sahf_cost,
	ix86_fp_comparison_cost): New functions.
	(ix86_expand_fp_compare): Use the costs to choose best bethod; add
	two new parameters SECOND_TEST and BYPASS_TEST; allow generating
	two-branch sequences; make static.
	(ix86_use_fcomi_compare): Do decision according to the costs.
	(split_fp_branch): New.
	* i386.md (compare-and-branch patterns): Use split_fp_branch.
	* i386-protos.h (ix86_expand_fp_compare): Remove
	(ix86_split_fp_branch): Declare.

	* i386.h (PREDICATE_CODES): Update codes from fcmov_comparison_operand
	and ix86_comparison_operator.

	* i386.c (ix86_prepare_fp_compare_args): Try to rearange the comparison
	to make it cheaper.

	* i386.c (put_condition_code): Output properly the unordered/ordered
	compares in fp case.
	(ix86_expand_fp_movcc): Use ix86_expand_compare infrastructure.

	* tm.texi (REVERSE_CONDITION): Document.
	* i386.c (ix86_fp_compare_mode): Simplify; return always CCFPmode
	in -ffast-math mode.
	* i386.h (REVERSE_CONDITION, REVERSIBLE_CC_MODE): New macro.

From-SVN: r38979
2001-01-13 08:57:29 +00:00
Jeff Law
9323f9693a Daily bump.
From-SVN: r38978
2001-01-13 01:45:10 -07:00
Alexandre Oliva
89d4bc3599 * config/sh/sh.c (sh_expand_epilogue): Use PR explicitly.
From-SVN: r38977
2001-01-13 08:09:48 +00:00
Alexandre Oliva
b90dbca6f3 sh.c (sh_expand_prologue): Let the second toggle_sz be optimized away.
* config/sh/sh.c (sh_expand_prologue): Let the second toggle_sz be
optimized away.

From-SVN: r38976
2001-01-13 07:21:35 +00:00
Alexandre Oliva
39f12501d5 Don't omit century in list of copyright years
From-SVN: r38975
2001-01-13 05:11:58 +00:00
Alexandre Oliva
35ef288030 * config/sh/sh.c (mova_p): Fix test for mova_const.
From-SVN: r38974
2001-01-13 03:30:38 +00:00
Neil Booth
24538dcbec * fix-header.c (read_scan_file): s/pfile/scan_in/. Sorry!
From-SVN: r38973
2001-01-13 01:13:35 +00:00
Neil Booth
f85c14eed1 fix-header.c (read_scan_file): Use cpp_get_callbacks and cpp_get_options rather than dereferencing pfile and...
* fix-header.c (read_scan_file): Use cpp_get_callbacks and
        cpp_get_options rather than dereferencing pfile and using
        CPP_OPTION.
        * scan-decls.c (scan_decls): Use return value of
        cpp_pop_buffer rather than CPP_BUFFER.

From-SVN: r38972
2001-01-13 01:07:32 +00:00
Neil Booth
7e96d768fe cppinit.c (cpp_handle_option): help_only is now part of the cpp_options structure.
* cppinit.c (cpp_handle_option): help_only is now part of the
        cpp_options structure.
        * cpplib.c (cpp_errors, cpp_get_options, cpp_get_callbacks,
        cpp_set_callbacks): New functions.
        * cpplib.h (cpp_callbacks): Break out as a named structure.
        (cpp_options): Move help_only here from cpp_reader.
        (CPP_FATAL_ERRORS): Update to use cpp_errors.
        (cpp_errors, cpp_get_options, cpp_get_callbacks,
        cpp_set_callbacks): New prototypes.
        * cppmain.c (main): Update for help_only.

From-SVN: r38971
2001-01-13 01:00:01 +00:00
Joseph Myers
23de1fbfd0 Makefile.in (info, [...]): Also build and remove and install and uninstall c-tree.info and cppinternals.info.
* Makefile.in (info, maintainer-clean, install-info, uninstall):
	Also build and remove and install and uninstall c-tree.info and
	cppinternals.info.
	($(srcdir)/gcc.info): Add dependency on contrib.texi.
	($(srcdir)/cppinternals.info): New target.
	* c-tree.texi: Change file name used when makeinfo used without -o
	from ir.info to c-tree.info.  Add info directory entry.
	* cppinternals.texi: Add info directory entry.
	* .cvsignore: Update.

cp:
	* Make-lang.in (c++.info, c++.install-info): Build and install g++
	internals info.
	(c++.uninstall, c++.maintainer-clean): Remove g++ internals info.
	($(srcdir)/cp/g++int.info): New target.
	* gxxint.texi: Add info directory entry.  Use @@ in email address.
	* .cvsignore: Update.

From-SVN: r38970
2001-01-13 00:24:39 +00:00
Tom Tromey
706c0c1156 Removed bogus ChangeLog entry
From-SVN: r38969
2001-01-13 00:03:28 +00:00
Jakub Jelinek
8b6a5902b5 c-typeck.c (store_init_value): Don't require constant initializer elements with -pedantic -std=c99.
* c-typeck.c (store_init_value): Don't require constant initializer
	elements with -pedantic -std=c99.
	(digest_init): Change error about non-constant initializer elements
	into pedwarn.
	(constructor_range_end): Remove.
	(constructor_incremental, designator_depth,
	designator_errorneous): New variables.
	(struct constructor_stack): Remove range_end, add incremental.
	(struct constructor_range_stack, constructor_range_stack): New.
	(struct initializer_stack): Add constructor_range_stack.
	(finish_init): Set it.
	(start_init): Likewise.  require_constant_elements for non-static
	trees only if not flag_isoc99.
	(really_start_incremental_init): Remove constructor_range_end, add
	constructor_incremental.
	(pop_init_level): Likewise.
	(push_init_level): Likewise.  If implicit and the subobject had some
	value set already, preinitialize the level with it.
	Warn about missing braces only if not pushing due to designators.
	(set_designator, push_range_stack): New functions.
	(set_init_label): Use them.
	(set_init_index): Likewise.  Remove constructor_range_end.
	Error if designator index is outside of array bounds.
	(add_pending_init): Compare values of purpose index trees, not the
	trees themselves.  Allow overwriting of already initialized element.
	Issue a warning if it had side-effects.
	(set_nonincremental_init, set_nonincremental_init_from_string): New
	functions.
	(pending_init_member): Rename to...
	(find_init_member): ...this function.  Call set_nonincremental_init
	if necessary.  Compare values of purpose index trees, not the trees
	themselves.  Return the actual value, not just non-zero if something
	is found.
	(output_init_element): Remove checks for duplicates.
	If field has zero size, only check the initializer for correctness.
	Call set_nonincremental_init if necessary.  Push RECORD/ARRAY into AVL
	if constructor_incremental is zero.  Change error about initializers
	not computable at load time into pedwarn.
	(output_pending_init_elements): Compare bit positions, not
	FIELD_DECLs to take into account zero-sized fields.
	(process_init_element): Use constructor_range_stack to fill all
	ranges in the designator lists from current level up.
	* extend.texi: Update documentation for labeled elements.

	* gcc.c-torture/execute/20000801-3.x: Remove.
	* gcc.dg/c90-init-1.c: New test.
	* gcc.dg/c99-init-1.c: New test.
	* gcc.dg/c99-init-2.c: New test.
	* gcc.dg/gnu99-init-1.c: New test.

From-SVN: r38968
2001-01-13 00:18:05 +01:00
Tom Tromey
fafc249b1b natGtkComponentPeer.cc (getLocationOnScreen): Wrote.
* gnu/awt/gtk/natGtkComponentPeer.cc (getLocationOnScreen):
	Wrote.
	(setCursor): Wrote.
	Include Cursor.h.
	* gnu/awt/gtk/natGtkLabelPeer.cc: New file.
	* gnu/awt/gtk/natGtkButtonPeer.cc: New file.
	* gnu/awt/gtk/gtkcommon.h (class _Jv_GdkThreadLock): New class.
	* gnu/awt/gtk/GtkLabelPeer.java: New file.
	* gnu/awt/gtk/GtkButtonPeer.java: New file.

From-SVN: r38967
2001-01-12 23:08:23 +00:00
Alexandre Oliva
ec7c0481a0 Reinstated part of the patch that is safe
From-SVN: r38966
2001-01-12 22:48:35 +00:00
Alexandre Oliva
c6ca5c693e Reverted
From-SVN: r38965
2001-01-12 22:42:08 +00:00
Alexandre Oliva
f474c6f8f9 calls.c (emit_library_call_value_1): Add USEs and CLOBBERs to function usage for arguments passed by reference.
* calls.c (emit_library_call_value_1): Add USEs and CLOBBERs
to function usage for arguments passed by reference.  Optimize
callee-copied arguments.
* regmove.c (find_related_toplev): Find uses in function usage.
(replace_in_call_usage): New function.
(fixup_match_1): Call it.
* cse.c (cse_insn): Canonicalize registers in function usage.
* reload1.c (replace_pseudos_in_call_usage): New function.
(reload): Call it.

From-SVN: r38964
2001-01-12 21:58:56 +00:00
Alexandre Oliva
7dd232a882 Makefile.in: Reverted yesterday's wrong patch.
* Makefile.in: Reverted yesterday's wrong patch.  Installed the
right version.

From-SVN: r38963
2001-01-12 21:56:35 +00:00
Benjamin Kosnik
051d74bfd5 *: Fix dates.
2001-01-12  Benjamin Kosnik  <bkoz@redhat.com>

	* config/os/djgpp/bits/*: Fix dates.

	* include/bits/basic_string.h (_S_find(const _CharT* __beg, const
	_CharT* __end, _CharT __c): Remove.
	* include/bits/basic_string.tcc: Substitute traits::find for _S_find.
	* include/bits/char_traits.h: Tweak.

From-SVN: r38962
2001-01-12 21:36:32 +00:00
Benjamin Kosnik
976448273e basic_string.h (_S_find(const _CharT* __beg, const _CharT* __end, _CharT __c): Remove.
2001-01-12  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/basic_string.h (_S_find(const _CharT* __beg, const
	_CharT* __end, _CharT __c): Remove.
	* include/bits/basic_string.tcc: Substitute traits::find for _S_find.
	* include/bits/char_traits.h: Tweak.

From-SVN: r38961
2001-01-12 21:24:15 +00:00
Jakub Jelinek
d02853261b alpha.c (alpha_expand_block_move): GET_MODE of tmp, not XEXP (tmp, 0).
* config/alpha/alpha.c (alpha_expand_block_move): GET_MODE of tmp,
	not XEXP (tmp, 0).

From-SVN: r38960
2001-01-12 21:44:15 +01:00
DJ Delorie
770861f338 Makefile.in (bootstrap): rename stages to be mnemonic.
* Makefile.in (bootstrap): rename stages to be mnemonic.  Add
restageN, unstageN, bubblestrap, quickstrap, and cleanstrap
targets.

From-SVN: r38959
2001-01-12 14:52:29 -05:00
Laurynas Biveinis
6f87af20c3 acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): check for DJGPP <ctype.h>
* acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): check for DJGPP <ctype.h>
(LIB_AC_PROG_CXX): replace [/\\] with [\\/] to work around older
bash bug.
* aclocal.m4: regenerated.
* configure.target: set os_include_dir to config/os/djgpp under DJGPP.
* configure: regenerated.
* config/os/djgpp, config/os/djgpp/bits: new directories.
* config/os/djgpp/bits/ctype_base.h,
config/os/djgpp/bits/ctype_inline.h,
config/os/djgpp/bits/ctype_noninline.h,
config/os/djgpp/bits/os_defines.h: new files.

From-SVN: r38958
2001-01-12 14:39:07 -05:00
Tom Tromey
b755792e3c natSystem.cc: Include locale.h if it exists.
* java/lang/natSystem.cc: Include locale.h if it exists.
	* configure: Rebuilt.
	* configure.in: Check for locale.h.

From-SVN: r38957
2001-01-12 19:16:05 +00:00
Joseph Myers
5490d6045a cpp.texi, [...]: Consistently refer to ISO C instead of ANSI C.
* cpp.texi, extend.texi, gcc.texi, install.texi, invoke.texi,
	tm.texi: Consistently refer to ISO C instead of ANSI C.  Refer to
	-std options alongside references to -ansi.  Update some
	documentation for C99.
	* cpp.1: Regenerate.

From-SVN: r38956
2001-01-12 18:51:27 +00:00
Nick Clifton
bedc753714 Undo patch accidentally commited as part of change to remove
{save|restore}_machine_status

From-SVN: r38955
2001-01-12 18:28:00 +00:00
Andreas Jaeger
14052b68db haifa-sched.c (restore_line_notes): Remove argument block B since it's unused.
* haifa-sched.c (restore_line_notes): Remove argument block B
	since it's unused.
	* sched-ebb.c (schedule_ebb): Change caller.
	* sched-rgn.c (schedule_region): Likewise.
	* sched-int.h (restore_line_notes): Adjust prototype.

From-SVN: r38954
2001-01-12 19:00:49 +01:00
Mike Stump
86aff12599 revert: varasm.c (assemble_name): Ensure we output the stripped name.
Revert:
	* varasm.c (assemble_name): Ensure we output the stripped name.

From-SVN: r38953
2001-01-12 17:58:36 +00:00
Andreas Jaeger
d24b8f53d2 loop.h: Remove wrong declaration of doloop_condition_get.
* loop.h: Remove wrong declaration of doloop_condition_get.

Co-Authored-By: Jan Hubicka <jh@suse.cz>

From-SVN: r38952
2001-01-12 18:41:23 +01:00
Joseph Myers
a67a383a7f g77spec.c (lang_specific_driver): Update copyright year to 2001.
f:
	* g77spec.c (lang_specific_driver): Update copyright year to 2001.

java:
	* gjavah.c (version), jcf-dump.c (version): Update copyright year
	to 2001.

From-SVN: r38951
2001-01-12 17:28:23 +00:00
Phil Edwards
e6f3b89df9 extend.texi: Move C++-extension-related node from the C section into the C++ section.
2001-01-12  Phil Edwards  <pme@sources.redhat.com>

	* extend.texi:  Move C++-extension-related node from the C section
	  into the C++ section.

From-SVN: r38950
2001-01-12 17:07:51 +00:00
Joseph Myers
01d9cb8b77 * objc-features.texi: Use @email.
From-SVN: r38949
2001-01-12 17:06:15 +00:00