Commit Graph

31508 Commits

Author SHA1 Message Date
Joseph Myers fe8ca71f2a * c-common.h (CTI_C_SIZE_TYPE): Update comment.
From-SVN: r37452
2000-11-14 10:38:01 +00:00
Jakub Jelinek 94b01be347 varasm.c (struct varasm_status): Change x_const_rtx_sym_hash_table to array of pool_constnat pointers.
* varasm.c (struct varasm_status): Change x_const_rtx_sym_hash_table
	to array of pool_constnat pointers.
	(struct pool_constant): Add next_sym and label members.
	(struct pool_sym): Remove.
	(init_varasm_status): Change pool_sym into pool_constant.
	(mark_pool_constant): Mark pc->label string as well.
	(mark_pool_sym_hash_table): Remove.
	(mark_varasm_status): Remove it from caller as well.
	(free_varasm_status): Don't free pool_sym structures.
	(force_const_mem): Don't allocate pool_sym structure, instead
	fill pool->label and chain it into rtx_sym hash table.
	(find_pool_constant, mark_constant_pool): Use pool_constant instead
	of pool_sym.

From-SVN: r37451
2000-11-14 11:31:32 +01:00
Jakub Jelinek 716120a70a reload1.c (emit_input_reload_insns): Honour forcing of constants into memory by PREFERRED_RELOAD_CLASS NO_REGS.
* reload1.c (emit_input_reload_insns): Honour forcing of constants
	into memory by PREFERRED_RELOAD_CLASS NO_REGS.

From-SVN: r37450
2000-11-14 11:23:38 +01:00
Michael Matz f80326884c Michael Matz <matzmich@cs.tu-berlin.de>
* dominance.c: New file.
        * Makefile.in (OBJS): Add dominance.o.

        * flow.c (compute_flow_dominators): Remove.
        (compute_immediate_dominators): Remove.
        (compute_immediate_postdominators): Remove.
        * basic-block.h: Remove their prototypes.
        (calculate_dominance_info): Add prototype.

        * dce.c (eliminate_dead_code): Change calls to above functions.
        Don't compute dominators but only immediate dominators.
        * flow.c (flow_loops_find): Change callers.
        * gcse.c (compute_code_hoist_data): Likewise.
        * haifa-sched.c (schedule_insns): Likewise.
        * ifcvt.c (if_convert): Likewise.
        * ssa.c (convert_to_ssa): Likewise, and only compute immediate
        dominators.

From-SVN: r37449
2000-11-14 01:58:40 -08:00
Richard Henderson 6f1225504f stmt.c (warn_if_unused_value): Don't warn if the expression has side effects.
* stmt.c (warn_if_unused_value): Don't warn if the expression
        has side effects.

From-SVN: r37448
2000-11-14 01:51:46 -08:00
Richard Henderson 0caa3c8e09 c-typeck.c (c_sizeof): Fold result to c_size_type_node.
* c-typeck.c (c_sizeof): Fold result to c_size_type_node.
        (c_sizeof_nowarn, c_alignof, c_alignof_expr): Likewise.

From-SVN: r37447
2000-11-14 01:47:13 -08:00
Richard Henderson 8422942cb6 typeck.c (c_sizeof): Be strict about casting result value back to c_size_type_node.
* typeck.c (c_sizeof): Be strict about casting result value
        back to c_size_type_node.
        (expr_sizeof, c_sizeof_nowarn, c_alignof): Likewise.

From-SVN: r37446
2000-11-14 01:46:55 -08:00
Jeff Law 187e3bf0b7 Daily bump.
From-SVN: r37445
2000-11-14 01:45:08 -07:00
Phil Edwards d0941a315e acinclude.m4 (GLIBCPP_CHECK_TARGET): New macro...
2000-11-13  Phil Edwards  <pme@sources.redhat.com>

	* acinclude.m4 (GLIBCPP_CHECK_TARGET):  New macro, replacing
	  GLIBCPP_CHECK_CPU and GLIBCPP_CHECK_OS, sourcing configure.target.
	  (GLIBCPP_CONFIGURE):  Call new macro here.
	* configure.host:  Cleanup.
	* configure.in:  Remove those two macros.
	* configure.target:  New file.
	* aclocal.m4:  Regenerated.
	* configure:  Ditto.
	* Makefile.in:  Ditto.
	* libio/Makefile.in:  Ditto.
	* libmath/Makefile.in:  Ditto.
	* libsupc++/Makefile.in:  Ditto.
	* src/Makefile.in:  Ditto.

	* mkcheck.in:  Use libtool.  Split things out into functions.

