Commit Graph

37602 Commits

Author SHA1 Message Date
Richard Henderson 33593de731 recog.c (peephole2_optimize): Likewise.
* recog.c (peephole2_optimize): Likewise.  Handle EH_REGION;
        copy over CALL_INSN_FUNCTION_USAGE.

From-SVN: r45693
2001-09-19 11:32:21 -07:00
Anthony Green bb7fd9624b Fix null pointer bug.
From-SVN: r45692
2001-09-19 18:28:59 +00:00
Richard Henderson 216183ce28 emit-rtl.c (try_split): Copy NORETURN, SETJMP, ALWAYS_RETURN and NON_LOCAL_GOTO notes.
* emit-rtl.c (try_split): Copy NORETURN, SETJMP, ALWAYS_RETURN
        and NON_LOCAL_GOTO notes.

From-SVN: r45691
2001-09-19 11:27:49 -07:00
Richard Henderson f068df3fe6 * cfgbuild.c (find_sub_basic_blocks): Handle insns that can throw.
From-SVN: r45690
2001-09-19 11:21:54 -07:00
GCC Administrator e8f9246734 Daily bump.
From-SVN: r45688
2001-09-19 07:16:16 +00:00
Ben Elliston 1dc4a75000 configure.in (sparc-sun-solaris2*): Don't use /usr/bin/which on Solaris when testing for the /usr/ucb/cc compiler...
2001-09-19  Ben Elliston  <bje@redhat.com>

	* configure.in (sparc-sun-solaris2*): Don't use /usr/bin/which on
	Solaris when testing for the /usr/ucb/cc compiler; it has incorrect
	semantics.  Use the shell built-in "type" command instead.

From-SVN: r45687
2001-09-19 16:07:00 +10:00
Catherine Moore 784d7cce85 config/stormy16/stormy16.h (DEFAULT_PCC_STRUCT_RETURN): Define as 0.
From-SVN: r45686
2001-09-18 18:00:37 -04:00
Ulrich Weigand 70eeb10b99 config.gcc (s390-*-linux-*, [...]): Switch to new-style tm_file specification.
* config.gcc (s390-*-linux-*, s390x-*-linux*): Switch to
new-style tm_file specification.  Specify correct tm_p_file,
md_file, and out_file for s390x.

* config/s390/linux.h, linux64.h:  Don't include other target
macro header files.  Now handled via tm_file.

* config/s390/linux.h, s390.h:  (IEEE_FLOAT, TARGET_IEEE_FLOAT,
TARGET_IBM_FLOAT): Move from linux.h to s390.h to ensure they
are defined before use.

From-SVN: r45685
2001-09-18 21:51:53 +00:00
Kaveh R. Ghazi 69ee340e99 libiberty.h (concat, [...]): Improve comments.
* libiberty.h (concat, concat_length, concat_copy, concat_copy2,
	ACONCAT): Improve comments.

From-SVN: r45683
2001-09-18 20:07:31 +00:00
Eric Christopher 518b566fe6 mips.c (mips_asm_file_start): Conditionalize Elf code generation only for Gnu assembler.
Tue Sep 18 09:51:11 2001  Eric Christopher  <ecechristo@redhat.com>

        * config/mips/mips.c (mips_asm_file_start): Conditionalize Elf
        code generation only for Gnu assembler.

From-SVN: r45681
2001-09-18 17:37:48 +00:00
Catherine Moore 8086b53c76 * config/stormy16 (LIB_SPEC): Remove -lnosys.
From-SVN: r45680
2001-09-18 13:02:28 -04:00
Richard Sandiford 4241b63781 * g++.dg/eh/registers1.C: New test case.
From-SVN: r45679
2001-09-18 16:26:41 +00:00
Richard Sandiford 1cbfdb1f9c mips.c (mips_frame_set): New.
* config/mips/mips.c (mips_frame_set): New.
	(mips_emit_frame_related_store): When storing two 32-bit FPRs, use
	a parallel frame-related expression with a set for each register.

From-SVN: r45678
2001-09-18 16:24:32 +00:00
Alan Modra b9bc4bf6de * objalloc.h (OBJALLOC_ALIGN): Define using offsetof.
From-SVN: r45677
2001-09-18 23:09:40 +09:30
Philip Blundell d71ebc326b lib1funcs.asm (L_dvmd_lnx): Don't rely on kernel header files.
2001-09-18  Philip Blundell  <philb@gnu.org>

	* config/arm/lib1funcs.asm (L_dvmd_lnx): Don't rely on kernel
	header files.

