Commit Graph

43849 Commits

Author SHA1 Message Date
Tom Tromey
ac57655a39 * Make-lang.in (java/lang.o): Use LANGHOOKS_DEF_H.
From-SVN: r54508
2002-06-11 14:58:09 +00:00
Ulrich Weigand
df14489af1 s390.md (movsi): Only use floating point register alternatives when operands are already fprs.
* config/s390/s390.md (movsi): Only use floating point
	register alternatives when operands are already fprs.
	(movdi_31, movdi_64): Likewise.

From-SVN: r54506
2002-06-11 14:47:04 +00:00
Tom Tromey
e9024f7f38 * libjava.compile/PR6865.java: New file. For PR java/6865.
From-SVN: r54505
2002-06-11 14:46:11 +00:00
Tom Tromey
950ac1d321 re PR java/6865 (gcj: segmentation fault on incorrect input)
* parse.y (method_header): Give error message in all cases.
	Fixes PR java/6865.

From-SVN: r54504
2002-06-11 14:43:54 +00:00
Tom Tromey
1632a23685 * libjava.lang/PR6520.java: Fixed typo.
From-SVN: r54503
2002-06-11 14:38:44 +00:00
David S. Miller
6f9703afa5 emit-rtl.c (try_split): Do not abort on non-INSN_P.
2002-06-11  David S. Miller  <davem@redhat.com>

	* emit-rtl.c (try_split): Do not abort on non-INSN_P.
	Only run RTX equality checks on INSN_P rtl.

From-SVN: r54502
2002-06-11 07:24:45 -07:00
Ulrich Weigand
b2ccb744c6 s390.md (reload_base, ltorg): Remove.
* config/s390/s390.md (reload_base, ltorg): Remove.
	* s390.c (s390_stop_dump_lit_p, s390_dump_literal_pool,
	s390_asm_output_pool_prologue, s390_pool_start_insn): Remove.
	* s390-protos.h (s390_stop_dump_lit_p, s390_dump_literal_pool,
	s390_asm_output_pool_prologue): Likewise.
	* s390.h (s390_pool_start_insn): Likewise.

	* s390.c (s390_output_symbolic_const): Remove support for
	old-style pool chunks.
	(s390_function_epilogue): Likewise.
	(s390_output_constant_pool): Likewise.  Also, fix incorrect
	alignment for 64-bit literal pools.
	(print_operand_address): Remove 'y' and 'Y' format flags.
	* s390.h (ASM_OUTPUT_POOL_PROLOGUE): Remove support for
	old-style pool chunks.
	(ASM_OUTPUT_SPECIAL_POOL_ENTRY): Likewise.
	(ASM_OUTPUT_POOL_EPILOGUE): Remove.
	(S390_CHUNK_MAX, S390_CHUNK_OV, S390_POOL_MAX): Remove.

	* s390.c (consttable_operand): New function.
	* s390-protos.h (consttable_operand): Declare it.
	* s390.h (PREDICATE_CODES): Add consttable_operand.
	* s390.md (consttable_qi, consttable_hi, consttable_si, consttable_di,
	consttable_sf, consttable_df, pool_start_31, pool_end_31,
	pool_start_64, pool_end_64, reload_base, reload_base2): New insns.
	* s390.c (struct constant, struct constant_pool): New data types.
	(constant_modes, gen_consttable): New variables.
	(s390_start_pool, s390_end_pool, s390_add_pool,
	s390_dump_pool, s390_free_pool): New functions.
	(s390_chunkify_pool): Completely reimplement literal pool
	overflow handling.

	* s390.c (s390_pool_overflow): New variable.
	* s390.h (s390_pool_overflow): Declare it.
	* s390.md (cjump, icjump): Use it to adapt length for out-of-range
	jumps in literal pool overflow situations.

	* s390.c (s390_decompose_address): Accept new-style pool chunk offsets.
	(s390_frame_info): Account for possible use of RETURN_REGNUM
	by new literal pool overflow code.
	(s390_emit_prologue): Likewise.