From-SVN: r37443
2000-11-13 23:49:41 +00:00
Alexandre Petit-Bianco b72554f1df Makefile.am (tmp-libstdsc++.INC:): Do not use -I$(top_builddir).
2000-11-12  Alexandre Petit-Bianco  <apbianco@cygnus.com>

        * Makefile.am (tmp-libstdsc++.INC:): Do not use -I$(top_builddir).
        * Makefile.in: Regenerate.

From-SVN: r37442
2000-11-13 23:38:41 +00:00
David Edelsohn fef53cdcf2 acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Add test for libiconv.a providing wchar_t support functions.
2000-11-12  David Edelsohn  <edelsohn@gnu.org>

        * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Add test for
        libiconv.a providing wchar_t support functions.
	* aclocal.m4: Regenerate.

From-SVN: r37441
2000-11-13 22:32:05 +00:00
Franz Sirl a78cc54201 loop.c (basic_induction_var): Revert accidental checkin.
2000-11-13  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>

	* loop.c (basic_induction_var): Revert accidental checkin.

From-SVN: r37440
2000-11-13 22:20:03 +00:00
Loren J. Rittle 66dfa1436f acinclude.m4 (GLIBCPP_ENABLE_ATOMICITY): Handle FreeBSD.
2000-11-12  Loren J. Rittle  <ljrittle@acm.org>

        * acinclude.m4 (GLIBCPP_ENABLE_ATOMICITY): Handle FreeBSD.
        * aclocal.m4, configure: Rebuilt.

From-SVN: r37439
2000-11-13 22:14:18 +00:00
Hans-Peter Nilsson d9068c6142 c-lex.c (cb_leave_file): Harmonize conditions and order of statements to those of process_directive for...
* c-lex.c (cb_leave_file): Harmonize conditions and order of
	statements to those of process_directive for (action == act_pop).

	* collect2.c (main): Pass on -B options from COLLECT_GCC_OPTIONS.

	* local-alloc.c (equiv_init_movable_p): References to CC0 are not
	movable.

From-SVN: r37438
2000-11-13 21:22:10 +00:00
Brent Verner 51d61f8686 wrap_langinfo.h: New file.
2000-11-12  Brent Verner  <brent@rcfile.org>

        * include/c_std/bits/wrap_langinfo.h: New file.
        * include/c_std/langinfo.h: New file.
        * include/bits/codecvt.h (__enc_trants::__enc_traits()): Bring in
	CODESET from _C_legacy::CODESET if using shadow headers.
	* src/Makefile.am: Add new files.
	* src/Makefile.in: Regenerate.

From-SVN: r37437
2000-11-13 21:04:54 +00:00
Benjamin Kosnik 84e0b551f1 wrap_langinfo.h: New file.
2000-11-12  Brent Verner  <brent@rcfile.org>

        * include/c_std/bits/wrap_langinfo.h: New file.
        * include/c_std/langinfo.h: New file.
        * include/bits/codecvt.h (__enc_trants::__enc_traits()): Bring in
	CODESET from _C_legacy::CODESET if using shadow headers.

From-SVN: r37436
2000-11-13 20:58:46 +00:00
Joseph Myers ebf025238d c-parse.in (stmts_and_decls): Deprecate use of label at end of compound statement.
* c-parse.in (stmts_and_decls): Deprecate use of label at end of
	compound statement.

testsuite:
	* gcc.dg/wtr-label-1.c, gcc.dg/990214-1.c: Add semicolons after
	labels at end of compound statements.

From-SVN: r37435
2000-11-13 20:00:22 +00:00
Neil Booth 29b10746ab cpplex.c (_cpp_lex_token): CPP_COMMENT and true CPP_EOF cases return without MI check.
* cpplex.c (_cpp_lex_token): CPP_COMMENT and true CPP_EOF
        cases return without MI check.
        * cpplib.c (do_diagnostic): Take boolean of whether to
        print the directive name.
        (do_error, do_warning): Update.
        (do_pragma_dependency): Use it.
        * cpplib.h (VARARGS_FIRST): Delete.
        (struct cpp_token): Delete integer.
        * cppmacro.c (enter_macro_context): Move disabled check
        to _cpp_get_token.
        (_cpp_get_token): Simplify into a single loop.

