Commit Graph

42124 Commits

Author SHA1 Message Date
Neil Booth
ceef8ce4b4 c-common.c (unsigned_conversion_warning, [...]): Use new hooks.
* c-common.c (unsigned_conversion_warning, convert_and_check,
	unsigned_type, signed_type, shorten_compare,
	c_common_get_alias_set, c_common_nodes_and_builtins): Use new hooks.
	(unsigned_type, signed_type, signed_or_unsigned_type): Rename.
	* c-common.h (unsigned_type, signed_type, signed_or_unsigned_type):
	New.
	* c-decl.c (grokdeclarator): Update.
	* c-format.c (check_format_types): Update.
	* c-lang.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE,
	LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New.
	* c-typeck.c (build_binary_op, convert_for_assignment): Update.
	* convert.c (convert_to_integer): Use new hooks.
	* expmed.c (make_tree): Use new hooks.
	* expr.c (store_expr): Use new hooks.
	* fold-const.c (operand_equal_for_comparison_p, build_range_check,
	all_ones_mask_p, unextend, fold): Use new hooks.
	* langhooks.h (struct lang_hooks_for_types): New hooks.
	* tree.h (signed_or_unsigned_type, signed_type,
	unsigned_type): Remove.
ada:
	* gigi.h (unsigned_type, signed_type, signed_or_unsigned_type):
	Rename.
	* misc.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE,
	LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New.
	* trans.c (tree_transform, convert_with_check): Update.
	* utils.c (unsigned_type, signed_type, signed_or_unsigned_type):
	Rename.
cp:
	* cp-lang.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE,
	LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New.
	* decl.c (grokdeclarator): Update.
	* mangle.c (write_integer_cst): Update.
	* typeck.c (build_binary_op): Update.
f:
	* com.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE,
	LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New.
	(unsigned_type, signed_type, signed_or_unsigned_type): Rename.
java:
	* expr.c (build_java_binop): Update.
	* java-tree.h (java_signed_type, java_unsigned_type,
	java_signed_or_unsigned_type): Update.
	* lang.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE,
	LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New.
	* parse.y (patch_binop): Update.
	* typeck.c (signed_or_unsigned_type, unsigned_type,
	signed_type): Update.
objc:
	* objc-lang.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE,
	LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New.

From-SVN: r51684
2002-04-01 08:46:10 +00:00
GCC Administrator
c7a39ea995 Daily bump.
From-SVN: r51683
2002-04-01 08:17:05 +00:00
Richard Henderson
1d9ad0e01a unwind-ia64.c (alloc_spill_area): Fix offset.
* config/ia64/unwind-ia64.c (alloc_spill_area): Fix offset.
	(desc_frgr_mem): Fix reference to f16-f31.

From-SVN: r51679
2002-03-31 22:52:45 -08:00
Kaveh R. Ghazi
d875078437 varray.h (VARRAY_CHECK): Const-ify.
* varray.h (VARRAY_CHECK): Const-ify.
	* ggc.h (ggc_mark_rtx, ggc_mark_tree, ggc_mark_nonnull_tree,
	ggc_mark_rtvec, ggc_mark): Const-ify.

From-SVN: r51677
2002-04-01 05:08:51 +00:00
Kaveh R. Ghazi
d544bc3983 rtl.h (RTL_CHECK1, [...]): Const-ify.
* rtl.h (RTL_CHECK1, RTL_CHECK2, RTL_CHECKC1, RTL_CHECKC2,
	RTVEC_ELT): Const-ify.

From-SVN: r51676
2002-04-01 03:18:49 +00:00
Neil Booth
b18101c75f diagnostic.c: Include langhooks-def.h.
* diagnostic.c: Include langhooks-def.h.
	* Makefile.in (diagnostic.o): Update.