From-SVN: r54500
2002-06-11 13:53:02 +00:00
David S. Miller
2f937369fa Delete SEQUENCE rtl usage outside of reorg and ssa passes.
2002-06-05  David S. Miller  <davem@redhat.com>

	Delete SEQUENCE rtl usage outside of reorg and ssa passes.
	* rtl.h (gen_sequence, emit_insns, emit_insns_before,
	emit_insns_before_scope, emit_insns_after,
	emit_insns_after_scope): Delete declaration.
	* ada/misc.c (insert_code_for): Use emit_insn* instead of
	emit_insns_foo.
	* config/alpha/alpha.c (alpha_set_memflags_1): Abort on SEQUENCE.
	(alpha_set_memflags): Fix comment.
	(set_frame_related_p): Use get_insns instead of gen_sequence.
	* config/alpha/alpha.md (setjmp receiver splitter): Avoid
	emitting no insns.
	* config/arm/arm.c (arm_finalize_pic): Use get_insns instead of
	gen_sequence.
	(arm_gen_load_multiple, arm_gen_store_multiple): Likewise.
	* config/fr30/fr30.c (fr30_move_double): Likewise.
	* config/i386/i386.c (ix86_expand_int_movcc, ix86_expand_movstr):
	Likewise.
	* config/ia64/ia64.c (spill_restore_mem): Likewise.
	* config/ia64/ia64.md (conditional move spliiter): Avoid emitting
	no insns.
	* config/m32r/m32r.c (gen_split_move_double): Use get_insns
	instead of gen_sequence.
	* config/mips/mips.c (embedded_pic_fnaddr_reg): Likewise.
	(mips_expand_prologue, mips16_gp_pseudo_reg): Likewise.
	* config/sh/sh.c (sh_need_epilogue): Likewise.
	* config/sparc/sparc.md (current_function_calls_alloca, flat): New
	attributes.
	(setjmp pattern and split): Use them to avoid splitter which emits
	no RTL.
	* genattrtab.c (main): Emit include of function.h
	* config/stormy16/stormy16.c (xstormy16_split_cbranch): Use
	get_insns instead of gen_sequence.
	* config/cris/cris.c (cris_split_movdx): Likewise.
	* emit-rtl.c (emit_insns*): Kill.
	(try_split): Expect insn list instead of SEQUENCE.
	(make_jump_insn_raw, make_call_insn_raw): Fix comments.
	(emit_*insn*): Reimplement to work with INSN lists and PATTERNs.
	Make them abort if a SEQUENCE is given and RTL checking is
	enabled.
	(emit_*_scope): Don't forget to set scope on final insn.
	(gen_sequence): Move from here...
	* ssa.c (gen_sequence): To here as private function.
	* builtins.c (expand_builtin_apply_args): Use emit_insn_foo, fix
	comments.
	(expand_builtin_return, expand_builtin_mathfn): Likewise.
	(expand_builtin_strlen): Use get_insns instead of gen_sequence.
	(expand_builtin_saveregs): Use emit_insn_foo, fix comments.
	(expand_builtin_expect_jump): Use get_insns and fix comments.
	* calls.c (try_to_integrate): Use emit_insn_foo.
	(expand_call, emit_library_call_value_1): Likewise.
	* expr.c (emit_queue): Handle insn lists instead of SEQUENCE.
	(emit_move_insn_1): Use get_insns instead of gen_sequence.
	(expand_expr): Use emit_insn_foo.
	* cfgrtl.c (commit_one_edge_insertion): Use emit_insn_foo.
	* except.c (build_post_landing_pads): Likewise.
	* flow.c (attempt_auto_inc): Likewise.
	* stmt.c (expand_fixup, fixup_gotos, expand_nl_handler_label,
	expand_nl_goto_receivers, expand_decl_cleanup): Likewise.
	* function.c (fixup_var_refs_insn): Use get_insns instead of
	gen_sequence.
	(fixup_var_refs_1): Likewise and expect insn list from gen_foo.
	(fixup_memory_subreg): Use get_insns instead of gen_sequence.
	(fixup_stack_1, purge_addressof_1, expand_main_function,
	get_arg_pointer_save_area): Likewise.
	(optimize_bit_field, instantiate_virtual_regs_1, assign_parms,
	expand_function_end): Use emit_insn_foo.
	(record_insns, keep_stack_depressed): Work with insn list instead
	of SEQUENCE, fix comments.
	* ifcvt.c (noce_emit_store_flag, noce_try_store_flag,
	noce_try_store_flag_constants, noce_try_store_flag_inc,
	noce_try_store_flag_mask, noce_emit_cmove, noce_try_cmove_arith,
	noce_try_minmax, noce_try_abs): Use emit_insn_foo.
	(noce_process_if_block): Use get_insns instead of gen_sequence.
	* optabs.c (add_equal_note): Work with insn list, fix comments.
	(expand_binop): Expect insn list from GEN_FCN(), use emit_insn_foo.
	(expand_unop, expand_complex_abs, expand_unop_insn,
	expand_no_conflict_block): Likewise.
	(gen_move_insn): Use get_insns instead of gen_sequence.
	(gen_cond_trap): Likewise.
	* integrate.c (copy_rtx_and_substitute): Likewise.
	(emit_initial_value_sets): Use emit_insn_foo.
	* reload1.c (emit_output_reload_insns, emit_reload_insns): Likewise.
	(fixup_abnormal_edges): Avoid losing REG_NOTES more intelligently
	now that RTL generators give insn lists.
	* sibcall.c (replace_call_placeholder): Use emit_insn_foo.
	* doloop.c (doloop_modify, doloop_modify_runtime): Use get_insns
	instead of gen_sequence.
	(doloop_optimize): Work with insn lists instead of SEQUENCE rtl.
	* explow.c (emit_stack_save, emit_stack_restore): Use get_insns
	instead of gen_sequence.
	* loop.c (move_movables, emit_prefetch_instructions,
	gen_add_mult, check_dbra_loop, gen_load_of_final_value):
	Likewise.
	(loop_regs_update): Work with insn list instead of SEQUENCE rtl.
	(product_cheap_p): Likewise, and add commentary about RTL wastage
	here.
	* lcm.c (optimize_mode_switching): Use get_insns instead of
	gen_sequence.
	* profile.c (gen_edge_profiler): Likewise.
	* regmove.c (copy_src_to_dest): Likewise.
	* reg-stack.c (compensate_edge): Likewise and fix comment.
	* gcse.c (process_insert_insn): Likewise.
	(insert_insn_end_bb): Work with insn list instead of SEQUENCE rtl.
	* jump.c (delete_prior_computation): Update comment.
	* genemit.c (gen_expand, gen_split, main): Use get_insns instead
	of gen_sequence, update comments to match.
	* recog.c (peephole2_optimize): Work with insn lists instead of
	SEQUENCE rtl.
	* sched-vis.c (print_pattern): Abort on SEQUENCE.
	* unroll.c (unroll_loop, find_splittable_givs, final_giv_value):
	Use get_insns instead of gen_sequence.
	(copy_loop_body): Likewise and don't emit dummy NOTE.
	* genrecog.c: Don't mention SEQUENCE rtl in comments.
	* combine.c (try_combine): Expect insn lists from split generator.
	* reorg.c (relax_delay_slots): Emit SEQUENCE into insn list by
	hand.

