Commit Graph

30363 Commits

Author SHA1 Message Date
Bernd Schmidt 915119a5a3 MMX/SSE patterns for i386
From-SVN: r36270
2000-09-08 17:36:33 +00:00
Richard Earnshaw 8e49e00a2c * arm.c: Don't include tm.h directly.
From-SVN: r36269
2000-09-08 14:26:29 +00:00
Jan Hubicka e65d02cf38 Fix typo
From-SVN: r36268
2000-09-08 12:37:10 +00:00
Jan Hubicka bd5621a329 recog.c (validate_replace_rtx_1): Fix confusion about equality testing...
* recog.c (validate_replace_rtx_1): Fix confusion about equality
	testing; simplify subregs of constants and nested subregs.

From-SVN: r36267
2000-09-08 12:36:11 +00:00
Alexandre Oliva 6b3783de20 * config/sh/sh.md (symPLT_label2reg): Use operand3 for PIC reg.
From-SVN: r36266
2000-09-08 11:00:17 +00:00
Bernd Schmidt 9af354b715 Update docs for USE rtx.
From-SVN: r36265
2000-09-08 09:56:25 +00:00
Bernd Schmidt ce701d1bd7 Fix computation of need_mode in choose_reload_regs.
From-SVN: r36264
2000-09-08 09:41:07 +00:00
Bernd Schmidt 82be40f7eb Some vector operation simplifications.
From-SVN: r36263
2000-09-08 09:39:23 +00:00
Jeff Law d5e5ec886e Daily bump.
From-SVN: r36262
2000-09-08 01:45:07 -06:00
Richard Henderson 4287b5f14d lib1funcs.asm (__divsi3): Use .s1 for frcpa.
* config/ia64/lib1funcs.asm (__divsi3): Use .s1 for frcpa.
        (__modsi3, __umodsi3): Likewise.
        (__udivsi3): Likewise.  Normalize the TFmode values.

From-SVN: r36261
2000-09-07 23:17:23 -07:00
Geoff Keating c5d71f39e0 sol-c0.c (_start): Declare `termfunc' parameter with a prototype.
* config/rs6000/sol-c0.c (_start): Declare `termfunc' parameter
	with a prototype.
	* config/rs6000/rs6000.h (RS6000_ARG_SIZE): Use cast to suppress
	warning.

From-SVN: r36260
2000-09-08 04:57:47 +00:00
Joern Rennecke 4c0d0505d9 Amend last change: add %, in front of Ldi%=:
From-SVN: r36259
2000-09-08 03:51:45 +01:00
J"orn Rennecke 712646d00e sh.md (cmpeqsi_ior_t, [...]): Remove.
* sh.md (cmpeqsi_ior_t, cmpeqsi_and_t): Remove.
	(cmpeqdi_t): Add output pattern.
	(cmpeqdi_t+1): Don't split when not optimizing.
	Restore proper splitting operation.

From-SVN: r36258
2000-09-08 03:46:41 +01:00
Richard Henderson 30acbc3e34 c-lex.c (process_directive): If not HANDLE_GENERIC_PRAGMAS, do not call dispatch_pragma.
* c-lex.c (process_directive): If not HANDLE_GENERIC_PRAGMAS,
        do not call dispatch_pragma.

From-SVN: r36257
2000-09-07 18:38:08 -07:00
Jim Wilson 46146529f6 Fix ia64-linux compiler abort on perl.
* reload.c (push_reload): Use CLASS_CANNOT_CHANGE_MODE_P in addition
	to CLASS_CANNOT_CHANGE_MODE.
	* config/ia64/ia64.h (CLASS_CANNOT_CHANGE_MODE_P): True only if the
	mode classes are different.

From-SVN: r36256
2000-09-07 18:35:53 -07:00
Benjamin Kosnik f1158db342 atomicity.h (__exchange_and_add): Change unused to __unused__.
2000-09-07  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* config/cpu/i386/bits/atomicity.h (__exchange_and_add): Change unused
	to __unused__.
	* config/cpu/ia64/bits/atomicity.h (__exchange_and_add): And here.
	* config/cpu/i486/bits/atomicity.h (__exchange_and_add): And here.