From-SVN: r51674
2002-03-31 22:59:14 +00:00
Neil Booth
48a7a23514 c-common.c (c_unsafe_for_reeval): Rename.
* c-common.c (c_unsafe_for_reeval): Rename.
	* c-common.h (c_unsafe_for_reeval): Rename.
	* c-decl.c (finish_incomplete_decl): Rename.
	(c_init_decl_processing): Don't set langhook.
	* c-lang.c (LANG_HOOKS_FINISH_INCOMPLETE_DECL,
	LANG_HOOKS_UNSAFE_FOR_REEVAL): Redefine.
	* c-objc-common.c (c_objc_common_init): Don't set langhook.
	* c-tree.h (finish_incomplete_decl): Rename.
	* langhooks-def.h (lhd_unsafe_for_reeval): New.
	(LANG_HOOKS_FINISH_INCOMPLETE_DECL, LANG_HOOKS_UNSAFE_FOR_REEVAL): New.
	(LANG_HOOKS_INITIALIZER): Update.
	* langhooks.c (lhd_unsafe_For_reeval): New.
	* langhooks.h (struct langhooks): New hooks.
	* toplev.c (incomplete_decl_finalize_hook): Remove.
	(wrapup_global_declarations): Update.
	* tree.c (lang_unsafe_for_reeval): Remove.
	(unsafe_for_reeval): Update.
	* tree.h (lang_unsafe_for_reeval, incomplete_decl_finalize_hook):
	Remove.
ada:
	* gigi.h (finish_incomplete_decl): Rename.
	* misc.c (LANG_HOOKS_FINISH_INCOMPLETE_DECL): Redefine.
	* utils.c (gnat_init_decl_processing): Don't set hook.
	(finish_incomplete_decl): Rename.
cp:
	* cp-lang.c (LANG_HOOKS_UNSAFE_FOR_REEVAL): Redefine.
	* lex.c (cxx_init): Don't set hook.
objc:
	* objc-lang.c (LANG_HOOKS_FINISH_INCOMPLETE_DECL,
	LANG_HOOKS_UNSAFE_FOR_REEVAL): Redefine.

From-SVN: r51673
2002-03-31 22:40:57 +00:00
Neil Booth
7cb3282270 diagnostic.c (print_error_function): Remove.
* diagnostic.c (print_error_function): Remove.
	(default_print_error_function): Rename.
	(report_error_function): Update.
	* diagnostic.h (print_error_function): Remove.
	(default_print_error_function): Remove.
	* langhooks-def.h (struct diagnostic_context): Predeclare.
	(lhd_print_error_function, LANG_HOOKS_PRINT_ERROR_FUNCTION): New.
	(LANG_HOOKS_INITIALIZER): Update.
	* langhooks.h (struct diagnostic context): Predeclare.
	(struct lang_hooks): New hook.
cp:
	* Make-lang.in (error.o): Update.
	* cp-lang.c (LANG_HOOKS_PRINT_ERROR_FUNCTION): Redefine.
	* cp-tree.h (struct diagnostic_context): Predeclare.
	(cxx_print_error_function): New.
	* error.c: Include langhooks-def.h.
	(lang_print_error_function): Rename.  Update.
	(init_error): Don't set hook.
f:
	* com.c (lang_print_error_function): Rename.
	(LANG_HOOKS_PRINT_ERROR_FUNCTION): Redefine.
	(ffe_init): Don't set hook.
java:
	* lang.c (LANG_HOOKS_PRINT_ERROR_FUNCTION): Redefine.
	(java_dummy_print): Remove.
	(lang_print_error): Rename.  Exit early if inhibiting output.
	(inhibit_error_printing_function): New.
	(java_init): Don't set hook.
	(lang_init_source): Use new boolean.

From-SVN: r51672
2002-03-31 22:32:05 +00:00
Franz Sirl
1db0243780 rs6000.h (RS6000_PIC_OFFSET_TABLE_REGNUM): New.
2002-03-31  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>

	* config/rs6000/rs6000.h (RS6000_PIC_OFFSET_TABLE_REGNUM): New.
	(PIC_OFFSET_TABLE_REGNUM): Use it and return INVALID_REGNUM if
	!flag_pic.
	(CONDITIONAL_REGISTER_USAGE): Adjust accordingly.
	* config/rs6000/rs6000.h: Use RS6000_PIC_OFFSET_TABLE_REGNUM instead
	of PIC_OFFSET_TABLE_REGNUM thruout.
	* config/rs6000/rs6000.md: Likewise.
	* config/rs6000/darwin.h: Likewise.