From-SVN: r54497
2002-06-11 05:22:48 -07:00
Roger Sayle
43cf10b56c cfgbuild.c: Update copyright years.
2002-06-11  Roger Sayle  <roger@eyesopen.com>
	    Andreas Jaeger <aj@suse.de>

	* cfgbuild.c: Update copyright years.

Co-Authored-By: Andreas Jaeger <aj@suse.de>

From-SVN: r54495
2002-06-11 11:21:30 +00:00
Andreas Schwab
1062f15a80 * config/m68k/m68k.h (PREDICATE_CODES): Define.
From-SVN: r54494
2002-06-11 08:52:24 +00:00
Eric Christopher
ce3649d27a tm.texi (Run-time Target): Add comment about flag_iso and strict ANSI.
2002-06-11  Eric Christopher  <echristo@redhat.com>

	* doc/tm.texi (Run-time Target): Add comment about flag_iso
	and strict ANSI.
	* config/mips/ecoff.h (CPP_PREDEFINES): Remove.
	* config/mips/ecoffl.h: Ditto.
	* config/mips/elf64.h (SUBTARGET_CPP_SPEC): Remove.
	(CPP_PREDEFINES): Ditto.
	* config/mips/elfl64.h: Ditto.
	* config/mips/elfl.h: Ditto.
	* config/mips/iris3.h (CPP_PREDEFINES, SUBTARGET_CPP_SPEC): #if 0
	out until irix header consolidation.
	* config/mips/iris5.h (CPP_PREDEFINES, SUBTARGET_CPP_SPEC): Replace
	with SUBTARGET_OS_CPP_BUILTINS.
	* config/mips/iris6.h: Ditto.
	(CPLUSPLUS_CPP_SPEC): Remove.
	* config/mips/linux.h: Ditto.
	* config/mips/netbsd.h: Ditto.
	* config/mips/openbsd.h: Ditto.
	* config/mips/rtems.h: Ditto.
	* config/mips/rtems64.h: Ditto.
	* config/mips/sni-svr4.h: Ditto.
	* config/mips/mips.h (ISA_MIPS1, ISA_MIPS2, ISA_MIPS3, ISA_MIPS4,
	ISA_MIPS32, ISA_MIPS64): New defines.
	(GENERATE_MULT3_SI, HAVE_SQRT_P, ISA_HAS_64BIT_REGS,
	ISA_HAS_BRANCHLIKELY, ISA_HAS_CONDMOVE, ISA_HAS_8CC, ISA_HAS_FP4,
	ISA_HAS_COND_TRAP, ISA_HAS_MADD_MSUB, ISA_HAS_NMADD_NMSUB,
	ISA_HAS_CLZ_CLO, ISA_HAS_DCLZ_DCLO): Use.
	(TARGET_CPU_CPP_BUILTINS): Define.
	(CPP_PREDEFINES, LONG_MAX_SPEC, CPP_FPR_SPEC, CPP_SPEC): Remove.
	* config/mips/mips.md (mulsi3_mult3): Use ISA_MIPS32/64.
	(movdicc): Remove check for ISA_MIPS32.
	 (bunordered, bordered, bungt, bunlt, buneq, bunge, bunle,
	sunordered_df, sunordered_sf, sordered_df, sordered_sf,
	sunlt_df, sunlt_sf, sungt_df, sungt_sf, suneq_df, suneq_sf, sunge_df,
	sunge_sf, sunle_df, sunle_sf): New patterns.