From-SVN: r37434
2000-11-13 18:40:37 +00:00
Richard Earnshaw eb68ad7c60 Fix minor typo.
From-SVN: r37433
2000-11-13 17:12:25 +00:00
Richard Earnshaw 8105825db7 configure.in: Use 'test -f' not '[ -e'.
* configure.in:  Use 'test -f' not '[ -e'.
* configure: Regenerated.

From-SVN: r37432
2000-11-13 16:56:57 +00:00
DJ Delorie 481a6b4a32 mn10300.md (store_movm): Note which registers are really used or clobbered.
* config/mn10300/mn10300.md (store_movm): Note which registers are
really used or clobbered.

From-SVN: r37431
2000-11-13 11:37:09 -05:00
Jakub Jelinek 529c0acbb0 * gcc.c-torture/execute/loop-7.c: New test.
From-SVN: r37430
2000-11-13 15:41:38 +01:00
Joseph Myers b74384156a c-parse.in (ends_in_label): Remove from %union and %type.
* c-parse.in (ends_in_label): Remove from %union and %type.
	(decls, stmts, lineno_stmt_or_labels, xstmts,
	lineno_stmt_or_label, stmt_or_label): Remove.
	(stmts_and_decls, lineno_stmt_decl_or_labels_ending_stmt,
	lineno_stmt_decl_or_labels_ending_decl,
	lineno_stmt_decl_or_labels_ending_label,
	lineno_stmt_decl_or_labels_ending_error,
	lineno_stmt_decl_or_labels, compstmt_contents_nonempty,
	lineno_stmt, lineno_label): New.
	(compstmt_nostart): Use compstmt_contents_nonempty.

testsuite:
	* gcc.dg/c99-mixdecl-1.c, gcc.dg/c90-mixdecl-1.c: New tests.

From-SVN: r37429
2000-11-13 14:20:04 +00:00
Joseph Myers 19552aa572 c-common.c (boolean_increment): New function.
* c-common.c (boolean_increment): New function.
	* c-common.h (enum c_tree_index): Add CTI_C_BOOL_TYPE,
	CTI_C_BOOL_TRUE and CTI_C_BOOL_FALSE.
	(c_bool_type_node, c_bool_true_node, c_bool_false_node): Define.
	(boolean_increment): Declare.
	* c-convert.c (convert): Allow for BOOLEAN_TYPE.
	* c-decl.c (init_decl_processing): Create boolean nodes.
	(finish_struct): Allow for _Bool bitfields.
	* c-parse.in (reswords): Add _Bool.
	(rid_to_yy): Allow for RID_BOOL.
	* c-typeck.c (default_conversion): Make booleans promote to int.
	(convert_arguments, build_unary_op, build_modify_expr,
	convert_for_assignment): Allow for booleans.
	* ginclude/stdbool.h: Make conforming to C99.

cp:
	* typeck.c (build_unary_op): Use boolean_increment from
	c-common.c, moving the relevant code there.

testsuite:
	* gcc.dg/c99-bool-1.c: New test.

From-SVN: r37428
2000-11-13 14:14:44 +00:00
Joseph Myers 444ca59fa4 c-parse.in (c99_block_start, [...]): New.
* c-parse.in (c99_block_start, c99_block_end,
	c99_block_lineno_labeled_stmt): New.
	(simple_if, do_stmt_start): Use c99_block_lineno_labeled_stmt.
	(stmt): Split off selection and iteration statements into...
	(select_or_iter_stmt): New.  Use c99_block_lineno_labeled_stmt.

testsuite:
	* gcc.dg/c99-scope-1.c: Remove xfail.
	* gcc.dg/c99-scope-2.c: New test.

From-SVN: r37427
2000-11-13 14:08:09 +00:00
Joseph Myers f2ecb02d79 invoke.texi (-Wtrigraphs, [...]): Update.
* invoke.texi (-Wtrigraphs, -fdump-translation-unit, -save-temps,
	-time): Update.

From-SVN: r37426
2000-11-13 14:02:54 +00:00
Richard Earnshaw b082bfdb4f arm.md (mulsidi3adddi, [...]): Revert previous change.
* arm.md (mulsidi3adddi, umulsidi3adddi): Revert previous change.
Rewrite to avoid use of match_dup.  Don't try to tie registers that
are not in the same mode.