From-SVN: r51671
2002-03-31 22:12:27 +00:00
Richard Kenner
3bf1e98453 emit-rtl.c (adjust_address_1, [...]): Cast value to unsigned HOST_WIDE_INT, not unsigned int.
* emit-rtl.c (adjust_address_1, offset_address): Cast value to
	unsigned HOST_WIDE_INT, not unsigned int.

From-SVN: r51670
2002-03-31 14:48:22 -05:00
Jakub Jelinek
0864c5260d PR middle-end/6096, middle-end/6098, middle-end/6099
PR middle-end/6096, middle-end/6098, middle-end/6099
	* reorg.c (emit_delay_sequence): Only increment LABEL_NUSES for
	CODE_LABELs.
	(fill_slots_from_thread): Likewise.

From-SVN: r51668
2002-03-31 20:45:21 +02:00
Jakub Jelinek
105b208422 sparc.c (function_arg_record_value_1): Pass complex floating fields in float regs.
* config/sparc/sparc.c (function_arg_record_value_1): Pass complex
	floating fields in float regs.
	(function_arg_record_value_2): Likewise.

From-SVN: r51667
2002-03-31 20:43:31 +02:00
Hans-Peter Nilsson
db08fddf62 mmix.md (define_constants): Remove misleading FIXME.
* config/mmix/mmix.md (define_constants): Remove misleading
	FIXME.  Add MMIX_fp_rO_OFFSET.
	("nonlocal_goto_receiver"): Don't have stack-frame address of
	saved rO as part of the pattern.  Remove FIXME.
	("*nonlocal_goto_receiver_expanded"): Similar.  Generate address
	here, at output-time.

From-SVN: r51664
2002-03-31 18:38:57 +00:00
Jakub Jelinek
4f31cce8e4 re PR middle-end/6100 (sparc-sun-solaris2.7 gcc-3.1 RTL checking failure w/-m64 on compile/20020320-1.c)
PR middle-end/6100
	* config/sparc/sparc.c (output_cbranch): Use REG_BR_PROB, not
	REG_BR_PRED.
	(output_v9branch): Likewise.

From-SVN: r51663
2002-03-31 20:37:36 +02:00
Alexandre Oliva
d05972d298 * libgcj.spec.in, libgcj-test.spec.in: Revert for now.
From-SVN: r51659
2002-03-31 18:24:59 +00:00
Alexandre Oliva
ba2b743542 gcc.c: Revert previous patch for now.
* gcc.c: Revert previous patch for now.
* config/i386/djgpp.h: Likewise.

From-SVN: r51658
2002-03-31 18:24:49 +00:00
Hans-Peter Nilsson
5c7060d317 instantiate1.C, [...]: Tweak match patterns.
* g++.dg/ext/instantiate1.C, g++.dg/ext/instantiate2.C,
	g++.dg/ext/instantiate3.C: Tweak match patterns.

From-SVN: r51657
2002-03-31 16:29:04 +00:00
Hans-Peter Nilsson
820ecf563c static11.C: Skip on mmix-knuth-mmixware.
* g++.old-deja/g++.pt/static11.C: Skip on mmix-knuth-mmixware.
	* g++.dg/other/static11.C: Copy g++.old-deja/g++.pt/static11.C for
	-da test.

From-SVN: r51656
2002-03-31 15:49:29 +00:00
Hans-Peter Nilsson
aa66aa5ff4 Fix date in last entry
From-SVN: r51655
2002-03-31 15:09:20 +00:00
Hans-Peter Nilsson
8f840f5701 crti.asm (_init): Register _fini with atexit.
* config/mmix/crti.asm (_init): Register _fini with atexit.
	* config/mmix/crtn.asm (_fini): Add omitted "POP 0,0".