From-SVN: r54493
2002-06-11 07:26:38 +00:00
GCC Administrator
f5f35f6a37 Daily bump.
From-SVN: r54492
2002-06-11 07:17:57 +00:00
Neil Booth
bc3437ba5b * Forgotten commit.
From-SVN: r54486
2002-06-11 05:37:40 +00:00
Neil Booth
1a76916c78 Makefile.in: Update cppmain.o.
* Makefile.in: Update cppmain.o.
	* cpphash.h (struct cpp_reader): Move some members to a
	nested structure.
	(trad_line): Rename saved_line.
	(_cpp_read_logical_line_trad): Update.
	(_cpp_remove_overlay): New.
	* cppinit.c (cpp_create_reader): No need to set saved_line.
	(cpp_destroy): Update.
	(cpp_read_main_file): Only overlay if compiling.
	* cpplex.c (continue_after_nul): Return false if in directive.
	* cpplib.c (EXPAND): New.
	(directive_table, SEEN_EOL): Update.
	(end_directive): Remove overlay if traditional; don't skip
	line in traditional #define.
	(prepare_directive_trad): New.
	(_cpp_handle_directive, run_directive): Update for traditional
	directives.
	(lex_macro_node): Simplify, don't use lex_identifier_trad.
	* cpplib.h (struct options): Add preprocess_only.
	* cppmain.c: Don't include intl.h.
	(cpp_preprocess_file): Set options->preprocess_only.
	(scan_translation_unit_trad): Fix, and print line numbers.
	* cpptrad.c (check_output_buffer, lex_identifier, scan_parameters,
	maybe_start_funlike, scan_out_logical_line, replace_args_and_push,
	save_replacement_text, _cpp_create_trad_definition): Update for
	variable renaming.
	(_cpp_overlay_buffer): Save line number.
	(_cpp_remove_overlay): Rename from restore_buff, restore line.
	(_cpp_read_logical_line_trad): Don't handle overlays here.
	(scan_out_logical_line): Process directives.