From-SVN: r45674
2001-09-18 10:02:37 +00:00
GCC Administrator a45ea23b3d Daily bump.
From-SVN: r45672
2001-09-18 07:16:10 +00:00
Andreas Jaeger e64c46ce50 parse.y: Use VA_OPEN/VA_CLOSE/VA_FIXEDARG throughout.
* parse.y: Use VA_OPEN/VA_CLOSE/VA_FIXEDARG throughout.
	* jv-scan.c: Likewise.

From-SVN: r45671
2001-09-18 07:22:40 +02:00
Dale Johannesen 5dead3e5cd rs6000.h (FIXED_REGISTERS): Use FIXED_R2.
2001-09-17  Dale Johannesen  <dalej@apple.com>

        * config/rs6000/rs6000.h (FIXED_REGISTERS): Use FIXED_R2.
        * config/rs6000/aix.h (FIXED_R2): Define.
        * config/rs6000/darwin.h (FIXED_R2): Define.
        * config/rs6000/sysv4.h (FIXED_R2): Define.

From-SVN: r45669
2001-09-17 23:24:52 +00:00
Phil Edwards 5d5e5e4e42 configopts.html: HTML to XHTML change.
2001-09-17  Phil Edwards  <pme@gcc.gnu.org>

	* docs/html/configopts.html:  HTML to XHTML change.  Lowercase tags.
	* docs/html/documentation.html:  Likewise.
	* docs/html/explanations.html:  Likewise.
	* docs/html/install.html:  Likewise.
	* docs/html/17_intro/howto.html:  Likewise.
	* docs/html/18_support/howto.html:  Likewise.
	* docs/html/19_diagnostics/howto.html:  Likewise.
	* docs/html/20_util/howto.html:  Likewise.
	* docs/html/21_strings/howto.html:  Likewise.
	* docs/html/22_locale/codecvt.html:  Likewise.
	* docs/html/22_locale/ctype.html:  Likewise.
	* docs/html/22_locale/howto.html:  Likewise.
	* docs/html/22_locale/locale.html:  Likewise.
	* docs/html/22_locale/messages.html:  Likewise.
	* docs/html/23_containers/howto.html:  Likewise.
	* docs/html/24_iterators/howto.html:  Likewise.
	* docs/html/25_algorithms/howto.html:  Likewise.
	* docs/html/26_numerics/howto.html:  Likewise.
	* docs/html/27_io/howto.html:  Likewise.
	* docs/html/ext/howto.html:  Likewise.
	* docs/html/faq/index.html:  Likewise.
	* docs/html/faq/index.txt:  Regenerated.

From-SVN: r45668
2001-09-17 23:24:40 +00:00
Jeff Sturm 5c701bb10c except.c (dw2_build_landing_pads): New local clobbers_hard_regs.
* except.c (dw2_build_landing_pads): New local
	clobbers_hard_regs.  Emit an ASM_INPUT as a scheduling
	barrier after clobbers.  Fixes c++/4012.

From-SVN: r45667
2001-09-17 23:16:28 +00:00
Kaveh R. Ghazi c793eea7ab libiberty.h (concat_length, [...]): New.
include:
	* libiberty.h (concat_length, concat_copy, concat_copy2,
	libiberty_concat_ptr, ACONCAT): New.

libiberty:
	* concat.c (vconcat_length, vconcat_copy, concat_length,
	concat_copy, concat_copy2): New functions.
	(concat): Use vconcat_length/vconcat_copy.

gcc:
	* gcc.c (find_file): Use ACONCAT in lieu of alloca/strcpy/strcat.

From-SVN: r45664
2001-09-17 22:15:10 +00:00
Joseph Myers 63fb6fc7f8 dostage2, [...]: Remove obsolete files.
* dostage2, dostage3, listing, make-l2.com, makefile.vms,
	patch-apollo-includes, vmsconfig.com: Remove obsolete files.

From-SVN: r45661
2001-09-17 21:40:28 +01:00
Kaveh R. Ghazi c1d49704bc libiberty.h (ASTRDUP): New macro.
include:
	* libiberty.h (ASTRDUP): New macro.
	libiberty_optr, libiberty_nptr, libiberty_len): Declare.

libiberty:
	* alloca.c (libiberty_optr, libiberty_nptr, libiberty_len):
	Define.

gcc:
	* c-aux-info.c (affix_data_type): Use ASTRDUP in lieu of
	alloca/strcpy.