From-SVN: r37425
2000-11-13 13:58:51 +00:00
Joseph Myers b9265ec1ee * invoke.texi: Update lists of languages and suffixes supported.
From-SVN: r37424
2000-11-13 13:41:46 +00:00
Joseph Myers cc1e60ea6a configure: Provide the original toplevel configure arguments (including $0) to...
* configure: Provide the original toplevel configure arguments
	(including $0) to subprocesses in the environment rather than
	through gcc/configargs.h.

gcc:
	* configure.in: Take toplevel configure arguments from the
	environment to create configargs.h and substitute
	gcc_config_arguments, taking account of any existing configargs.h
	if reconfiguring.
	* configure: Regenerate.
	* gccbug.in: Include toplevel configure arguments in gccbug.

From-SVN: r37423
2000-11-13 13:39:36 +00:00
Richard Earnshaw 373577962c varasm.c (struct constant_descriptor): Put CONTENTS inside a union to make it well-aligned.
* varasm.c (struct constant_descriptor): Put CONTENTS inside a
union to make it well-aligned.  Update all uses.

From-SVN: r37422
2000-11-13 13:35:26 +00:00
Joseph Myers 26d4fec72e c-parse.in (initelt): Give appropriate pedantic warnings...
* c-parse.in (initelt): Give appropriate pedantic warnings,
	depending on flag_isoc99, for non-ISO syntax and for C99 syntax
	outside C99 mode.
	(designator): If pedantic, pedwarn for a designator specifying a
	range of elements.
	* c-typeck.c (set_init_index, set_init_label): Don't pedwarn for
	these cases.
	* extend.texi: Document the C99 syntax as the preferred syntax,
	and the pre-2.5 syntax as obsolete.  Mention use of designator
	lists for nested subobjects.

From-SVN: r37421
2000-11-13 13:31:16 +00:00
Joseph Myers 1173593dd6 MAINTAINERS: Remove references to cccp.
* MAINTAINERS: Remove references to cccp. Change C9X reference to
	C99.  Alphabetise "Write After Approval" list.

From-SVN: r37420
2000-11-13 13:25:53 +00:00
Joseph Myers 88f3c47786 diagnostic.c (vbuild_message_string, [...]): Add ATTRIBUTE_PRINTF.
* diagnostic.c (vbuild_message_string, output_do_printf, vnotice):
	Add ATTRIBUTE_PRINTF.
	* tradcpp.c (v_message, warning, error, fatal, error_with_line):
	Add ATTRIBUTE_PRINTF*.

java:
	* parse.y (issue_warning_error_from_context): Add
	ATTRIBUTE_PRINTF.

From-SVN: r37419
2000-11-13 13:23:37 +00:00
Jeff Law e6ddd086ce Daily bump.
From-SVN: r37418
2000-11-13 01:45:07 -07:00
Mark Mitchell db5fbfb420 function.c (assign_parms): When calling put_var_into_stack...
* function.c (assign_parms): When calling put_var_into_stack, make
	sure that there are no hidden pending sequences.

From-SVN: r37417
2000-11-13 07:00:55 +00:00
Kaveh R. Ghazi c7b6c6cd47 builtins.c (expand_builtin): Handle BUILT_IN_INDEX and BUILT_IN_RINDEX.
* builtins.c (expand_builtin): Handle BUILT_IN_INDEX and
	BUILT_IN_RINDEX.  Add missing checks for BUILT_IN_STRCHR and
	BUILT_IN_STRRCHR.

	* builtins.def (BUILT_IN_INDEX, BUILT_IN_RINDEX): New entries.

	* c-common.c (c_common_nodes_and_builtins): Declare index and
	rindex when nonansi builtins are allowed.

	* extend.texi (index, rindex): Document new builtins.

testsuite:
	* gcc.c-torture/execute/string-opt-3.c: Also test builtin rindex.
	* gcc.c-torture/execute/string-opt-4.c: Also test builtin index.

From-SVN: r37416
2000-11-13 02:14:05 +00:00
Mark Mitchell 34f6fbdb65 configure: Turn on libstdc++ V3 by default.
* configure: Turn on libstdc++ V3 by default.

	* configure.in: Turn on libstdc++ V3 by default.
	* configure: Regenerated.