From-SVN: r54485
2002-06-11 05:36:17 +00:00
Danny Smith
b25bb36a36 gthr-win32.h: Wrap all functions in extern "C".
* gthr-win32.h: Wrap all functions in extern "C".
	(__gthread_key_t): Typedef as unsigned long,
	not win32 DWORD.
	(__GTHREAD_ONCE_INIT): Use 0, not win32 FALSE.
	(__gthread_mutex_t): Typedef as void*, not win32 HANDLE.
	(__gthr_win32_once, __gthr_win32_key_create,
	__gthr_win32_key_delete, __gthr_win32_getspecific,
	__gthr_win32_setspecific, __gthr_win32_mutex_init_function,
	__gthr_win32_mutex_lock,__gthr_win32_mutex_trylock,
	__gthr_win32_mutex_unlock): Declare.
	(__gthread_once,__gthread_key_create,
	__gthread_key_delete, __gthread_getspecific,
	__gthread_setspecific, __gthread_mutex_init_function,
	__gthread_mutex_lock,__gthread_mutex_trylock,
	__gthread_mutex_unlock): Call corresponding
	__gthr_win32_* extern implementations if #defined
	__GTHREAD_HIDE_WIN32API.
	* config/i386/t-mingw32 (LIB2FUNCS_EXTRA): Set to
	$(srcdir)/config/i386/gthr-win32.c
	* config/i386/gthr-win32.c: New implementation file.
	(__gthr_win32_once, __gthr_win32_key_create,
	__gthr_win32_key_delete, __gthr_win32_getspecific,
	__gthr_win32_setspecific, __gthr_win32_mutex_init_function,
	__gthr_win32_mutex_lock,__gthr_win32_mutex_trylock,
	__gthr_win32_mutex_unlock): New functions, based on
	static inlines in gthr-win32.h.

From-SVN: r54484
2002-06-11 05:25:44 +00:00
Bob Wilson
a69c385e73 xtensa.c (override_options): Don't warn about using -fpic or -fPIC when PIC is enabled by default.
* config/xtensa/xtensa.c (override_options): Don't warn about
        using -fpic or -fPIC when PIC is enabled by default.

From-SVN: r54483
2002-06-11 03:50:59 +00:00
Tom Tromey
d8f19ccfab * libjava.lang/PR6520.java: New file. For PR java/6520.
From-SVN: r54482
2002-06-11 03:50:30 +00:00
Bob Wilson
56a28102ba 20001226-1.x: Only xfail for Xtensa targets if not optimizing.
* gcc.c-torture/compile/20001226-1.x: Only xfail for Xtensa
        targets if not optimizing.

From-SVN: r54481
2002-06-11 03:38:32 +00:00
Roger Sayle
e654730d58 * toplev.c (rest_of_compilation): Revert flag_if_conversion change.
From-SVN: r54480
2002-06-11 03:19:58 +00:00
Zack Weinberg
a538146672 Makefile.in (MACHMODE_H): Add @extra_modes_file@.
* Makefile.in (MACHMODE_H): Add @extra_modes_file@.
	* configure.in: If $srcdir/config/${cpu_type}/${cpu_type}-modes.def
	exists, substitute its pathname as @extra_modes_file@, define
	EXTRA_MODES_FILE to be an appropriate string to #include it
	with, and define EXTRA_CC_MODES to 1.

	* machmode.def: Update comments.  Include EXTRA_MODES_FILE if
	it's defined.  Get rid of redundancy in calling sequence for
	CC; don't use it to define CCmode, to avoid a warning.
	* libgcc2.c: Include symcat.h for the sake of machmode.def.

	* arc-modes.def, arm-modes.def, c4x-modes.def, i386-modes.def,
	i960-modes.def, ia64-modes.def, m88k-modes.def, mmix-modes.def,
	pa-modes.def, pdp11-modes.def, rs6000-modes.def, sparc-modes.def:
	New files.
	* arc.h, arm.h, c4x.h, i386.h, i960.h, ia64.h, m88k.h, mmix.h,
	pa.h, pdp11.h, rs6000.h, sparc.h: Don't define EXTRA_CC_MODES.

	* doc/sourcebuild.texi, doc/tm.texi: Document new scheme for
	defining extra CC modes.

From-SVN: r54478
2002-06-10 22:35:56 +00:00
Roger Sayle
852c6ec7ac cfgrtl.c (create_basic_block_structure): Remove index argument and use last_basic_block++ instead.
2002-06-10  Roger Sayle  <roger@eyesopen.com>
	    Andreas Jaeger <aj@suse.de>

	* cfgrtl.c (create_basic_block_structure):  Remove index argument
	and use last_basic_block++ instead.  (create_basic_block): Update.
	* cfgbuild.c (find_basic_blocks_1): Likewise.

	* cfgrtl.c (compute_bb_for_insn): Remove unused "max" argument.
	* haifa-sched.c (sched_init): Update compute_bb_for_insn caller.
	* sched-ebb.c (schedule_ebbs): Likewise.
	* sched-rgn.c (schedule_insns): Likewise.
	* ssa-ccp.c (ssa_const_prop): Likewise.
	* ssa-dcs.c (ssa_eliminate_dead_code): Likewise.
	* toplev.c (rest_of_compilation): Likewise.
	* config/ia64/ia64.c (ia64_reorg): Likewise.

