Commit Graph

43216 Commits

Author SHA1 Message Date
Eric Botcazou
ce60bf25b2 expmed.c (const_mult_add_overflow_p): New.
* expmed.c (const_mult_add_overflow_p): New.
        * expr.h: Declare it.
        * loop.c (maybe_eliminate_biv_1) [COMPARE]: Use it.
        Don't eliminate the biv if the giv has a constant multiplier and
        the rhs argument of the comparison does satisfy the predicate.
        Use expand_mult_add to compute the replacement constant.

From-SVN: r54075
2002-05-30 14:33:32 -07:00
Osku Salerma
d18b1ed89e c-common.c (c_common_attribute_table): Add "may_alias" entry.
* c-common.c (c_common_attribute_table): Add "may_alias" entry.
        (c_common_get_alias_set): Handle it.
        * doc/extend.texi: Document it.

        * gcc.c-torture/execute/mayalias-1.c: New file.

From-SVN: r54074
2002-05-30 14:28:17 -07:00
Richard Henderson
a794338112 defaults.h (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER): Kill.
* defaults.h (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER): Kill.
        * toplev.c (process_options): Don't check it.
        * doc/tm.texi: Don't document it.
        * config/i386/linux.h (SUBTARGET_FRAME_POINTER_REQUIRED): New.
        (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER): Kill.
        * config/i386/i386.c (ix86_frame_pointer_required): Suppress leaf
        frame pointer optimization if current_function_profile.

From-SVN: r54072
2002-05-30 14:01:20 -07:00
Marc Espie
de215bc6c5 configure.in: Always check for sys/types.h
2002-05-30	Marc Espie <espie@openbsd.org>
	* configure.in:  Always check for sys/types.h
	* configure:  Regenerate.

From-SVN: r54071
2002-05-30 21:00:28 +00:00
Kazu Hirata
e11e816ec7 langhooks.c: Fix formatting.
* langhooks.c: Fix formatting.
	* langhooks.h: Likewise.
	* lcm.c: Likewise.
	* libgcc2.c: Likewise.
	* lists.c: Likewise.
	* local-alloc.c: Likewise.
	* loop.c: Likewise.
	* loop.h: Likewise.

From-SVN: r54070
2002-05-30 20:55:11 +00:00
H.J. Lu
76ae32d753 open.c (_XOPEN_SOURCE): Removed.
2002-05-30  H.J. Lu  (hjl@gnu.org)

	* libI77/open.c (_XOPEN_SOURCE): Removed.

From-SVN: r54069
2002-05-30 13:46:53 -07:00
Marc Espie
91f0fcee22 config.gcc (sparc64-*-openbsd*): New.
2002-05-30	Marc Espie <espie@openbsd.org>
	* config.gcc (sparc64-*-openbsd*):  New.
	* config/sparc/openbsd1-64.h:  New.
	* config/sparc/openbsd64.h:  New.

From-SVN: r54066
2002-05-30 20:35:58 +00:00
Jeff Law
d35dfca9e6 flow.c (propagate_one_insn): Revise yesterday's patch.
* flow.c (propagate_one_insn): Revise yesterday's patch.  Delete
        a dead insn with a REG_RETVAL note when the entire libcall is not
        dead and remove the associated REG_LIBCALL note at the same time.

From-SVN: r54065
2002-05-30 14:20:28 -06:00
J"orn Rennecke
81b40b72d1 lcm.c (output.h): #include.
* lcm.c (output.h): #include.
	(compute_earliest): Remove hack to treat renumbered EXIT_BLOCK
	as an ordinary block.
	(optimize_mode_switching): Don't pretend that the exit block is
	an ordinary block, or handle sucessors of entry block specially.
	Instead, split edges from entry block and to exit block, and
	put a computing definition on the thus gained post-entry-block,
	and a need on the pre-exit-block.

From-SVN: r54064
2002-05-30 19:58:31 +01:00
Zack Weinberg
b1c12c4ba1 ada.h: Add MI guard macro.
* ada.h: Add MI guard macro.
	(SUBTYPE): Define constants with an anonymous enum, not static
	const variables.
	(IN): Cast constants to appropriate type before use.