From-SVN: r45657
2001-09-17 18:48:45 +00:00
Neil Booth 14baae01f6 cpphash.h (_cpp_lex_direct): New.
* cpphash.h (_cpp_lex_direct): New.
	* cpplex.c (_cpp_lex_token): Update.
	(lex_token): Rename _cpp_lex_direct; lex into pfile->cur_token,
	and increment that pointer.
	* cppmacro.c (alloc_expansion_token): New.
	(lex_expansion_token): Lex macro expansion directly into
	macro storage.

From-SVN: r45656
2001-09-17 18:26:12 +00:00
Tom Tromey 7a91449ca1 re PR java/4189 (gcj generates bytecode for switch stmt that doesn't verify)
* jcf-write.c (generate_bytecode_insns) [SWITCH_EXPR]: Call
	NOTE_PUSH for single-case push.  Fixes PR java/4189.

From-SVN: r45655
2001-09-17 17:03:13 +00:00
Richard Henderson 17920efbf0 * gcc.dg/array-5.c: Fix VLA decomposition test.
From-SVN: r45654
2001-09-17 09:38:59 -07:00
GCC Administrator 28d86bb96b Daily bump.
From-SVN: r45651
2001-09-17 07:16:15 +00:00
Andreas Jaeger 63dc70a159 * jni.cc (array_from_valist): Use promoted types for va_arg.
From-SVN: r45650
2001-09-17 07:08:10 +02:00
Anthony Green 214bcb99a1 Add support for iso8859_1.
From-SVN: r45649
2001-09-17 02:28:53 +00:00
Brad Lucier 478c61b7e1 * Makefile.in: Make rtl-error.o depend on $(CONFIG_H).
From-SVN: r45648
2001-09-16 22:13:44 -04:00
Jan Hubicka 3c030e88e7 basic-block.h (free_bb_for_insn): Declare.
* basic-block.h (free_bb_for_insn): Declare.
	* bb-reorder.c (label_for_bb): Use block_label.
	(emit_jump_to_block_after): Remove.
	(insert_intra_1): Do not update block_for_insn.
	(insert_inter_bb_scope_notes): Likewise; update bb->end
	* cfg.c (free_bb_for_insn): New.
	(try_rediret_by_replacing_jump): Avoid set_block_for_new_insns call.
	(force_nonfallthru_and_redirect): Likewise; do not update BB boundaries.
	(commit_one_edge_insertion): Likewise.
	(commit_one_edge_insertion): Do not update BB boundary.
	(commit_edge_insertions): Do not call compute_bb_for_insn.
	* cfgbuild.c (find_basic_blocks): Do not free basic_block_for_insn.
	* cfgcleanup.c (merge_blocks_move_predecessor): Use reorder_insns_nobb.
	(merge_blocks_move_successor_nojumps): Likewise.
	(try_crossjump_to_edge): Do not update block_for_insn.
	* combine.c (combine_instructions): Remove compute_bb_for_insn call.
	* df.c (df_pattern_emit_later): Do not update BB boundary.
	(df_jump_pattern_emit_after): Likewise.
	(df_insn_move_before): Use emit_insn_before.
	* emit-rtl.c (try_split): Emit after trial to get bb boundary updated
	 properly.
	(add_insn_after, add_insn_before, emit_insns_after): Update BB
	boundaries and basic_block_for_insn.
	(reorder_insns_nobb): Rename from reorder_insns.
	(reorder_insns): New.
	(emit_block_insn_before, emit_block_insn_after): Kill.
	* flow.c (check_function_return_warnings): Do not call
	compute_bb_for_insn; Do not free basic_block_for_insn.
	(attempt_auto_inc): Do not update basic_block_for_insn.
	* function.c (emit_return_into_block): Likewise;
	do not update BB boundaries.
	* gcse.c (handle_avail_expr): Do not update basic_block_for_insn.
	(insert_insn_end_bb): Use emit_insn_before; Likewise.
	(pre_insert_copy_insn): Likewise.
	(update_ld_motion_notes): Likewise.
	(insert_insn_start_bb): Likewise.
	(replace_store_insn): Likewise.
	* ifcvt.c (noce_process_if_block): Likewise.
	(if_convert): Do not call compute_bb_for_insn.
	* lcm.c (optimize_mode_switching): Do not update BB boundaries.
	Use emit_insn_before and emit_insn_after.
	* recog.c (split_all_insns): Do not update BB boundaries;
	Do not call compute_bb_for_insn.
	(peephole2_optimize): Do not update BB boundaries.
	* reg-stack.c (emit_pop_insn): Use emit_insn_after and
	emit_insn_before.
	(emit_swap_insn): Likewise.
	(convert_regs_1): Likewise.
	* reload1.c (reload): Call compute_bb_for_insn.
	* rtl.h (reorder_insns_nobb): Declare.
	* ssa.c (rename_equivalent_regs): Use emit_insn_before.
	* toplev.c (rest_of_compilation): Call free_bb_for_insn
	at places CFG is invalidated; do not call compute_bb_for_insn.

	* cfg.c (expunge_block): Invalidate BB structure.

	* (merge_blocks_nomove): Update properly BLOCK_FOR_INSN
	array.

	* cfg.c (verify_flow_info): Verify the basic_block_for_insn array.

From-SVN: r45647
2001-09-16 20:21:30 +00:00
Neil Booth 345894b43f cpphash.h (_cpp_lex_token): Update prototype.
* cpphash.h (_cpp_lex_token): Update prototype.
	* cpplex.c (_cpp_lex_token): New prototype.
	* cpplib.c (skip_rest_of_line, check_eol, _cpp_handle_directive,
	lex_macro_node, read_flag, do_pragma_poison): Update.
	* cppmacro.c (cpp_get_token, parse_params,
	lex_expansion_token): Update.

From-SVN: r45646
2001-09-16 13:44:29 +00:00
Neil Booth 18a9d8ff7f cppmain.c (scan_translation_unit): Don't worry about putting a space after hashes.
* cppmain.c (scan_translation_unit): Don't worry about
	putting a space after hashes.
	* cpplib.c (directive_diagnostics): New.
	(_cpp_handle_directive): Update to use directive_diagnostics.
	(run_directive): Don't toggle prevent_expansion.
	(do_line): Backup in case of the line extension.
	* cpplib.h (cpp_lexer_pos): Remove.
	* cppmacro.c (_cpp_create_definition): Precede a leading #
	with whitespace.

	* gcc.dg/cpp/line5.c: New testcase.

From-SVN: r45645
2001-09-16 11:23:56 +00:00
GCC Administrator 27553bf325 Daily bump.
From-SVN: r45644
2001-09-16 07:16:41 +00:00
Richard Henderson 3f85558f24 * c-typeck.c (comptypes): Handle zero-length arrays properly.
From-SVN: r45641
2001-09-15 17:48:52 -07:00
Roman Lechtchinsky c6c04fcab3 * c-common.c (c_promoting_integer_type_p): Handle ?Imode types.
From-SVN: r45640
2001-09-15 12:47:38 -07:00
Gabriel Dos Reis a1bda5f155 Make-lang.in (cp/error.o): Depend on real.h
* Make-lang.in (cp/error.o): Depend on real.h
        * error.c: #include "real.h"

From-SVN: r45639
2001-09-15 19:47:34 +00:00
Neil Booth 48bbe8e612 * gcc.dg/cpp/macro9.c: Update to make lucky passes harder.
From-SVN: r45637
2001-09-15 18:42:58 +00:00
Neil Booth 3617ff1e5d * gcc.dg/cpp/macro9.c: New test.
From-SVN: r45636
2001-09-15 18:38:46 +00:00
Aldy Hernandez 0ea009fc53 * 980223.c: Change type of addr from long to char *.
From-SVN: r45635
2001-09-15 18:36:40 +00:00
Neil Booth 69e47210d9 re PR preprocessor/3571 (cpp -traditional inserts line breaks)
PR preprocessor/3571
	* tradcpp.c (handle_directive): Skip non-vertical space.

From-SVN: r45633
2001-09-15 18:16:01 +00:00
Neil Booth f0581dc714 cppmain.c (setup_callbacks): Set line callback only if outputting preprocessed source.
* cppmain.c (setup_callbacks): Set line callback only
	if outputting preprocessed source.

From-SVN: r45632
2001-09-15 16:33:43 +00:00
Kaveh R. Ghazi cb6edbcb19 collect2.c (main): Const-ification.
* collect2.c (main): Const-ification.
	* gcc.c (translate_options, process_command): Use xstrdup in
	lieu of xmalloc/strcpy.
	(main): Use concat in lieu of xmalloc/strcpy/strcat.
cp:
	* mangle.c (mangle_conv_op_name_for_type): Use concat in lieu of
	xmalloc/strcpy/strcat.

From-SVN: r45631
2001-09-15 14:04:47 +00:00
Gerald Pfeifer 461c166993 Remove conflict indicators committed as part of revision 1.11335 by
echristo on 15-Sep-01.

From-SVN: r45630
2001-09-15 11:51:23 +00:00
Roman Lechtchinsky 068e571426 install.texi (Specific, [...]): Fix example.
* doc/install.texi (Specific, alphaev5-cray-unicosmk*): Fix
	example.

From-SVN: r45629
2001-09-15 11:47:05 +00:00
Neil Booth 65813f56c9 * scan-decls.c (scan_decls): Fix typo.
From-SVN: r45628
2001-09-15 11:09:38 +00:00
Neil Booth 5041042620 cpphash.h (struct cpp_reader): Remove lexer_pos, directive_pos.
* cpphash.h (struct cpp_reader): Remove lexer_pos, directive_pos.
	Split mlstring_pos into mls_line and mls_col.
	* cppinit.c (cpp_create_reader): Initialize line to 1.
	(cpp_destroy): Free tokenruns.
	(push_include): Don't update lexer_pos.
	* cpplex.c (unterminated, parse_string): Update.
	(lex_token): Don't update lexer_pos, update.
	* cpplib.c (if_stack): Save line instead of line + col.
	(start_directive, _cpp_do__Pragma, do_else, do_elif,
	push_conditional, _cpp_pop_buffer): Update.
	* cppmacro.c (funlike_invocation_p): Don't save lexer_pos.
	(_cpp_create_definition): Update.

From-SVN: r45627
2001-09-15 10:18:03 +00:00
GCC Administrator 6131fd23f5 Daily bump.
From-SVN: r45626
2001-09-15 07:16:39 +00:00
Eric Christopher 6047ddc8da abi64.h: Add support for MEABI.
2001-09-15  Eric Christopher  <echristo@redhat.com>

	* config/mips/abi64.h: Add support for MEABI.

From-SVN: r45624
2001-09-15 02:09:52 +00:00
Eric Christopher 0e5a4ad871 mips.md: Add unspec #2.
2001-09-15  Eric Christopher  <echristo@redhat.com>

	* config/mips/mips.md: Add unspec #2.
	(reload_indi): Use.
	(reload_outdi): Ditto.
	(reload_outsi): Ditto.
	(HILO_delay): New.

2001-09-15  Eric Christopher  <echristo@redhat.com>
	    Jason Eckhardt  <jle@redhat.com>

	* config.gcc: Add mipsisa32 target and mipsisa32-linux target.
	* config/mips/isa32-linux.h: New file.
	* config/mips/isa3264.h: Ditto.
	* config/mips/mips-protos.h: Add mips_hard_regno_nregs.
	* config/mips/mips.c (mips_hard_regno_nregs): Move here from mips.h.
	(output_block_mode): Support MEABI.
	(function_arg): Ditto. Fix floating point arg passing.
	(mips_va_start): Ditto.
	(override_options): Add isas 32 and 64, meabi, mips32 and mips64
	processors.
	(mips_asm_file_start): Add new section to pass abi to gdb.
	(function_arg_pass_by_reference): Support MEABI.
	(mips_parse_cpu): Support mips32 and mips64 processors.
	* config/mips/mips.h: Support ABI_MEABI, TARGET_MIPS4KC,
	TARGET_MIPS5KC.  Support isa32 and isa64.
	(processor_type): Add r4kc, r5kc, r20kc.
	(GENERATE_MULT3_SI): New.
	(GENERATE_MULT3_DI): Ditto.
	(GENERATE_MULT3): Remove.
	(ISA_HAS_64BIT_REGS): Add isa == 64.
	(ISA_HAS_8CC): Add mips_isa = 32 and 64.
	(ISA_HAS_MADD_MSUB): New.
	(ISA_HAS_CLZ_CLO): Ditto.
	(ISA_HAS_DCLZ_DCLO): Ditto.
	(ABI_GAS_ASM_SPEC): New.
	(GAS_ASM_SPEC): Use. Add support for mips32, mips64.
	(ASM_SPEC): Ditto.
	(LINK_SPEC): Ditto.
	(SUBTARGET_CC1_SPEC): Ditto.
	(SUBTARGET_CPP_SIZE_SPEC): Ditto.
	(PAD_VARARGS_DOWN): Support MEABI.
	(HARD_REGNO_NREGS): Move to mips.c.
	(ASM_OUTPUT_IDENT): Add #undef.
	* config/mips/mips.md: Add r4kc, r5kc, r20kc.
	(mulsi3): Use GENERATE_MULT3_SI.
	(mulsi3_mult3): Ditto.  Support mips32, mips64.
	(mul_acc_si): Use ISA_HAS_MADD_MSUB.
	(mul_sub_si): New pattern.
	(unnamed splitters): New.
	(muldi3): Use GENERATE_MULT3_DI.
	(muldi3_internal2): Ditto.
	(movdicc): Support mips32.
	* config/mips/t-isa3264: New file.

From-SVN: r45623
2001-09-15 02:03:14 +00:00