Co-Authored-By: Andreas Jaeger <aj@suse.de>

From-SVN: r54477
2002-06-10 22:33:08 +00:00
Roger Sayle
60c86d4ee9 simplify-rtx.c (simplify_replace_rtx): Allow replacement of matching registers.
* simplify-rtx.c (simplify_replace_rtx): Allow replacement
	of matching registers.

From-SVN: r54476
2002-06-10 22:29:14 +00:00
Roger Sayle
9543a9d2d4 toplev.c (rest_of_compilation): Disable early if-conversion pass.
* toplev.c (rest_of_compilation): Disable early if-conversion pass.
	* gcse.c (bypass_conditional_jumps): Fix typo in setcc test.

From-SVN: r54475
2002-06-10 22:26:45 +00:00
Hans-Peter Nilsson
38e1861963 mmix.h: Improve comments.
* config/mmix/mmix.h: Improve comments.
	(CPP_SPEC, CPP_PREDEFINES): Don't define.
	(TARGET_CPU_CPP_BUILTINS): Define.
	(CANONICALIZE_COMPARISON): Don't define, replace with comment.
	(PREDICATE_CODES) <"mmix_reg_or_8bit_or_256_operand">: Remove
	unused predicate.
	* config/mmix/mmix.c (MMIX_OUTPUT_REGNO): Add cast to avoid
	compiler warning.
	(mmix_constant_address_p): Remove another
	redundant test before case.
	(mmix_canonicalize_comparison): Remove unused function.
	(mmix_print_operand_address): Don't test and adjust for operand in
	non-canonical format.
	(mmix_reg_or_8bit_or_256_operand): Remove unused predicate.
	(mmix_gen_compare_reg): Don't use CANONICALIZE_COMPARISON.

From-SVN: r54474
2002-06-10 22:23:03 +00:00
Zack Weinberg
ac17cd8f7d m32r.h: Don't define SELECT_CC_MODE.
* config/m32r/m32r.h: Don't define SELECT_CC_MODE.
	* config/m32r/m32r-protos.h: Don't prototype m32r_select_cc_mode.
	* config/m32r/m32r.c: Don't define m32r_select_cc_mode.
	(gen_compare): Use CCmode unconditionally.

From-SVN: r54473
2002-06-10 22:20:47 +00:00
Jakub Jelinek
7b668f9ed0 re PR rtl-optimization/6759 (ice when compiling 32 bit sparc code)
PR optimization/6759
	* cse.c (cse_insn): Fold src_eqv just once, store it folded back into
	the REQ_EQUAL note.

	* g++.dg/opt/cse1.C: New test.

From-SVN: r54469
2002-06-11 00:07:45 +02:00
Jakub Jelinek
85d490584b re PR c/6660 (Typedeffed unnamed structs/unions do not compile with gcc-3.1)
PR c/6660
	* c-decl.c (grokfield): Allow user defined types if they declare
	structs or unions for unnamed fields.

	* gcc.dg/20020527-1.c: New test.

From-SVN: r54466
2002-06-10 23:52:43 +02:00
Jakub Jelinek
50f30e6b07 re PR c/6809 (GCC 3.1 cc1 crashes if -fverbose-asm is specified)
PR c/6809
	* print-rtl.c (print_mem_expr): Don't crash on unnamed fields.

	* gcc.dg/20020530-1.c: New test.

From-SVN: r54463
2002-06-10 23:50:10 +02:00
Jakub Jelinek
156755acc0 re PR rtl-optimization/6842 (internal compiler error using MMX intrinsics with optimization)
PR optimization/6842
	* combine.c (combine_simplify_rtx) [SUBREG]: Don't ICE if VOIDmode
	operand subreg cannot be simplified.

	* gcc.dg/20020531-1.c: New test.

From-SVN: r54462
2002-06-10 23:47:45 +02:00
Jakub Jelinek
5d056e9be5 varasm.c (const_hash): Handle FDESC_EXPR like ADDR_EXPR.
* varasm.c (const_hash): Handle FDESC_EXPR like ADDR_EXPR.
	(compare_constant): Likewise.
	(output_addressed_constants): Likewise.

	* g++.dg/opt/vt1.C: New test.