From-SVN: r51654
2002-03-31 15:07:55 +00:00
Richard Henderson
41ba8a20bd elf.h (ASM_OUTPUT_DEF): Tidy.
* config/alpha/elf.h (ASM_OUTPUT_DEF): Tidy.
        (ASM_OUTPUT_DEF_FROM_DECLS): New.

        * gcc.dg/special/alias-2.c: New.
        * gcc.dg/special/ecos.exp: Run it.

From-SVN: r51650
2002-03-31 03:50:43 -08:00
Richard Henderson
a7648399b2 * config/alpha/alpha.md (trap): New.
From-SVN: r51649
2002-03-31 03:09:48 -08:00
Richard Henderson
adc186efab * libgcc2.c (__bb_exit_func): Make static.
From-SVN: r51647
2002-03-31 02:58:55 -08:00
Richard Henderson
9602f5a04b builtins.c (expand_builtin_va_arg): Give warnings not errors for promoted argument types; build trap.
* builtins.c (expand_builtin_va_arg): Give warnings not errors for
        promoted argument types; build trap.
        (expand_builtin_trap): New.
        (expand_builtin): Use it.
        * stmt.c (expand_nl_goto_receivers): Likewise.
        * expr.h (expand_builtin_trap): Declare.
        * libfuncs.h (LTI_abort, abort_libfunc): New.
        * optabs.c (init_optabs): Init abort_libfunc.

        * gcc.dg/va-arg-1.c: Expect warnings, not errors.

From-SVN: r51643
2002-03-31 01:52:42 -08:00
Alexandre Oliva
b56bc85a40 libgcj.spec.in: Override libgcc, not lib.
* libgcj.spec.in: Override libgcc, not lib.
* libgcj-test.spec.in: Likewise.