From-SVN: r36255
2000-09-08 01:30:38 +00:00
Zack Weinberg 6db8315512 cpplib.h (struct cpp_options): Add user_label_prefix member, left out of commit which removed cppulp.c.
* cpplib.h (struct cpp_options): Add user_label_prefix member,
	left out of commit which removed cppulp.c.

From-SVN: r36254
2000-09-08 01:29:56 +00:00
Richard Henderson 0d45144b57 bb-reorder.c (fixup_reorder_chain): Add jump in new block after switch for CASE_DROPS_THROUGH.
* bb-reorder.c (fixup_reorder_chain): Add jump in new block
        after switch for CASE_DROPS_THROUGH.

From-SVN: r36253
2000-09-07 17:25:05 -07:00
Benjamin Kosnik 7f586614b6 Add bits for --enable-maintainer-mode...
2000-09-07  Phil Edwards  <pme@sources.redhat.com>

	Add bits for --enable-maintainer-mode:
	- turns on enable_debug
          (doing "--enable-maint --disable-debug" will DTRT)
	- turns on -Werror, now off by default
	* acinclude.m4: Add bits.
	* aclocal.m4: Regenerate.
	* configure.in: Add defaults for GLIBCPP_ENABLE_DEBUG.
	* configure: Regenerate.

From-SVN: r36252
2000-09-07 22:40:17 +00:00
Benjamin Kosnik bed7f38970 std_cwctype.h: Remove yesterday's hacks.
2000-09-07  Benjamin Kosnik  <bkoz@cygnus.com>

	* bits/std_cwctype.h: Remove yesterday's hacks.

From-SVN: r36251
2000-09-07 22:38:41 +00:00
Richard Henderson e8cb487384 loop.c (strength_reduce): Call check_ext_dependant_givs.
* loop.c (strength_reduce): Call check_ext_dependant_givs.
        Properly extend the biv initial value for the giv.
        (record_biv): Zero ext_dependant.
        (record_giv): New argument ext_val.  Update all callers.
        (general_induction_var): Likewise.
        (consec_sets_giv): Likewise.
        (simplify_giv_expr): Likewise.  Fill in ext_val if we find
        a sign-extend, zero-extend, or truncate.
        (combine_givs_p): Make sure modes are compatible.
        (check_ext_dependant_givs): New.
        (extend_value_for_giv): New.
        * loop.h (struct induction): Add ext_dependant.
        * unroll.c (iteration_info): Extend the biv initial value for the giv.
        (find_splittable_givs): Likewise.
        (final_giv_value): Likewise.

From-SVN: r36250
2000-09-07 15:26:37 -07:00
Zack Weinberg 8b97c5f8ef c-pragma.h: Define HANDLE_GENERIC_PRAGMAS if REGISTER_TARGET_PRAGMAS is defined.
* c-pragma.h: Define HANDLE_GENERIC_PRAGMAS if
	REGISTER_TARGET_PRAGMAS is defined.  Duplicate some
	definitions from cpplib.h.
	* cpplib.h: Don't typedef struct cpp_reader if c-pragma.h has
	already done it.
	* tm.texi: Document HANDLE_PRAGMA as no longer supported.  Add
	documentation for REGISTER_TARGET_PRAGMAS.

	* c-lex.c: Include cpplib.h before c-pragma.h.  Define a
	default-pragma callback to implement -Wunknown-pragmas if
	USE_CPPLIB.
	* c-parse.in: Move all includes to top of file.
	* c-pragma.c: Include cpplib.h before c-pragma.h.  Include
	tm_p.h.
	(dispatch_pragma): Put the namespace in the -Wunknown-pragmas
	warning.
	(init_pragma): If REGISTER_TARGET_PRAGMAS is defined, call it.

	* arm.h, arm-protos.h, arm.c,
	  c4x.h, c4x-protos.h, c4x.c,
	  h8300.h, h8300-protos.h, h8300.c,
	  i370.h, i370-protos.h, i370.c,
	  i960.h, i960-protos.h, i960.c,
	  sh.h, sh-protos.h, sh.c,
	  v850.h, v850-protos.h, v850.c: Convert HANDLE_PRAGMA-based
	pragmata scheme to use REGISTER_TARGET_PRAGMAS instead.

	* d30v.h: Don't mention HANDLE_PRAGMA in comment.  Add
	multiple include guard.
	* i370.md (untyped_call): Use GEN_CALL.
	(umodsi3): Remove unused variable.
	* sh/elf.h: Don't undef HANDLE_SYSV_PRAGMA.
	* v850.c (output_move_single, output_move_double): Constify
	return value.
	(print_operand): Constify a char *.
	* v850.h (struct small_memory_info): Constify name member.