From-SVN: r54459
2002-06-10 23:43:26 +02:00
Jakub Jelinek
2bf87216b2 cfgcleanup.c (try_optimize_cfg): Make sure merge_blocks doesn't merge bb with itself.
* cfgcleanup.c (try_optimize_cfg): Make sure merge_blocks doesn't
	merge bb with itself.

	* gcc.c-torture/compile/20020605-1.c: New test.

From-SVN: r54456
2002-06-10 23:36:15 +02:00
Richard Henderson
135fd2d860 alpha.md (builtin_zap): Fix thinkos expanding mask.
* config/alpha/alpha.md (builtin_zap): Fix thinkos expanding mask.
        (builtin_zapnot): Likewise.

From-SVN: r54454
2002-06-10 14:04:29 -07:00
Richard Henderson
21442990fd ev5.md: Don't combine shift and mvi insns in one reservation.
* config/alpha/ev5.md: Don't combine shift and mvi insns in one
        reservation.

From-SVN: r54453
2002-06-10 14:03:33 -07:00
Loren J. Rittle
158d04aa28 acinclude.m4 (GLIBCPP_CHECK_SETRLIMIT_ancilliary): Reorder and include all required headers for test against older POSIX standard.
* acinclude.m4 (GLIBCPP_CHECK_SETRLIMIT_ancilliary): Reorder and
	include all required headers for test against older POSIX standard.
	(GLIBCPP_CHECK_SETRLIMIT): Likewise.
	(ac_setrlimit): Likewise.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* testsuite/testsuite_hooks.cc: Reorder and include all
	required headers for use against older POSIX standard.

From-SVN: r54452
2002-06-10 20:52:12 +00:00
Eric Christopher
fce5a9f29b i386.c (ix86_osf_output_function_prologue): Remove prototype and function.
2002-06-10  Eric Christopher  <echristo@redhat.com>

	* config/i386/i386.c (ix86_osf_output_function_prologue): Remove
	prototype and function.
	(TARGET_ASM_FUNCTION_PROLOGUE): Remove OSF version.
	(call_insn_operand): Remove half pic references.
	(legitimate_address_p): Ditto.
	* config/i386/i386.h: Remove half pic defines.

From-SVN: r54451
2002-06-10 20:00:54 +00:00
Richard Henderson
e9f095867a Fix typo in comment.
From-SVN: r54450
2002-06-10 12:35:27 -07:00
Eric Christopher
95b1627eb1 extend.texi (Return Address): Add note explaining the side- effects of inlining on __builtin_return_address.
2002-06-10  Eric Christopher  <echristo@redhat.com>

	* doc/extend.texi (Return Address): Add note explaining the side-
	effects of inlining on __builtin_return_address.

From-SVN: r54449
2002-06-10 19:12:10 +00:00
Tom Tromey
aea185b3f9 Makefile.in (LANGHOOKS_DEF_H): Include langhooks-def.h.
* Makefile.in (LANGHOOKS_DEF_H): Include langhooks-def.h.
	(c-common.o): Depend on langhooks.h.

From-SVN: r54448
2002-06-10 18:54:31 +00:00
Neil Booth
afb03408e0 cpphash.h (_cpp_read_logical_line_trad, [...]): Update prototypes.
* cpphash.h (_cpp_read_logical_line_trad,
	_cpp_expansions_different_trad): Update prototypes.
	* cpplex.c (continue_after_nul): New.
	* cppmain.c: Include cpphash.h.
	(scan_translation_unit_trad): New.
	(cpp_preprocess_file): Call it.
	* cpptrad.c (_cpp_read_logical_line_trad): Take new parameter
	overlay.
	(_cpp_expansions_different_trad): Update prototype.

From-SVN: r54446
2002-06-10 17:20:30 +00:00
J"orn Rennecke
2754d3c5ac Fix cfi generation for SH[1-4]:
* sh.c (frame_insn): New function.
	(output_stack_adjust): Add parameter emit_fn.  All callers changed.
	(push): Now returns rtx.  Use frame_insn.
	(sh_expand_prologue): Clear RTX_FRAME_RELATED_P for second push
	of a DF register.
	* sh.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_RETURN_COLUMN): Define.

From-SVN: r54445
2002-06-10 18:15:13 +01:00
H.J. Lu
f3e83dc224 gc_locks.h (GC_test_and_set): Support Linux/mips.
* include/private/gc_locks.h (GC_test_and_set): Support
	Linux/mips.
	(GC_TEST_AND_SET_DEFINED): Likewise.

	* include/private/gcconfig.h (DYNAMIC_LOADING): Defined for
	Linux/mips.
	(DATAEND): Likewise.
	(LINUX_STACKBOTTOM): Likewise.
	(STACKBOTTOM): Removed for Linux/mips.