From-SVN: r51640
2002-03-31 09:33:05 +00:00
Alexandre Oliva
1a0a7539e5 gcc.c (LIBGCC_SPEC): Folded %L and duplicate %G here...
* gcc.c (LIBGCC_SPEC): Folded %L and duplicate %G here...
(LINK_COMMAND_SPEC): ... from here.
(init_gcc_specs): Duplicate it here too, omitting
shared_name in the second copy.
(init_spec): Test for duplicate
* config/i386/djgpp.h (LINK_COMMAND_SPEC): Remove `%L %G'.

From-SVN: r51639
2002-03-31 09:32:52 +00:00
GCC Administrator
efe52a8241 Daily bump.
From-SVN: r51638
2002-03-31 08:17:00 +00:00
David S. Miller
b5de1a2766 linux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Define.
* config/sparc/linux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Define.
	* config/sparc/linux64.h (HANDLE_PRAGMA_PACK_PUSH_POP): Likewise.

From-SVN: r51634
2002-03-31 00:02:54 -08:00
Richard Henderson
8fc55e09c3 Fix main return value.
From-SVN: r51632
2002-03-30 23:40:08 -08:00
Kazu Hirata
463eefc812 * gcc.dg/weak-1.c: Disable on h8300 port.
From-SVN: r51629
2002-03-31 06:45:26 +00:00
Roger Sayle
78414d74b1 regmove.c (combine_stack_adjustments_for_block): Avoid emitting a stack adjustment of zero bytes.
* regmove.c (combine_stack_adjustments_for_block): Avoid
        emitting a stack adjustment of zero bytes.  Let delete_insn
        update bb->head.

Co-Authored-By: Richard Henderson <rth@redhat.com>

From-SVN: r51628
2002-03-30 19:34:55 -08:00
Richard Henderson
33074e5fe7 sparc.c: Remove all references to TARGET_EPILOGUE.
* config/sparc/sparc.c: Remove all references to TARGET_EPILOGUE.
        (sparc_emitting_epilogue): New.
        (leaf_label, output_return, sparc_return_peephole_ok): Remove.
        * config/sparc/sparc-protos.h: Update.
        * config/sparc/sparc.h (MASK_EPILOGUE, TARGET_EPILOGUE): Remove.
        (TARGET_SWITCHES): Update.
        * config/sparc/sparc.md (return): Remove.
        (return_*): Use sparc_emitting_epilogue, not !TARGET_EPILOGUE.
        * config/sparc/freebsd.h, config/sparc/linux64.h, config/sparc/lite.h,
        config/sparc/liteelf.h, config/sparc/netbsd-elf.h,
        config/sparc/sol2-sld-64.h, config/sparc/sol2.h,
        config/sparc/sp64-aout.h, config/sparc/sp64-elf.h,
        config/sparc/sp86x-aout.h, config/sparc/sp86x-elf.h,
        config/sparc/splet.h, config/sparc/vxsparc64.h (TARGET_DEFAULT):
        Remove MASK_EPILOGUE.
        * doc/invoke.texi: Update.

From-SVN: r51626
2002-03-30 19:11:20 -08:00
Richard Henderson
afaef72670 re PR c++/3719 (Unable to retrow exception in unexpected exception handler.)
PR c++/3719
        * libsupc++/eh_personality.cc (__cxa_call_unexpected): Copy handler
        data out of the exception struct before calling unexpectedHandler.

	* g++.dg/eh/unexpected1.C: New.

From-SVN: r51623
2002-03-30 18:56:34 -08:00
Daniel Berlin
606cc0562d dwarf2out.c (dwarf2out_define): Remove start_source_file call, CPP will start the file for us.
2002-03-30  Daniel Berlin  <dan@dberlin.org>

	* dwarf2out.c (dwarf2out_define): Remove start_source_file call,
	CPP will start the file for us.

From-SVN: r51621
2002-03-31 00:36:47 +00:00
Krister Walfridsson
320d7e7ad6 configure.in (i*86-*-netbsdelf*): Don't disable libgcj.
2002-03-30  Krister Walfridsson  <cato@df.lth.se>

	* configure.in (i*86-*-netbsdelf*): Don't disable libgcj.

libffi:
2002-03-30  Krister Walfridsson  <cato@df.lth.se>

	* configure.in: Enable i*86-*-netbsdelf*.
	* configure: Rebuilt.

From-SVN: r51620
2002-03-31 00:33:17 +00:00
Bryce McKinlay
c71f2c0640 gcconfig.h: define DYNAMIC_LOADING for ELF NetBSD/i386.
2002-03-30  Krister Walfridsson  <cato@df.lth.se>

	* include/private/gcconfig.h: define DYNAMIC_LOADING for ELF
        NetBSD/i386.

From-SVN: r51616
2002-03-31 00:15:36 +00:00
Richard Henderson
bdbe5b8d8d ia64.c (group_barrier_needed_p): Special case prologue_allocate_stack.
* config/ia64/ia64.c (group_barrier_needed_p): Special case
        prologue_allocate_stack.
        (ia64_single_set): Use insn codes for recognition of special
        cases, not rtl matching.
        * config/ia64/ia64.md (prologue_allocate_stack): Op 3 is in-out.

	* gcc.c-torture/compile/20020330-1.c: New.

From-SVN: r51615
2002-03-30 16:15:19 -08:00
Jan Hubicka
4ab95d8267 * cfgbuild.c (find_basic_blocks_1): Clear aux for blocks.
From-SVN: r51612
2002-03-30 22:49:56 +00:00
Richard Henderson
89a8b315b8 sparc.h (OVERRIDE_OPTIONS): Don't override -fpic or -fomit-frame-pointer with profiling.
* config/sparc/sparc.h (OVERRIDE_OPTIONS): Don't override -fpic
        or -fomit-frame-pointer with profiling.
        (SUBTARGET_OVERRIDE_OPTIONS): Remove.
        (FUNCTION_PROFILER): Do nothing.
        (PROFILE_HOOK): New.
        * config/sparc/sparc.c (sparc_override_options): Don't check
        code models for profiling.
        (sparc_function_profiler): Remove.
        (sparc_profile_hook): New.
        * config/sparc/sparc-protos.h: Update.

From-SVN: r51610
2002-03-30 13:01:19 -08:00
Richard Henderson
6b7d1a345e Fix whitespace.
From-SVN: r51608
2002-03-30 12:47:54 -08:00
Jakub Jelinek
30984c5791 re PR rtl-optimization/6086 (Reload misoptimizes DImode PREINC on PPC)
PR optimization/6086
	* combine.c (combine_simplify_rtx): If simplify_rtx failed because
	of SUBREG of volatile MEM or because the MEM was mode dependent,
	return CLOBBER instead of unmodified SUBREG.

From-SVN: r51606
2002-03-30 19:50:34 +01:00
Jan Hubicka
1540f9ebc4 local-alloc.c (local_alloc): Avoid call of update_equiv_regs when not optimizing.
* local-alloc.c (local_alloc): Avoid call of update_equiv_regs when not optimizing.

	* toplev.c (rest_of_compilation): Cann mark_constant_function
	only when optimizing.

	* flow.c (calculate_global_regs_live): Ensure that all AUX fields are NULL.

	* cfgcleanup.c (bb_flags): Add BB_NONTHREADABLE_BLOCK.
	(thread_jump): Set BB_NONTHREADABLE_BLOCK, check it.
	(try_optimize_cfg): clear all AUX fields.

	* i386.c (aligned_operand): Be prepared for SUBREGed registers.
	(ix86_decompose_address): Use REG_P instead of GET_CODE (...) == REG.
	(ix86_address_cost): Be prepared for SUBREGed registers.
	(legitimate_address_p): Accept SUBREGed registers.

From-SVN: r51604
2002-03-30 13:26:19 +00:00
GCC Administrator
d83975041f Daily bump.
From-SVN: r51600
2002-03-30 08:17:30 +00:00
Bryce McKinlay
a8f55e51dc cp-demangle.c (java_demangle_v3): Don't try to release "demangled" if it is NULL.
* cp-demangle.c (java_demangle_v3): Don't try to release "demangled"
	if it is NULL.

From-SVN: r51594
2002-03-30 03:30:36 +00:00
Richard Henderson
70d95bac49 re PR target/5672 ([mn10200] Compiler segmentation fault in static initialiser.)
PR target/5672
        * expr.c (expand_expr): Pass along EXPAND_INITIALIZER one more place.

From-SVN: r51593
2002-03-29 18:16:41 -08:00
Franz Sirl
d3294cd931 rs6000.c (rs6000_va_arg): Correctly set register count for aggregate and TFmode types.
2002-03-29  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>

	* config/rs6000/rs6000.c (rs6000_va_arg): Correctly set register count
	for aggregate and TFmode types.

From-SVN: r51591
2002-03-30 01:00:23 +00:00
Hans-Peter Nilsson
a106c875ba * cfg.c (dump_flow_info): Guard against NULL regno_reg_rtx[i].
From-SVN: r51589
2002-03-30 00:40:53 +00:00
Richard Henderson
6e2d670b4f Record pr numbers.
From-SVN: r51588
2002-03-29 15:45:43 -08:00
Richard Henderson
7d7a5d6f8a aix.h (CPP_PREDEFINES): Add -D_LP64.
* config/ia64/aix.h (CPP_PREDEFINES): Add -D_LP64.
        * config/ia64/hpux.h, config/ia64/linux.h: Likewise.

From-SVN: r51586
2002-03-29 15:39:05 -08:00
Richard Henderson
30c99a84e0 i386.c (x86_arch_always_fancy_math_387): New.
* config/i386/i386.c (x86_arch_always_fancy_math_387): New.
        (override_options): Disable NO_FANCY_MATH_387 if the arch allows.
        * config/i386/i386.h (x86_arch_always_fancy_math_387): New.
        * config/i386/i386.md (sqrtxf2, sqrtextendsfxf2, sinxf2): Fix
        conditional.
        * docs/invoke.texi: Update -mno-fancy-math-387 docs.

From-SVN: r51584
2002-03-29 15:24:20 -08:00