From-SVN: r36249
2000-09-07 22:24:34 +00:00
Kazu Hirata 1898584f04 h8300.h: Fix comment typos.
* config/h8300.h: Fix comment typos.
        * config/h8300/h8300.md: Likewise.
        * config/h8300/lib1funcs.asm: Likewise.

From-SVN: r36248
2000-09-07 16:11:31 -06:00
Brad Garcia 3a664f1601 stl_tree.h: Make operators !=, == type safe for map, set.
2000-09-07  Brad Garcia  <bgarcia@laurelnetworks.com>

	* bits/stl_tree.h: Make operators !=, == type safe for map, set.
	* testsuite/23_containers/set_operators.cc: New file. Should not
	compile.
	* testsuite/23_containers/map_operators.cc: New file. Ditto.

From-SVN: r36247
2000-09-07 21:08:59 +00:00
Brad Garcia 3eea1aed40 000-09-07 Brad Garcia <bgarcia@laurelnetworks.com>
* bits/stl_tree.h: Make operators !=, == type safe for map, set.
	* testsuite/23_containers/set_operators.cc: New file. Should not
	compile.
	* testsuite/23_containers/map_operators.cc: New file. Ditto.

From-SVN: r36246
2000-09-07 21:07:56 +00:00
Neil Booth 771c4df34e Makefile.in: Remove references to cppulp.{c,o}.
* Makefile.in: Remove references to cppulp.{c,o}.
	* cppinit.c (initialize_builtins, cpp_start_read,
	cpp_handle_option): Update to use cpp_options structure.
	* cppulp.c: Remove.

From-SVN: r36245
2000-09-07 20:31:06 +00:00
Michael Sokolov 2ecd81ef2b * md5.c: #include "ansidecl.h".
From-SVN: r36244
2000-09-07 14:38:43 -04:00
Alexandre Petit-Bianco 3e99f50c2b verify.c (merge_types): Load the types to merge if necessary.
2000-09-05  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* verify.c (merge_types): Load the types to merge if necessary.