From-SVN: r54444
2002-06-10 17:10:21 +00:00
Zack Weinberg
ad854f24ef Makefile.in (STAGESTUFF): Add s-gtype, gt-*.h, gtype-*.h, and gtype-desc.c.
* Makefile.in (STAGESTUFF): Add s-gtype, gt-*.h, gtype-*.h,
	and gtype-desc.c.
	(mostlyclean): Delete specs.h, options.h, gencheck.h here...
	(distclean): ... not here.  But do delete all testsuite/*.log,
	testsuite/*.sum files here.  Delete mkheaders.  Delete
	po/*.gmo and the testsuite directory in a split tree build.

From-SVN: r54443
2002-06-10 16:58:36 +00:00
Jeff Law
bf1660a670 alias.c (static_reg_base_value): New to hold RTL for items allocated once per function for the aliasing code.
* alias.c (static_reg_base_value): New to hold RTL for
	items allocated once per function for the aliasing code.
	(init_alias_once_per_function): Initialize static_reg_base_value.
	(init_alias_analysis): Avoid throw-away allocations of RTL by
	using pre-computed values in static_reg_base_value.
	* function.c (prepare_function_start): Call
	init_alias_once_per_function appropriately.
	* rtl.h (init_alias_once_per_function): Declare.
	* caller-save (init_caller_save): Restructure slightly to
	avoid lots of silly RTL generation.
	* expr.c (init_expr_once): Likewise.
	* reload1.c (reload_cse_regs_1): Allocate throw-away register
	RTL object here.  Pass it into children.
	(reload_cse_simplify_operands): Use passed-in register RTL
	object.
	(reload_cse_simplify): Pass through throw-away register
	RTL object.

From-SVN: r54442
2002-06-10 10:32:45 -06:00
Daniel Berlin
8dc5848454 Makefile.in (ssa.o): Add dependency on $(RTL_H), which was missing.
2002-06-10  Daniel Berlin  <dberlin@dberlin.org>

	* Makefile.in (ssa.o): Add dependency on $(RTL_H), which was missing.

From-SVN: r54440
2002-06-10 13:37:24 +00:00
Richard Sandiford
ea16b5eef5 gcc.c (process_command): Avoid assignment to read-only location.
* gcc.c (process_command): Avoid assignment to read-only location.
	Fix sizeof calculation.

From-SVN: r54439
2002-06-10 12:27:55 +00:00
GCC Administrator
1e4b0830e2 Daily bump.
From-SVN: r54438
2002-06-10 07:23:14 +00:00
Neil Booth
6618c5d49d cpphash.h (struct cpp_macro): Put comments on their own lines.
* cpphash.h (struct cpp_macro): Put comments on their own lines.
	(_cpp_expansions_different_trad): New.
	* cppmacro.c (warn_of_redefinition): Fix for traditional case.
	* cpptrad.c (canonicalize_text): New.
	(scan_out_logical_line): Handle no arguments correctly.
	(save_replacement_text): Commit memory when finished.
	(_cpp_expansions_different_trad): New.

From-SVN: r54432
2002-06-10 06:03:13 +00:00
Bryce McKinlay
36d010cabf Don't use RTL inlining. Fix for PR java/6820.
* lang.c (LANG_HOOKS_POST_OPTIONS): Define.
	(flag_really_inline): New.
	(java_decode_option): Set flag_really_inline if -finline-functions
	is seen.
	(java_post_options): New function. Turn off inlining unless
	flag_really_inline is set.

From-SVN: r54430
2002-06-10 06:11:42 +01:00
Bryce McKinlay
5f555088ad configure.host: Disable hash synchronization and slow_pthread_self for cygwin.
* configure.host: Disable hash synchronization and slow_pthread_self
	for cygwin.

From-SVN: r54428
2002-06-10 04:50:41 +01:00
Bryce McKinlay
64e681975f gjavah.c (throwable_p): Accept argument as either a classname or signature fragment.
* gjavah.c (throwable_p): Accept argument as either a classname or
	signature fragment. Create null-terminated classname string for super
	when calling itself recursively.
	(decode_signature_piece): Skip first character from class name
	signature when calling throwable_p.

From-SVN: r54427
2002-06-10 04:47:36 +01:00