From-SVN: r54063
2002-05-30 18:39:02 +00:00
Jan Hubicka
c8ea9a0f1d gengenrtl.c (type_from_format, [...]): Support 'B'.
* gengenrtl.c (type_from_format, accessor_from_format): Support 'B'.
	* rtl.texi: Document 'B'

From-SVN: r54062
2002-05-30 18:28:56 +00:00
Zack Weinberg
8abbd76ae1 Fix omission in log for earlier change
From-SVN: r54061
2002-05-30 17:38:11 +00:00
Jason Thorpe
348f0869b6 netbsd-elf.h (LONG_DOUBLE_TYPE_SIZE): Compute at run-time.
* config/m68k/netbsd-elf.h (LONG_DOUBLE_TYPE_SIZE): Compute
at run-time.
(LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Set to 96 if not __mc68010__.

From-SVN: r54059
2002-05-30 17:14:24 +00:00
Jeff Law
ae02eae82c * pa.h (ASM_OUTPUT_MI_THUNK): Remove unwanted semi-colon.
From-SVN: r54058
2002-05-30 10:15:25 -06:00
Marek Michalkiewicz
e7d82ce2d0 * config/avr/avr.c (avr_mcu_types): Fix typo in previous patch.
From-SVN: r54057
2002-05-30 13:35:23 +00:00
Aldy Hernandez
e3277ffb32 fix typo in last commit
From-SVN: r54055
2002-05-30 12:14:33 +00:00
Aldy Hernandez
9a171fcd88 rs6000.c (rs6000_expand_unop_builtin): Return const0_rtx instead of NULL_RTX when in error.
2002-05-30  Aldy Hernandez  <aldyh@redhat.com>

        * config/rs6000/rs6000.c (rs6000_expand_unop_builtin): Return
        const0_rtx instead of NULL_RTX when in error.
        (altivec_expand_abs_builtin): Same.
        (rs6000_expand_binop_builtin): Same.
        (altivec_expand_predicate_builtin): Same.
        (altivec_expand_stv_builtin): Same.
        (rs6000_expand_ternop_builtin): Same.
        (altivec_expand_builtin): Same.

From-SVN: r54054
2002-05-30 12:07:10 +00:00
David S. Miller
62a35e6088 rtl.h (clear_emit_caches): Delete.
2002-05-29  David S. Miller  <davem@redhat.com>

	* rtl.h (clear_emit_caches): Delete.
	* integrate.c (output_inline_function): Don't call it.
	* emit-rtl.c (restore_emit_status, init_emit): Likewise.
	(clear_emit_caches): Delete definition.
	(SEQUENCE_RESULT_SIZE, sequence_result, free_insn): Likewise.

From-SVN: r54053
2002-05-30 03:23:30 -07:00
GCC Administrator
128977c9d0 Daily bump.
From-SVN: r54047
2002-05-30 07:18:19 +00:00
Hans-Peter Nilsson
cbc39da880 mmix.c: Include real.h.
* config/mmix/mmix.c: Include real.h.
	(mmix_constant_address_p): Remove redundant test before switch.

From-SVN: r54042
2002-05-30 06:48:12 +00:00
Jason Thorpe
dcf7f0ddac configure.in (vax-*-netbsd*): Don't build gas for this platform.
* configure.in (vax-*-netbsd*): Don't build gas for this
platform.

From-SVN: r54040
2002-05-30 02:53:32 +00:00
Bryce McKinlay
5549d65dfb * libjava.compile/T20020529.java: New file.
From-SVN: r54039
2002-05-30 03:53:13 +01:00
Jason Thorpe
50efa73711 mips.h (READONLY_DATA_SECTION_ASM_OP): Define only if not already defined.
* config/mips/mips.h (READONLY_DATA_SECTION_ASM_OP): Define
only if not already defined.

From-SVN: r54038
2002-05-30 01:49:57 +00:00
Kazu Hirata
2e760b15f0 h8300-protos.h: Remove prototypes for ok_for_bclr and small_power_of_two.
* config/h8300/h8300-protos.h: Remove prototypes for
	ok_for_bclr and small_power_of_two.
	* config/h8300/h8300.c (small_power_of_two): Remove.
	(ok_for_blcr): Likewise.
	(fix_bit_operand): Make WHAT deal with an integer instead of a
	constraint character.
	* config/h8300/h8300.h (CONST_OK_FOR_O): Remove.
	(CONST_OK_FOR_P): Likewise.
	(CONST_OK_FOR_LETTER_P): Do not call CONST_OK_FOR_O or
	CONST_OK_FOR_P any more.
	* config/h8300/h8300.md (andqi3): Adjust to the new prototype
	of fix_bit_operand.
	(iorqi3): Likewise.
	(xorqi3): Likewise.

From-SVN: r54037
2002-05-30 01:35:12 +00:00
Jason Thorpe
e1c293ae20 netbsd.h (TARGET_OS_CPP_BUILTINS): Define.
* config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Define.
(CPP_PREDEFINES): Make sure this is undefined.
(CPP_SPEC): Place -D__mips=1 at the beginning of the spec,
since it is no longer in CPP_PREDEFINES.  Don't -U__MIPSEL__
or -U__MIPSEB__ before defining one or the other.  Instead,
use %(subtarget_endian_default) if neither -EB nor -EL are
specified.
(SUBTARGET_EXTRA_SPECS): Define.
(SUBTARGET_CPP_SPEC): Remove __LONG64 handling.  Use
%(netbsd_cpp_spec).

From-SVN: r54036
2002-05-30 01:29:29 +00:00
Hans-Peter Nilsson
fde6d81fc0 md.texi (Patterns): Note pattern condition pitfall for unnamed insn.
* doc/md.texi (Patterns): Note pattern condition pitfall
	for unnamed insn.

From-SVN: r54035
2002-05-30 01:05:05 +00:00
Aldy Hernandez
92898235fc rs6000.c: (altivec_expand_builtin): Only expand altivec builtins when TARGET_ALTIVEC.
2002-05-29  Aldy Hernandez  <aldyh@redhat.com>

        * rs6000.c: (altivec_expand_builtin): Only expand altivec builtins
        when TARGET_ALTIVEC.  Move handling of generic unary, binary, and
        ternary operations from here...
        (rs6000_expand_builtin): ...to here.
        New argument expandedp.
        Change all instances of altivec_expand_binop_builtin to
        rs6000_expand_binop_builtin.
        (altivec_expand_unop_builtin): Rename to
        rs6000_expand_unop_builtin.
        (altivec_expand_binop_builtin): Rename to
        rs6000_expand_binop_builtin.
        (altivec_expand_ternop_builtin): Rename to
        rs6000_expand_ternop_builtin.

From-SVN: r54034
2002-05-30 00:54:18 +00:00
Richard Henderson
67adf6a9dc biarch64.h (TARGET_64BIT_DEFAULT): Define with value.
* config/i386/biarch64.h (TARGET_64BIT_DEFAULT): Define with value.
        (TARGET_BI_ARCH): Likewise.
        * config/i386/i386.h: Test TARGET_64BIT_DEFAULT by value.
        (TARGET_SWITCHES): Combine target defaults here not in TARGET_DEFAULT.
        (TARGET_64BIT_DEFAULT): Default to 0.
        (TARGET_DEFAULT): Default to MASK_OMIT_LEAF_FRAME_POINTER.

From-SVN: r54032
2002-05-29 17:38:36 -07:00
Richard Henderson
145aacc2e0 i386.c (USE_HIDDEN_LINKONCE): New.
* config/i386/i386.c (USE_HIDDEN_LINKONCE): New.
        (get_pc_thunk_name): New.
        (output_set_got): Use it.
        (ix86_asm_file_end): If USE_HIDDEN_LINKONCE, emit get_pc thunks
        into linkonce sections.

From-SVN: r54031
2002-05-29 17:28:14 -07:00
Jason Thorpe
a5b49bbc91 netbsd-elf.h (TARGET_OS_CPP_BUILTINS): Define.
* config/sparc/netbsd-elf.h (TARGET_OS_CPP_BUILTINS): Define.
(CPP_PREDEFINES): Make sure this is undefined.
(CPP_SUBTARGET_SPEC64, CPP_SUBTARGET_SPEC32): Remove.
(CPP_SUBTARGET_SPEC): Don't provide different versions for
default-32 and default-64.  Just always use %(netbsd_cpp_spec).
(SUBTARGET_EXTRA_SPECS): Remove cpp_subtarget_spec32 and
cpp_subtarget_spec64.  Add netbsd_cpp_spec.
* config/sparc/netbsd.h (TARGET_OS_CPP_BUILTINS): Define.
(CPP_PREDEFINES): Make sure this is undefined.
(SUBTARGET_EXTRA_SPECS): Define.
(CPP_SPEC): Use %(netbsd_cpp_spec).

From-SVN: r54030
2002-05-29 23:50:56 +00:00
Jeff Law
b862c2aaaf flow.c (propagate_one_insn): Do not remove a dead insn if it contains a REG_RETVAL note.
* flow.c (propagate_one_insn): Do not remove a dead insn if it
        contains a REG_RETVAL note.

From-SVN: r54028
2002-05-29 17:04:23 -06:00
Jeff Law
d10791bab7 haifa-sched (sched_analyze): Remove another useless clearing of SCHED_GROUP_P I missed yesterday.
* haifa-sched (sched_analyze): Remove another useless clearing
        of SCHED_GROUP_P I missed yesterday.

From-SVN: r54027
2002-05-29 16:56:13 -06:00
Jeff Law
54374491da pa.h (ASM_OUTPUT_MI_THUNK): Move implementation into pa.c.
* pa.h (ASM_OUTPUT_MI_THUNK): Move implementation into pa.c.
        * pa.c (pa_asm_output_mi_thunk): New function.
        * pa-protos.h (pa_asm_output_mi_thunk): Declare.

From-SVN: r54026
2002-05-29 16:51:37 -06:00
Neil Booth
92c392e657 avr.c (avr_base_arch_macro, [...]): New.
* config/avr/avr.c (avr_base_arch_macro, avr_extra_arch_macro): New.
	(avr_asm_only_p): Make non-static.
	(enum avr_arch): Remove.
	(avr_arch_types): New.
	(avr_mcu_types): Update.
	(avr_override_options): Use avr_arch_types table instead of switch.
	* avr.h (CPP_PREDEFINES): Die.
	(avr_base_arch_macro, avr_extra_arch_macro): New.
	(TARGET_CPU_CPP_BUILTINS): New.
	(CPP_SPEC, EXTRA_SPECS): Simplify.
	(CPP_AVR1_SPEC, CPP_AVR2_SPEC, CPP_AVR3_SPEC, CPP_AVR4_SPEC,
	CPP_AVR5_SPEC): Die.

Co-Authored-By: Marek Michalkiewicz <marekm@amelek.gda.pl>

From-SVN: r54023
2002-05-29 21:59:08 +00:00
Jason Thorpe
4528173ea3 netbsd.h (TARGET_OS_CPP_BUILTINS): Use NETBSD_OS_CPP_BUILTINS_AOUT.
* config/arm/netbsd.h (TARGET_OS_CPP_BUILTINS): Use
NETBSD_OS_CPP_BUILTINS_AOUT.
(SUBTARGET_EXTRA_SPECS): Define.
(CPP_SPEC): Use %(netbsd_cpp_spec).

From-SVN: r54022
2002-05-29 21:31:48 +00:00
Richard Henderson
bd09bdeb98 i386.c (ix86_output_function_epilogue): New.
* config/i386/i386.c (ix86_output_function_epilogue): New.
        (TARGET_ASM_FUNCTION_EPILOGUE): New.
        (pic_label_name): Remove.
        (pic_labels_used): New.
        (ix86_asm_file_end): Emit one pc load stub for each register used.
        (output_set_got): Generate deep pc load to any register.
        (ix86_select_alt_pic_regnum): New.
        (ix86_save_reg): Don't save pic register if we can find a valid
        call-clobbered replacement.
        (ix86_expand_prologue): If we found a valid replacement, renumber
        pic_offset_table_rtx.
        * config/i386/i386.h (PIC_OFFSET_TABLE_REGNUM): Look at
        pic_offset_table_rtx after reload.
        (REAL_PIC_OFFSET_TABLE_REGNUM): New.
        * config/i386/i386.md (set_got): Make insn, not expander.
        (set_got_nopic, set_got_deep, set_got_nodeep): Remove.

From-SVN: r54021
2002-05-29 13:54:00 -07:00
Richard Henderson
002ff5bc3e i386.c (ix86_compute_frame_layout): Do add bottom alignment for alloca.
* config/i386/i386.c (ix86_compute_frame_layout): Do add bottom
        alignment for alloca.

	* gcc.c-torture/execute/alloca-1.c: New.

From-SVN: r54018
2002-05-29 13:29:21 -07:00
Richard Henderson
edfe859577 i386.c (output_pic_addr_const): Lowercase rip.
* config/i386/i386.c (output_pic_addr_const): Lowercase rip.
        (print_operand_address): Only add rip for symbolic addresses
        for which we do not have another relocation type.

From-SVN: r54017
2002-05-29 13:16:50 -07:00
Jason Thorpe
cd7714ee96 netbsd-elf.h (TARGET_OS_CPP_BUILTINS): Define.
* config/m68k/netbsd-elf.h (TARGET_OS_CPP_BUILTINS): Define.
(EXTRA_SPECS): Add netbsd_cpp_spec.
(CPP_SPEC): Use %(netbsd_cpp_spec).
(CPP_PREDEFINES): Remove.
* config/m68k/netbsd.h (TARGET_OS_CPP_BUILTINS): Define.
(EXTRA_SPECS): Define.
(CPP_SPEC): Use %(netbsd_cpp_spec).
(CPP_PREDEFINES): Remove.

From-SVN: r54016
2002-05-29 20:09:29 +00:00
Jeff Law
e7206fbc5c Revert this patch:
-       * haifa-sched.c (schedule_block): Do not count USE and CLOBBER
-       insns against the issue rate.
-
-       * sched-deps.c (sched_create_groups_for_libcalls): New function.
-       (sched_analyze): Use it.

From-SVN: r54015
2002-05-29 13:55:34 -06:00
Neil Booth
8dc901ded3 re PR preprocessor/6844 (Seg fault when trying to preprocess a file with lots of #define's)
PR preprocessor/6844
	* cppmacro.c (cpp_macro_definition): Reserve space for terminating
	NUL.

From-SVN: r54014
2002-05-29 19:30:07 +00:00
Ulrich Weigand
e793a7140e configure.host [...]: Set can_unwind_signal=yes.
* configure.host [s390*-linux*]: Set can_unwind_signal=yes.
* configure.in [s390*-*-linux*]: Do not define HAVE_BACKTRACE.
Set SIGNAL_HANDLER=include/s390-linux.h.
* configure: Regenerate.
* include/s390-linux.h: New file.

From-SVN: r54012
2002-05-29 18:36:50 +00:00
Eric Christopher
2274b31a3c linux.h (SUBTARGET_CPP_SPEC): Add support for mips5/mips32/mips64 and _MIPS_ISA_MIPSXX.
2002-05-29  Eric Christopher  <echristo@redhat.com>

	* config/mips/linux.h (SUBTARGET_CPP_SPEC): Add support for
	mips5/mips32/mips64 and _MIPS_ISA_MIPSXX.

From-SVN: r54011
2002-05-29 18:18:43 +00:00
Nick Clifton
5c7666c1af fr30.md: Remove previous restriction on splits.
* config/fr30/fr30.md: Remove previous restriction on splits.
  Enforce conformance through gen_lowpart and cont_int_operand.
* config/fr30/fr30.h (BSS_SECTION_ASM_OP): Use ".section .bss"
  as the assembler does not support ".bss".

From-SVN: r54010
2002-05-29 18:05:08 +00:00
Jason Thorpe
45beef47f3 netbsd-elf.h (TARGET_OS_CPP_BUILTINS): Define.
* config/i386/netbsd-elf.h (TARGET_OS_CPP_BUILTINS): Define.
(CPP_PREDEFINES): Remove.
(SUBTARGET_EXTRA_SPECS): Define.
(CPP_SPEC): Use %(netbsd_cpp_spec).
* config/i386/netbsd.h (TARGET_OS_CPP_BUILTINS): Define.
(CPP_PREDEFINES): Remove.
(SUBTARGET_EXTRA_SPECS): Define.
(CPP_SPEC): Use %(netbsd_cpp_spec).
* config/i386/netbsd64.h (TARGET_OS_CPP_BUILTINS): Define.
(CPP_PREDEFINES, CPP_LP64_SPEC, CPP_SUBTARGET_SPEC): Remove.
(SUBTARGET_EXTRA_SPECS): Remove cpp_lp64 and cpp_subtarget.
Add netbsd_cpp_spec.
(CPP_SPEC): Remove %(cpp_subtarget), add %(netbsd_cpp_spec).

From-SVN: r54009
2002-05-29 17:57:55 +00:00
Neil Booth
cd7ab83f2d cppexp.c (cpp_num): Move to cpplib.h.
2002-05-29  Neil Booth  <neil@daikokuya.demon.co.uk>
	    Zack Weinberg <zack@codesourcery.com>

	* cppexp.c (cpp_num): Move to cpplib.h.
	(CPP_ERROR): Remove.
	(interpret_float_suffix, interpret_int_suffix): New.
	(struct suffix, vsuf_1, vsuf_2, vsuf_3): Remove.
	(cpp_classify_number, cpp_interpret_integer): New.
	(interpret_number): Remove.
	(eval_token): Update to use new routines.
	* cpphash.h (cpp_num_part): Move to cpplib.h.
	* cppinit.c (cpp_post_options): Set warn_long_long.
	* cpplib.h (struct cpp_options): Add warn_long_long.
	(cpp_num, cpp_num_part, CPP_N_CATEGORY, CPP_N_INVALID,
	CPP_N_INTEGER, CPP_N_FLOATING, CPP_N_WIDTH, CPP_N_SMALL,
	CPP_N_MEDIUM, CPP_N_LARGE, CPP_N_RADIX, CPP_N_DEC, CPP_N_HEX,
	CPP_N_OCTAL, CPP_N_UNSIGNED, CPP_N_IMAGINARY, cpp_classify_number,
	cpp_interpret_integer): New.
testsuite:
	* gcc.dg/cpp/c++98-pedantic.c, gcc.dg/cpp/c89-pedantic.c,
	gcc.dg/cpp/c94-pedantic.c, gcc.dg/cpp/gnuc89-pedantic.c,
	gcc.dg/cpp/if-1.c: Update for modified diagnostics.

Co-Authored-By: Zack Weinberg <zack@codesourcery.com>

From-SVN: r54007
2002-05-29 17:15:42 +00:00
Joel Sherrill
61a8515c94 rs6000.h (ASM_CPU_SPEC): Use -m403 and -m405.
2002-05-29  Joel Sherrill <joel@OARcorp.com>

        * config/rs6000/rs6000.h (ASM_CPU_SPEC): Use -m403 and -m405.

From-SVN: r54006
2002-05-29 13:09:46 -04:00
Jason Thorpe
53a428b524 netbsd.h (TARGET_OS_CPP_BUILTINS): Use NETBSD_OS_CPP_BUILTINS_ELF and NETBSD_OS_CPP_BUILTINS_LP64.
* config/alpha/netbsd.h (TARGET_OS_CPP_BUILTINS): Use
NETBSD_OS_CPP_BUILTINS_ELF and NETBSD_OS_CPP_BUILTINS_LP64.
(CPP_SUBTARGET_SPEC): Define.
(SUBTARGET_EXTRA_SPECS): Define.
(CPP_SPEC): Remove.

From-SVN: r54005
2002-05-29 16:59:06 +00:00
Jeff Law
243e550036 haifa-sched.c (schedule_block): Do not count USE and CLOBBER insns against the issue rate.
* haifa-sched.c (schedule_block): Do not count USE and CLOBBER
        insns against the issue rate.

        * sched-deps.c (sched_create_groups_for_libcalls): New function.
        (sched_analyze): Use it.

From-SVN: r54004
2002-05-29 10:53:46 -06:00
Chris Lattner
45b1f7c746 ssa.c (rename_insn_1): Rename uses of undefined registers to prevent confusion if/when...
* ssa.c (rename_insn_1): Rename uses of undefined registers to
        prevent confusion if/when the register is defined.

From-SVN: r54002
2002-05-29 10:23:28 -06:00