(http://gcc.gnu.org/ml/gcc-patches/2000-09/msg00245.html)

From-SVN: r36243
2000-09-07 11:24:41 -07:00
Joseph Myers 2496f0b583 c-common.c (time_char_table): Allow %#b and %#h.
* c-common.c (time_char_table): Allow %#b and %#h.

testsuite:
	* gcc.dg/format-ext-3.c: Test %#b and %#h as formats that should
	be accepted.

From-SVN: r36241
2000-09-07 18:20:04 +01:00
Herman A.J. ten Brugge bf6302f0e7 reorg.c (find_end_label): If the basic block reorder pass moves the return insn to some other place try...
* reorg.c (find_end_label): If the basic block reorder pass moves the
	return insn to some other place try to locate it again and put our
	end_of_function_label there.
	* reorg.c (relax_delay_slots): Check if find_end_label created a
	new label that invalidates the current optimazation.

From-SVN: r36237
2000-09-07 09:18:46 -06:00
Catherine Moore 33b35a8dc4 * gcc.c-torture/execute/unroll-1.c: New test.
From-SVN: r36236
2000-09-07 09:12:24 -04:00
Catherine Moore 4598ffe97a unroll.c (unroll_loop): Check for unconditional jumps to loop continuation.
* unroll.c (unroll_loop): Check for unconditional jumps
        to loop continuation.  Delete if n_iterations is 1.
        (ujump_to_loop_cont): New routine.

From-SVN: r36235
2000-09-07 09:10:51 -04:00
Bryce McKinlay f52c723967 Makefile.am (Thread.h): Don't be friends with native threads functions.
2000-09-07  Bryce McKinlay  <bryce@albatross.co.nz>

	* Makefile.am (Thread.h): Don't be friends with native threads
	functions.
	* Makefile.in: Rebuilt.
	* java/lang/Thread.java (interrupt_flag): Make package-private.

From-SVN: r36234
2000-09-07 13:09:41 +01:00
Bernd Schmidt 8441bc3035 Handle multiword modes in regno_clobbered_p
From-SVN: r36233
2000-09-07 11:07:07 +00:00
Bernd Schmidt ff42776491 Fix a small oversight
From-SVN: r36232
2000-09-07 09:02:02 +00:00
Gabriel Dos Reis 990a9693d4 * ir.texi: Document type nodes.
From-SVN: r36231
2000-09-07 08:42:34 +00:00
Jeff Law a7508e6886 Daily bump.
From-SVN: r36230
2000-09-07 01:45:08 -06:00
Mark Mitchell 54f7877c8b c-common.h (prep_stmt): Declare.
* c-common.h (prep_stmt): Declare.
	(lang_expand_stmt): Likewise.
	* c-decl.c (lang_expand_stmt): Remove.
	* c-semantics.c (lang_expand_stmt): Define.
	(prep_stmt): New function.
	(expand_stmt): Handle common statement types here.

	* cp-tree.h (init_cp_semantics): Declare.
	(genrtl_try_block): Don't declare.
	(genrtl_handler): Likewise.
	(genrtl_catch_block): Likewise.
	(genrtl_ctor_stmt): Likewise.
	(genrtl_subobject): Likewise.
	(genrtl_do_poplevel): Likewise.
	(genrtl_named_return_value): Likewise.
	* lex.c (init_parse): Call init_cp_semantics.
	* semantics.c (genrtl_try_block): Give it internal linkage.
	(genrtl_handler): Likewise.
	(genrtl_catch_block): Likewise.
	(genrtl_ctor_stmt): Likewise.
	(genrtl_subobject): Likewise.
	(genrtl_do_poplevel): Likewise.
	(genrtl_named_return_value): Likewise.
	(lang_expand_stmt): Rename to ...
	(cp_expand_stmt): ... this.  Only handle C++-specific nodes.
	(init_cp_semantics): Define.

From-SVN: r36229
2000-09-07 06:55:51 +00:00
Alex Samuel d93998ecbe cp-demangle.c (status_allocation_failed): Rearrange whitespace.
* cp-demangle.c (status_allocation_failed): Rearrange whitespace.
	(demangle_type): Handle substitution candidates correctly in the
	face of special substitutions.

From-SVN: r36228
2000-09-07 05:44:46 +00:00
Niibe Yutaka 93ca1662a2 configure.in (sh-*-linux*): Added.
* configure.in (sh-*-linux*): Added.
* configure: Rebuilt.
* config/sh/t-linux: New file.
* config/sh/sh.h (USERMODE_BIT): Define.
(TARGET_USERMODE): Likewise.
(TARGET_SWITCHES): New switches for the bits above.
(INITIALIZE_TRAMPOLINE): Call __ic_invalidate in USERMODE.
* config/sh/linux.h: New file.
* config/sh/lib1funcs.asm (GLOBAL): Don't prefix symbols with
underscore on linux.
(L_sdivsi3, L_udivsi3): Define for linux.
(L_ic_invalidate): Define.
* invoke.texi (SH Options): Document -musermode.

From-SVN: r36227
2000-09-07 04:38:34 +00:00
Alexandre Oliva 4979c2a9f3 sh.h (OVERRIDE_OPTIONS): Don't disable function CSE unless generating PIC.
* config/sh/sh.h (OVERRIDE_OPTIONS): Don't disable function
CSE unless generating PIC.

From-SVN: r36226
2000-09-07 04:12:47 +00:00
Alexandre Oliva 71105114a1 sh.md (symPLT_label2reg): Force the initialization of the PIC register.
* config/sh/sh.md (symPLT_label2reg): Force the initialization of
the PIC register.

From-SVN: r36225
2000-09-07 04:10:27 +00:00
Mark Mitchell 3a0d3e1e75 decl.c (initialize_local_var): Remove RTL-generating code.
* decl.c (initialize_local_var): Remove RTL-generating code.
	* semantics.c (genrtl_try_block): Fix formatting.

From-SVN: r36224
2000-09-07 03:50:52 +00:00
H.J. Lu d5cfb451c1 Makefile.in (clean_s1): Depend on stage_b.
* Makefile.in (clean_s1): Depend on stage_b.
(clean_s2): Depend on stage_d. Don't remove $(VOL_FILES) in
stage2. They are used for "make compare".

From-SVN: r36223
2000-09-07 03:14:39 +00:00
Richard Henderson 735bce7e26 acinclude.m4 (GLIBCPP_CHECK_CPU): Add ia64 support.
2000-09-06  Richard Henderson  <rth@cygnus.com>
	    Benjamin Kosnik  <bkoz@cygnus.com>

	* acinclude.m4 (GLIBCPP_CHECK_CPU): Add ia64 support.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* config/cpu/ia64: New directory.
	* config/cpu/ia64/bits: New directory.
	* config/cpu/ia64/bits/atomicity.h: New file.

Co-Authored-By: Benjamin Kosnik <bkoz@cygnus.com>

From-SVN: r36222
2000-09-07 01:48:27 +00:00
Mark Mitchell ae499ccea4 Move statement-tree facilities from C++ to C front-end.
* c-common.h (c_tree_index): Add CTI_VOID_ZERO.
	(void_zero_node): New macro.
	(struct stmt_tree_s): New type.
	(stmt_tree): New typedef.
	(struct language_function): New type.
	(last_tree): New macro.
	(last_expr_type): Likewise.
	(walk_tree_fn): New typedef.
	(current_stmt_tree): New function.
	(begin_stmt_tree): Likewise.
	(add_stmt): Likewise.
	(finish_stmt_tree): Likewise.
	(statement_code_p): Likewise.
	(lang_statement_code_p): New variable.
	(walk_stmt_tree): New function.
	(STMT_IS_FULL_EXPR_P): New macro.
	* c-common.c (lang_statement_code_p): New variable.
	(c_common_nodes_and_builtins): Initialize void_zero_node.
	(statement_code_p): New function.
	(walk_stmt_tree): Likewise.
	* c-decl.c (language_function): Rename to ...
	(c_language_function): ... this.  Include language_function.
	(push_c_function_context): Adjust accordingly.
	(pop_c_function_context): Likewise.
	(mark_c_function_context): Likewise.
	(current_stmt_tree): Define.
	* c-semantics.c (begin_stmt_tree): New function.
	(add_stmt): Likewise.
	(prune_unused_decls): Likewise.
	(finish_stmt_tree): Likewise.

	Move statement-tree facilities from C++ to C front-end.
	* cp-tree.h (cp_tree_index): Remove CPTI_VOID_ZERO.
	(void_zero_node): Remove.
	(stmt_tree): Likewise.
	(scope_chain): Adjust.
	(language_function): Rename to cp_language_function.
	(cp_function_chain): Adjust.
	(current_stmt_tree): Remove.
	(last_tree): Likewise.
	(last_expr_type): Likewise.
	(struct lang_decl): Adjust.
	(STMT_IS_FULL_EXPR_P): Remove.
	(add_tree): Remove.
	(begin_stmt_tree): Likewise.
	(finish_stmt_tree): Likewise.
	(walk_tree_fn): Likewise.
	(walk_stmt_tree): Likewise.
	* class.c (finish_struct): Replace use of add_tree with add_stmt.
	* decl.c (mark_stmt_tree): Adjust type.
	(init_decl_processing): Don't build void_zero_node.
	(initialize_local_var): Adjust usage of current_stmt_tree.
	(finish_enum): Use add_stmt, not add_tree.
	(save_function_data): Adjust use of language_function.
	(finish_constructor_body): Use add_stmt, not add_tree.
	(finish_destructor_body): Likewise.
	(push_cp_function_context): Adjust use of language_function.
	(pop_cp_function_context): Likewise.
	(mark_lang_function): Likewise.
	(mark_cp_function_context): Likewise.
	* init.c (build_aggr_init): Adjust use of current_stmt_tree.
	(build_vec_init): Likewise.
	* semantics.c (SET_LAST_STMT): Remove.
	(RECHAIN_STMTS): Don't use it.
	(stmts_are_full_exprs_p): Adjust use of current_stmt_tree.
	(current_stmt_tree): Define.
	(add_tree): Remove.
	(finish_goto_stmt): Use add_stmt, not add_tree.
	(finish_expr_stmt): Likewise.
	(begin_if_stmt): Likewise.
	(finish_then_clause): Likewise.
	(begin_while_stmt): Likewise.
	(begin_do_stmt): Likewise.
	(finish_return_stmt): Likewise.
	(begin_for_stmt): Likewise.
	(finish_break_stmt): Likewise.
	(finish_continue_stmt): Likewise.
	(begin_switch_stmt): Likewise.
	(finish_case_label): Likewise.
	(begin_try_block): Likewise.
	(begin_function_try_block): Likewise.
	(begin_handler): Likewise.
	(begin_catch_block): Likewise.
	(begin_compound_stmt): Likewise.
	(begin_asm_stmt): Likewise.
	(finish_asm_stmt): Likewise.
	(finish_label_stmt): Likewise.
	(add_decl_stmt): Likewise.
	(finish_subobject): Likewise.
	(finish_decl_cleanup): Likewise.
	(finish_named_return_value): Likewise.
	(setup_vtbl_ptr): Likewise.
	(add_scope_stmt): Likewise.
	(finish_stmt_expr): Likewise.
	(prune_unused_decls): Remove.
	(begin_stmt_tree): Likewise.
	(finish_stmt_tree): Likewise.
	(prep_stmt): Adjust use of current_stmt_tree.
	(lang_expand_stmt): Likewise.
	* tree.c (statement_code_p): Remove.
	(cp_statement_code_p): New function.
	(walk_stmt_tree): Remove.
	(init_tree): Set lang_statement_code_p.

From-SVN: r36221
2000-09-07 01:36:11 +00:00
Herman A.J. ten Brugge 4f4b88d083 * flow.c (insn_dead_p): Detect dead memory stores with auto increments.
From-SVN: r36220
2000-09-06 19:22:07 -06:00
Kazu Hirata f725a3ec9b * calls.c: Fix formatting.
From-SVN: r36219
2000-09-06 19:17:00 -06:00
Benjamin Kosnik f133a43eab acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Force glibc_satisfactory to no...
2000-09-06  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Force glibc_satisfactory
	to no, so that libstdc++-v3's libio will be built on glibc-2.2
	systems.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* */Makefile.in: Regenerate.

	* bits/std_cwctype.h: Put in temporary hack to work around -O2 +
	glibc 2.1.x unsigned errors. Or disable -Werror by default...

	* testsuite/23_containers/vector_element_access.cc: New file.
	* bits/stl_config.h (__STL_THROW_RANGE_ERRORS): Define.

From-SVN: r36218
2000-09-07 01:02:01 +00:00
Graham Stott 0806f95fb4 * config/i386/i386.h (ADDRESS_COST): Fix typo.
From-SVN: r36217
2000-09-06 18:56:11 -06:00