From-SVN: r37415
2000-11-13 01:15:40 +00:00
Mark Mitchell 520907ee6d ltcf-c.sh: On Solaris, use `gcc -shared' to build a shared library if we've got GCC.
* ltcf-c.sh: On Solaris, use `gcc -shared' to build a shared library
	if we've got GCC.

From-SVN: r37414
2000-11-13 00:49:03 +00:00
Mark Mitchell 81dfdc485e std_cmath.h (abs): Change extern "C" declaration of `abs (double)' to ...
* include/c/bits/std_cmath.h (abs): Change extern "C" declaration
	of `abs (double)' to ...
	(fabs): this.

From-SVN: r37413
2000-11-13 00:43:39 +00:00
Mark Mitchell b5430af63f os_defines.h: Define __EXTENSIONS__.
* config/os/solaris/solaris2.7/bits/os_defines.h: Define
	__EXTENSIONS__.

From-SVN: r37412
2000-11-13 00:25:40 +00:00
Bruce Korb f6820157d1 generalize the release script a bit
From-SVN: r37411
2000-11-13 00:25:21 +00:00
Mark Mitchell 2f86842d45 * fixinc/mkfixinc.sh: Use the ordinary fixincludes on Solaris.
From-SVN: r37410
2000-11-13 00:19:37 +00:00
Jakub Jelinek 0c0ba09c8c * reload1.c (set_label_offsets): Go inside of PARALLELs.
From-SVN: r37409
2000-11-12 23:52:35 +01:00
Joseph Myers 84a0e7b854 * invoke.texi: Clean up option summary.
From-SVN: r37408
2000-11-12 19:17:59 +00:00
Nick Clifton 4816b8e47a Fix comment formating, and adjust sequence of #include headers.
From-SVN: r37407
2000-11-12 18:40:22 +00:00
Marc Espie ee7692d2fd configure.in: Fix filds test.
* configure.in: Fix filds test.
	* configure: Regen.

From-SVN: r37406
2000-11-12 14:06:23 +00:00
Mark Mitchell f8c4f86051 jump.c (delete_computation): Don't assume that just becuase an instruction sets a register...
* jump.c (delete_computation): Don't assume that just becuase an
	instruction sets a register, that register is dead.

From-SVN: r37405
2000-11-12 13:01:37 +00:00
Neil Booth b528a07e0e cppexp.c: Don't worry about pfile->skipping.
* cppexp.c: Don't worry about pfile->skipping.
        * cpplib.c (struct if_stack): Make was_skipping unsigned char.
        (cpp_handle_directive): Save pfile->skipping in struct cpp_buffer
        for handled directives.
        (skip_rest_of_line): Use _cpp_lex_token after popping contexts
        and releasing lookaheads.
        (do_ifdef, do_ifndef, do_if): Use buffer->was_skipping.
        (do_else, do_elif, push_conditional): Update logic.
        (do_endif): Set buffer->was_skipping rather than pfile->skipping.
        (unwind_if_stack): Inline into cpp_pop_buffer.
        (cpp_push_buffer): Clear ifs->was_skipping for cpp_handle_directive.
        * cpplex.c (_cpp_lex_token): Clear skipping on EOF.  Handle
        multiple-include optimisation.
        * cpplib.h (struct cpp_buffer): New member was_skipping.
        * cppmacro.c (_cpp_get_token): Loop whilst pfile->skipping.  This
        works because skipping == 0 in directives.
        (_cpp_release_lookahead): Renamed from release_lookahead.
        (cpp_get_token): No need to check skipping as _cpp_get_token does
        this for us.  No need to handle MI optimisation.

From-SVN: r37404
2000-11-12 11:46:21 +00:00
Jeff Law 46bdc296a8 Daily bump.
From-SVN: r37403
2000-11-12 01:45:08 -07:00
Mark Mitchell 995c461cce inclhack.def (sunos_matherr_decl): Bypass matherr declarations that use `__MATH_EXCEPTION' in their prototypes, too.
* fixinc/inclhack.def (sunos_matherr_decl): Bypass matherr
	declarations that use `__MATH_EXCEPTION' in their prototypes, too.
	* fixinc/fixincl.x: Regenerated.

From-SVN: r37402
2000-11-12 04:16:07 +00:00