Commit Graph

50358 Commits

Author SHA1 Message Date
Wolfgang Bangerth 9a22b893d7 Add Dara Hazeghi and Andrew Pinski to Bugzilla-only maintainers. Remove user names from other bug database only maintainers since bugzilla no longer has user names.
From-SVN: r67489
2003-06-05 08:44:47 -06:00
Jan Hubicka 83588a9d9d combine.c (simplify_if_then_else): (IF_THEN_ELSE (NE REG 0) (0) (8)) is REG for nonzero_bits (REG) == 8.
* combine.c (simplify_if_then_else): (IF_THEN_ELSE (NE REG 0) (0) (8))
	is REG for nonzero_bits (REG) == 8.

From-SVN: r67488
2003-06-05 13:00:14 +00:00
Jan Hubicka 6262f66a0b i386.md (align): Fix warning; clarify what to do when no p2align is available.
* i386.md (align): Fix warning; clarify what to do when no p2align
	is available.

From-SVN: r67485
2003-06-05 11:25:43 +00:00
Nick Clifton 3a30516dd0 config.gcc (m32r-elf): Revert previous delta.
* config.gcc (m32r-elf): Revert previous delta.
* config/m32r/t-m32r (crtinit.o): Fix rule to work with multilibs.
  Remove m32rx specific version.
  (crtfini.o): Likewise.
  (EXTRA_MULTILIB_PARTS): Define.

From-SVN: r67483
2003-06-05 09:12:02 +00:00
Eric Botcazou 53e5f17323 md.texi (Machine Constraints): Correct the meaning of constraints related to floating-point registers on SPARC.
* doc/md.texi (Machine Constraints): Correct the meaning of
	constraints related to floating-point registers on SPARC.

From-SVN: r67481
2003-06-05 08:36:53 +00:00
Eric Botcazou c6cc7e13f4 re PR target/10663 ([Solaris] New configure check aborts with Sun tools.)
PR target/10663
	* configure.in (HAVE_LD_RO_RW_SECTION_MIXING): Redirect
	assembler and linker output to /dev/null.
	Use a 'sed' construct instead of 'grep -A1'.
	* configure: Regenerate.

Co-Authored-By: Paolo Bonzini <bonzini@gnu.org>

From-SVN: r67479
2003-06-05 07:50:42 +00:00
Matt Kraai 3aa07c6de0 * bindgen.adb (Gen_Adafinal_C, Gen_Adainit_C, Gen_Elab_Defs_C)
(Gen_Main_C, Gen_Output_File_C): Generate ISO C.

From-SVN: r67478
2003-06-05 07:11:39 +00:00
Matt Kraai f109386655 gnat_ug.texi (The GNAT Run-Time Library Builder gnatlbr): Remove non-VMS directive.
* gnat_ug.texi (The GNAT Run-Time Library Builder gnatlbr):
	Remove non-VMS directive.
	(Switches for gnatlbr, Optimization Levels): Remove non-VMS
	alternatives.
	(Examples of gnatls Usage): Remove VMS alternative.

From-SVN: r67477
2003-06-05 06:59:57 +00:00
Christopher Faylor ccc1ce6eac cygwin caveat
From-SVN: r67476
2003-06-05 03:54:44 +00:00
Richard Henderson 74dc3e94ed i386.c (struct ix86_address): Add seg.
* config/i386/i386.c (struct ix86_address): Add seg.
        (no_seg_address_operand): New.
        (ix86_decompose_address): Restructure PLUS loop.  Accept one
        UNSPEC_TP if TARGET_TLS_DIRECT_SEG_REFS.  Adjust ESP swap test
        to test for a regnum, not stack_pointer_rtx.
        (ix86_address_cost): Reduce cost if non-default segment.
        (legitimate_address_p): Remove UNSPEC_TP check.
        (get_thread_pointer): Add to_reg argument.  Don't represent
        the thread pointer as a memory load.
        (legitimize_tls_address): Split out of ...
        (legitimize_address): ... here.
        (print_operand_address): Handle parts.seg.
        (ix86_expand_move): Use legitimize_tls_address.
        (ix86_rtx_costs): Handle UNSPEC_TP.
        * config/i386/i386.h (MASK_TLS_DIRECT_SEG_REFS): New.
        (TARGET_TLS_DIRECT_SEG_REFS): New.
        (TARGET_SWITCHES): Add tls-direct-seg-refs.
        (TARGET_TLS_DIRECT_SEG_REFS_DEFAULT): Default.
        (PREDICATE_CODES): Add no_seg_address_operand.
        * config/i386/i386.md (lea_1): Use it.
        (lea_1_rex64, lea_1_zext, lea_2_rex64): Likewise.
        (load_tp_si, add_tp_si, load_tp_di, add_tp_di): New.
        * config/i386/linux.h (TARGET_TLS_DIRECT_SEG_REFS_DEFAULT): New.
        * config/i386/linux64.h (TARGET_TLS_DIRECT_SEG_REFS_DEFAULT): New.
        * doc/invoke.texi: Add -mtls-direct-seg-refs.

From-SVN: r67475
2003-06-04 17:23:23 -07:00
Mark Mitchell d7068b3d2a Makefile.in (QMTESTRUNFLAGS): Set for DejaGNU emulation.
* Makefile.in (QMTESTRUNFLAGS): Set for DejaGNU emulation.
	(QMTEST_GPP_TESTS): Use "g++" by default.
	(stamp-qmtest): Tweak database creation.
	(QMTEST_DIR/context): Update context file format.
	(qmtest-g++): Tweak command-line.

	* README.QMTEST: Update.

From-SVN: r67474
2003-06-05 00:17:16 +00:00
GCC Administrator 76c05f8f30 Daily bump.
From-SVN: r67472
2003-06-05 00:16:07 +00:00
Kaveh R. Ghazi 6b6600bd8e Makefile.in (varasm.o): Don't set -Wno-error.
* Makefile.in (varasm.o): Don't set -Wno-error.
	* rs6000/t-rs6000 (varasm.o, out_object_file): Don't clear.

From-SVN: r67469
2003-06-04 23:21:26 +00:00
Paolo Carlini 7778fa6e3b basic_string.h (_M_fold, [...]): Constify various variables.
2003-06-04  Paolo Carlini  <pcarlini@unitus.it>

	* include/bits/basic_string.h (_M_fold, insert(iterator, _CharT),
	erase(iterator), erase(iterator, iterator), c_str,
	compare(const basic_string&)): Constify various variables.
	* include/bits/basic_string.tcc (_S_construct(_InIter, _InIter,
	const _Alloc&, input_iterator_tag), _M_destroy, _M_mutate,
	_S_create, resize, _M_replace, _M_replace_safe,
	append(const basic_string&), append(const basic_string&, size_type,
	size_type), append(const _CharT*, size_type), append(size_type,
	_CharT), operator+(const _CharT*, const basic_string&),
	operator+(_CharT, const basic_string&), replace(iterator, iterator,
	size_type, _CharT), find(const _CharT*, size_type, size_type),
	find(_CharT, size_type), rfind(const _CharT*, size_type, size_type),
	rfind(_CharT, size_type), compare(size_type, size_type,
	const basic_string&), compare(size_type, size_type,
	const basic_string&, size_type, size_type), compare(const _CharT*),
	compare(size_type, size_type, const _CharT*), compare(size_type,
	size_type, const _CharT*, size_type)): Likewise.

From-SVN: r67468
2003-06-04 22:53:05 +00:00
Zack Weinberg 1072ec3fdc re PR bootstrap/3163 ([3.3 Only] gcc/aclocal.m4 mmap test fails on UnixWare 7.1.1)
PR bootstrap/3163
	* aclocal.m4 (AC_FUNC_MMAP_ANYWHERE, AC_FUNC_MMAP_FILE): Delete.
	(gcc_AC_FUNC_MMAP_BLACKLIST): New.
	* configure.in: Check for sys/mman.h and mmap in AC_CHECK_HEADERS
	and AC_CHECK_FUNCS lists, respectively.  Use
	gcc_AC_FUNC_MMAP_BLACKLIST, not AC_FUNC_MMAP_ANYWHERE nor
	AC_FUNC_MMAP_FILE.
	* configure, config.in: Regenerate.

From-SVN: r67467
2003-06-04 22:21:21 +00:00
J"orn Rennecke 88d5a16e0b decl.c (grokdeclarator): Error_mark_node in, error_mark_node out.
gcc/cp:
	* decl.c (grokdeclarator): Error_mark_node in, error_mark_node out.

gcc/testsuite/g++.old-deja/g++.oliva:
	* template1.C (bar): Remove xfail marker.

From-SVN: r67465
2003-06-04 23:00:22 +01:00
Kaveh R. Ghazi c53dddc232 aout.h (ASM_OUTPUT_SKIP): Fix cast for format specifier warning.
* arm/aout.h (ASM_OUTPUT_SKIP): Fix cast for format specifier warning.
	* arm.c (arm_output_function_prologue): Fix format specifiers.
	* arm.h (ARM_PRINT_OPERAND_ADDRESS): Likewise.
	* m68k.c (m68k_output_mi_thunk): Use more readable %wd instead of
	HOST_WIDE_INT_PRINT_DEC.
	* vax.c (vax_output_function_prologue): Fix format specifiers.

From-SVN: r67464
2003-06-04 21:18:48 +00:00
Richard Henderson 7b9c108f63 cse.c (find_best_addr): Consider binary operators even if second argument is not CONST_INT.
* cse.c (find_best_addr): Consider binary operators even if second
        argument is not CONST_INT.

From-SVN: r67463
2003-06-04 14:05:20 -07:00
Zdenek Dvorak c48ec59087 * doc/invoke.texi (max-cse-path-length): Document.
From-SVN: r67462
2003-06-04 20:59:56 +00:00
Richard Henderson 9ccf96814f * config/i386/i386.md (align): Use ASM_OUTPUT_*ALIGN macros.
From-SVN: r67461
2003-06-04 13:06:34 -07:00
Andrew Pinski 9dce39a4e3 darwin.h (RS6000_OUTPUT_BASENAME): Remove semi-colon at the end of the expression.
* config/rs6000/darwin.h (RS6000_OUTPUT_BASENAME):
	Remove semi-colon at the end of the expression.

From-SVN: r67459
2003-06-04 21:01:54 +02:00
Kaveh R. Ghazi ad929cd5ab i370.c (mvs_function_name_length): Fix signed/unsigned warnings.
* i370.c (mvs_function_name_length): Fix signed/unsigned warnings.
	* i370.h (mvs_function_name_length): Likewise.
	* i960.h (CONSTANT_ALIGNMENT): Likewise.
	* mips/linux.h (ASM_OUTPUT_ALIGNED_BSS): Likewise.
	* pa/pa-pro-end.h (ASM_OUTPUT_ALIGNED_COMMON): Likewise.
	* pa.h (ASM_OUTPUT_ALIGNED_COMMON): Likewise.
	* rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Delete unused
	variable.

From-SVN: r67458
2003-06-04 17:53:07 +00:00
Daniel Jacobowitz 7816bea0e2 config.gcc: Reorganize --with-cpu logic.
* config.gcc: Reorganize --with-cpu logic.  Set
	configure_default_options according to the default CPU, --with-cpu,
	--with-arch, --with-tune, --with-schedule, --with-abi, and
	--with-float.  Check for legal values of various options.
	* configure.in: Define configure_default_options in configargs.h.
	* configure: Regenerated.
	* config/mips/mips.h (TARGET_DEFAULT_ARCH_P)
	(TARGET_DEFAULT_FLOAT_P): New macros.
	* gcc.c (do_option_spec): New function.
	(struct default_spec, option_default_specs): New.
	(main): Call do_option_spec.
	* config/alpha/alpha.h, config/arm/arm.h, config/i386/i386.h,
	config/mips/mips.h, config/pa/pa.h, config/rs6000/rs6000.h,
	config/sparc/sparc.h (OPTION_DEFAULT_SPECS): Define.

	* doc/install.texi: Update --with-cpu documentation.  Mention
	--with-arch, --with-schedule, --with-tune, --with-abi, and
	--with-float.
	* doc/tm.texi (Driver): Document OPTION_DEFAULT_SPECS.

From-SVN: r67457
2003-06-04 17:50:44 +00:00
Daniel Jacobowitz 83079d893c * config.gcc: Only process --with-cpu logic in the third pass.
From-SVN: r67456
2003-06-04 17:44:03 +00:00
Daniel Jacobowitz 73f09c9913 config.gcc: Reorganize --with-cpu section.
* config.gcc: Reorganize --with-cpu section.  Remove an
	obsolete comment about the default CPU for x86-64.  Fix
	a typo for the ep9312.  Update the list of supported PowerPC
	CPUs.  Support a limited set of new --with-cpu options
	for i386.

From-SVN: r67455
2003-06-04 17:42:53 +00:00
Aldy Hernandez 165848dad3 rs6000.c (rs6000_complex_function_value): Unpack complex numbers <= 32 bits into two registers.
2003-06-04  Aldy Hernandez  <aldyh@redhat.com>

        * config/rs6000/rs6000.c (rs6000_complex_function_value): Unpack
        complex numbers <= 32 bits into two registers.

From-SVN: r67454
2003-06-04 17:41:06 +00:00
Kaveh R. Ghazi 74eda121a8 alpha.c (print_operand_address): Fix format specifier warnings.
* alpha.c (print_operand_address): Fix format specifier warnings.
	* alpha/elf.h (ASM_OUTPUT_ALIGNED_COMMON): Likewise.
	* alpha/vms.h (ASM_OUTPUT_ALIGNED_COMMON): Likewise.
	* arm/aof.h (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Likewise.
	* arm/pe.h (ASM_OUTPUT_COMMON): Likewise.
	* avr.h (ASM_OUTPUT_COMMON, ASM_GENERATE_INTERNAL_LABEL,
	ASM_OUTPUT_SKIP): Likewise.
	* c4x.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
	* dsp16xx.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
	* h8300.h (ASM_GENERATE_INTERNAL_LABEL, ASM_OUTPUT_COMMON):
	Likewise.
	* i370.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
	* i386/cygming.h (ASM_OUTPUT_COMMON): Likewise.
	* i386/darwin.h (ASM_OUTPUT_COMMON): Likewise.
	* i960.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
	* m68k/hp320.h (PRINT_OPERAND_ADDRESS): Likewise.
	* mcore.h (ASM_OUTPUT_ALIGNED_COMMON): Likewise.
	* pdp11.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
	* ptx4.h (ASM_OUTPUT_ALIGNED_COMMON): Likewise.
	* sparc/freebsd.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
	* svr3.h (ASM_OUTPUT_COMMON): Likewise.

From-SVN: r67453
2003-06-04 17:33:51 +00:00
J"orn Rennecke e3091a5f95 c-decl.c (c_init_decl_processing): Clear input_file_name while building common nodes.
* c-decl.c (c_init_decl_processing): Clear input_file_name
	while building common nodes.
	* dwarf2out.c (gen_compile_unit_die, dwarf2out_finish):
	Don't add working directory for strings like <built-in> .

From-SVN: r67452
2003-06-04 18:19:36 +01:00
David Edelsohn f0483418a0 install.texi (*-ibm-aix*): Native as and ld required to bootstrap on AIX 5L.
* doc/install.texi (*-ibm-aix*): Native as and ld required
        to bootstrap on AIX 5L.

From-SVN: r67450
2003-06-04 13:11:18 -04:00
Richard Henderson 0bfa5f65bf c-common.c (handle_cleanup_attribute): New.
* c-common.c (handle_cleanup_attribute): New.
        (c_common_attributes): Add it.
        * c-decl.c (finish_decl): Honor the cleanup attribute.
        * doc/extend.texi (Variable Attributes): Document it.

        * unwind-c.c: New file.
        * Makefile.in (LIB2ADDEH): Add it.
        * config/t-darwin, config/t-linux, config/t-linux-gnulibc1,
        config/ia64/t-ia64: Likewise.

        * gcc.dg/cleanup-1.c: New.
        * gcc.dg/cleanup-2.c: New.
        * gcc.dg/cleanup-3.c: New.
        * gcc.dg/cleanup-4.c: New.
        * gcc.dg/cleanup-5.c: New.
        * gcc.dg/cleanup-6.c: New.
        * gcc.dg/cleanup-7.c: New.

From-SVN: r67449
2003-06-04 10:06:00 -07:00
Jakub Jelinek 3edc56a9e5 function.c (trampolines_created): New variable.
* function.c (trampolines_created): New variable.
	(expand_function_end): Set it when doing INITIALIZE_TRAMPOLINE.
	* function.h (trampolines_created): Add.
	* config/s390/linux.h (ASM_FILE_END): Define.
	* config/alpha/linux-elf.h (ASM_FILE_END): Define.
	* config/m68k/linux.h (ASM_FILE_END): Define.
	* config/rs6000/linux.h (ASM_FILE_END): Define.
	* config/rs6000/linux64.h (ASM_FILE_END): Define.
	* config/rs6000/ppc-asm.h: Add .note.GNU-stack on powerpc-linux.
	* config/sparc/linux.h (ASM_FILE_END): Define.
	* config/sparc/linux64.h (ASM_FILE_END): Define.
	* config/i386/i386.c (ix86_asm_file_end): Use SUBTARGET_FILE_END.
	* config/i386/linux.h (SUBTARGET_FILE_END): Define.
	* config/i386/linux64.h (SUBTARGET_FILE_END): Define.

From-SVN: r67447
2003-06-04 18:44:51 +02:00
Jan Hubicka d2c49530bb i386.c (min_insn_size, [...]): New functions
* i386.c (min_insn_size, k8_avoid_jump_misspredicts): New functions
	(ix86_reorg): Use it.
	* i386.md (align): New insn pattern.

From-SVN: r67446
2003-06-04 16:42:23 +00:00
Kaveh R. Ghazi 05a0e2af58 * toplev.c (rest_of_type_compilation): Fix typo.
From-SVN: r67445
2003-06-04 16:14:35 +00:00
Mark Mitchell 13e0ae41ca * g++.dg/abi/vague1.C: Use xfail, rather than embedded Tcl code.
From-SVN: r67444
2003-06-04 15:35:58 +00:00
Mark Mitchell ac871ee12a dg-pch.exp: New file.
* lib/dg-pch.exp: New file.
	* g++.dg/pch/pch.exp: Use dg-pch.exp.
	* gcc.dg/pch/pch.exp: Likewise.

From-SVN: r67443
2003-06-04 15:32:08 +00:00
Jakub Jelinek 9739c90c8d linux.h (NO_PROFILE_COUNTERS): Define to 1.
* config/i386/linux.h (NO_PROFILE_COUNTERS): Define to 1.
	* config/i386/freebsd.h (NO_PROFILE_COUNTERS): Likewise.
	* config/i386/netbsd-elf.h (NO_PROFILE_COUNTERS): Likewise.
	* config/xtensa/xtensa.h (NO_PROFILE_COUTNERS): Likewise.
	* config/darwin.h (NO_PROFILE_COUNTERS): Likewise.
	* final.c (NO_PROFILE_COUNTERS): Define to 0 if not defined.
	(profile_function): Allow NO_PROFILE_COUNTERS to be non-constant.
	* config/rs6000/rs6000.c (output_profile_hook): Likewise.

	* configure.in (powerpc*-*, s390*-*): Set tls_as_opt.
	Pass it to $gcc_cv_as.
	* configure: Rebuilt.

	* config/rs6000/rs6000.c (rs6000_abi_name): Remove initializer.
	(print_operand): Allow TARGET_AIX to be non-constant.
	(rs6000_aix_emit_builtin_unwind_init, rs6000_emit_eh_toc_restore):
	Define unconditionally.
	(rs6000_elf_declare_function_name): New function.
	* config/rs6000/rs6000.md (eh_return): Allow TARGET_AIX to be
	non-constant.
	* config/rs6000/linux64.h [!RS6000_BI_ARCH] (TARGET_64BIT): Define
	to 1.
	(DEFAULT_ARCH64_P, RS6000_BI_ARCH_P): Define.
	[IN_LIBGCC2] (TARGET_64BIT): Define based on whether __powerpc64__
	is defined.
	(TARGET_AIX): Define to 1 if TARGET_64BIT.
	(PROCESSOR_DEFAULT): Remove.
	(TARGET_RELOCATABLE, RS6000_ABI_NAME, INVALID_64BIT,
	INVALID_32BIT, SUBSUBTARGET_OVERRIDE_OPTIONS): Define.
	[RS6000_BI_ARCH] (OVERRIDE_OPTIONS, ASM_FILE_START): Define.
	(ASM_DEFAULT_SPEC, ASM_SPEC, LINK_OS_LINUX_SPEC): Define for both
	-m32 and -m64.
	(MULTILIB_DEFAULTS): Define.
	(SUBSUBTARGET_EXTRA_SPECS): Define.
	(ASM_SPEC32, ASM_SPEC64, ASM_SPEC_COMMON): Define.
	(TARGET_TOC): Define only if !RS6000_BI_ARCH.
	(TARGET_NO_TOC): Remove.
	[!RS6000_BI_ARCH] (TARGET_RELOCATABLE, TARGET_EABI,
	TARGET_PROTOTYPE): Define to 0.
	(NO_PROFILE_COUNTERS): Define to TARGET_64BIT.
	(PROFILE_HOOK): Only call output_profile_hook if TARGET_64BIT.
	(ADJUST_FIELD_ALIGN, ROUND_TYPE_ALIGN): Adjust to work properly
	if !TARGET_64BIT.
	(USER_LABEL_PREFIX): Remove.
	(JUMP_TABLES_IN_TEXT_SECTION): Define to TARGET_64BIT.
	(SETUP_FRAME_ADDRESSES): Only call rs6000_aix_emit_builtin_unwind_init
	if TARGET_64BIT.
	(TARGET_OS_CPP_BUILTINS): Handle both -m32 and -m64.
	(LINK_OS_LINUX_SPEC32, LINK_OS_LINUX_SPEC64): Define.
	(STARTFILE_LINUX_SPEC, ENDFILE_LINUX_SPEC): Remove.
	(TOC_SECTION_ASM_OP): Define depending on TARGET_64BIT.
	(MINIMAL_TOC_SECTION_ASM_OP): Likewise.
	(SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE): Define depending on
	TARGET_64BIT.
	(RS6000_CALL_GLUE): Likewise.
	(SAVE_FP_PREFIX, SAVE_FP_SUFFIX, RESTORE_FP_PREFIX,
	RESTORE_FP_SUFFIX): Likewise.
	(ASM_DECLARE_FUNCTION_NAME): Remove.
	(ASM_DECLARE_FUNCTION_SIZE, ASM_OUTPUT_SOURCE_LINE,
	DBX_OUTPUT_BRAC, DBX_OUTPUT_NFUN): Only output dot before function
	name if TARGET_64BIT.
	(ASM_OUTPUT_SPECIAL_POOL_ENTRY_P): Handle both TARGET_64BIT and
	!TARGET_64BIT.
	(ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Remove undefs.
	(ASM_PREFERRED_EH_DATA_FORMAT): Take TARGET_64BIT into account.
	(DRAFT_V4_STRUCT_RET): Define.
	(SIGNAL_FRAMESIZE): New enum value.
	(MD_FALLBACK_FRAME_STATE_FOR): Define.
	* config/rs6000/default64.h: New file.
	* config/rs6000/sysv4.h (SUBTARGET_SWITCHES): Add -m32 and -m64
	options.
	(SUBTARGET_OVERRIDE_OPTIONS): If rs6000_abi_name is NULL, set it
	to RS6000_ABI_NAME.  Only disallow mixing of -fPIC with -mcall-aixdesc
	if !TARGET_64BIT.
	[!RS6000_BI_ARCH] (SUBSUBTARGET_OVERRIDE_OPTIONS): Define.
	(ASM_DECLARE_FUNCTION_NAME): Use rs6000_elf_declare_function_name
	function.
	(TARGET_OS_SYSV_CPP_BUILTINS): Define.
	(TARGET_OS_CPP_BUILTINS): Use it.
	(CPP_SYSV_SPEC): Remove.
	(CPP_SPEC): Remove cpp_sysv.
	(SUBTARGET_EXTRA_SPECS): Remove cpp_sysv.
	Add SUBSUBTARGET_EXTRA_SPECS.
	(SUBSUBTARGET_EXTRA_SPECS): Define.
	* config/rs6000/biarch64.h: New file.
	* config/rs6000/rs6000-protos.h (rs6000_elf_declare_function_name):
	New prototype.
	* config/rs6000/x-linux64: New file.
	* config/rs6000/t-linux64: Build -m64, -m32 and -m32 -msoft-float
	multilibs.
	* config/rs6000/eabi-ci.asm: Protect with #ifndef __powerpc64__.
	* config/rs6000/eabi-cn.asm: Likewise.
	* config/rs6000/tramp.asm: Likewise.
	* config/rs6000/sol-ci.asm: Likewise.
	* config/rs6000/sol-cn.asm: Likewise.
	* config/rs6000/linux.h (TARGET_64BIT): Define to 0.
	(TARGET_OS_CPP_BUILTINS): Use TARGET_OS_SYSV_CPP_BUILTINS.
	* config/rs6000/ppc-asm.h: Move __powerpc64__ section before
	_CALL_AIXDESC section.
	* config.gcc (powerpc64-*-linux*): Configure a bi-arch compiler,
	defaulting to -m64 unless --with-cpu= is one of the 32-bit CPUs
	or default32.

Co-Authored-By: Alan Modra <amodra@bigpond.net.au>

From-SVN: r67442
2003-06-04 17:23:42 +02:00
Daniel Jacobowitz 150b72ed1f * config.gcc: Revert accidentally committed ARM changes.
From-SVN: r67440
2003-06-04 14:53:59 +00:00
Roger Sayle 385a9348eb builtins.c (dconstpi, dconste): New mathematical constants.
* builtins.c (dconstpi, dconste): New mathematical constants.
	(init_builtin_dconsts): New function to initialize dconstpi
	and dconste.
	(fold_builtin): Optimize exp(1.0) = e.  Evaluate exp(x) at
	compile time with -ffast-math when x is an integer constant.
	Optimize tan(0.0) = 0.0.  Optimize atan(0.0) = 0.0,
	atan(1.0) = pi/4 and tan(atan(x)) = x with -ffast-math.

	* gcc.dg/builtins-2.c: Add tests for tan(atan(x)).
	* gcc.dg/builtins-3.c: Add tests for tan(0.0) and atan(0.0).
	* gcc.dg/builtins-7.c: Add tests for tan(atan(x)) == x.
	* gcc.dg/builtins-17.c: New test case.
	* gcc.dg/i386-387-4.c: New test case.
	* gcc.c-torture/execute/ieee/mzero4.c: New test case.

From-SVN: r67438
2003-06-04 12:20:40 +00:00
Roger Sayle 8c6a82695b calls.c (expand_call): Avoid calling pure or const functions when the result is ignored (or void) and...
* calls.c (expand_call): Avoid calling pure or const functions
	when the result is ignored (or void) and none of the arguments
	are volatile.  Move warning diagnostic earlier in function.

From-SVN: r67436
2003-06-04 12:07:52 +00:00
Andreas Jaeger e2d8bb2946 system.h: Do not poison TDESC_SECTION_ASM_OP, RDATA_SECTION_ASM_OP and SUBTARGET_PROLOGUE.
* system.h: Do not poison TDESC_SECTION_ASM_OP,
	RDATA_SECTION_ASM_OP and SUBTARGET_PROLOGUE.

From-SVN: r67435
2003-06-04 13:35:10 +02:00
Kaveh R. Ghazi b17213394b final.c (asm_fprintf): Update comments...
* final.c (asm_fprintf): Update comments, accept "-+ #0" flags,
	optimize '%' case, handle %c, don't accept %p, %e, %f or %g,
	handle %ll, optimize regular character case.

From-SVN: r67434
2003-06-04 08:34:22 +00:00
Zdenek Dvorak 9bf8cfbfcd Makefile.in (cse.o): Add params.h dependency.
* Makefile.in (cse.o): Add params.h dependency.
	* cse.c: Include params.h.
	(PATHLENGTH): Removed.
	(struct cse_basic_block_data): Make path array dynamic.
	(cse_end_of_basic_block): Use PARAM_MAX_CSE_PATH_LENGTH instead of PATHLENGTH.
	(cse_main, cse_basic_block): Allocate path array.
	* params.def (PARAM_MAX_CSE_PATH_LENGTH): New.

From-SVN: r67433
2003-06-04 07:51:41 +00:00
Jan Hubicka 253c7a0090 i386.c (ix86_reorg): Replace the jump instead of adding nop.
* i386.c (ix86_reorg): Replace the jump instead of adding nop.
	* i386.md (UNSPEC_REP): New constant.
	(return_internal_long): New pattern.

From-SVN: r67432
2003-06-04 07:50:27 +00:00
Eric Botcazou 01d3224a48 re PR rtl-optimization/11018 ([SPARC] -mcpu=ultrasparc busts tar-1.13.25)
PR optimization/11018
	* config/sparc/sparc.c (sparc_v8plus_shift): Use which_alternative
	consistently to decide whether the scratch register is really
	required.

From-SVN: r67429
2003-06-04 07:13:03 +00:00
Eric Botcazou ef0139b122 re PR rtl-optimization/10876 (Segfault when compiling KDE 3.1.2)
PR optimization/10876
	* config/sparc/sparc.h (CONST_OK_FOR_LETTER): Add
	new 'O' constraint for constant 4096.
	(CONST_DOUBLE_OK_FOR_LETTER_P): Likewise.
	* config/sparc/sparc.md (adddi3 expander): Canonicalize pattern.
	Do not transform into MINUS insn for constant 4096.
	(*adddi3_sp64 insn): Canonicalize pattern. Add new alternative
	for constant 4096 as third operand.
	(addsi3 expander): Remove.
	(*addsi3 insn): Rename into 'addsi3'. Canonicalize pattern. Add
	new alternative for constant 4096 as third operand.
	(subdi3 expander): Do not transform into PLUS insn for constant 4096.
	(*subdi3_sp64 insn): Add new alternative for constant 4096 as third
	operand.
	(subsi3 expander): Remove.
	(*subsi3 insn): Rename into 'subsi3'. Add new alternative for
	constant 4096 as third operand.
	* doc/md.texi (Machine Constraints): Document new 'O' constraint for
	the SPARC port.

From-SVN: r67426
2003-06-04 06:52:17 +00:00
Andreas Jaeger 74764b8442 * unwind-dw2-fde-glibc.c (_Unwind_IteratePhdrCallback):Remove usage of
CRT_GET_RFIB_TEXT.

From-SVN: r67425
2003-06-04 07:41:31 +02:00
Chris Demetriou 18de8a9870 t-linux64 (CRTSTUFF_T_CFLAGS_S): Define.
2003-06-03  Chris Demetriou  <cgd@broadcom.com>

        * config/mips/t-linux64 (CRTSTUFF_T_CFLAGS_S): Define.

From-SVN: r67424
2003-06-03 22:35:15 -07:00
Andreas Jaeger f691dc3b22 uwin.h: Remove SUBTARGET_PROLOGUE.
* config/i386/uwin.h: Remove SUBTARGET_PROLOGUE.

	* config/i386/i386.c (ix86_expand_prologue): Do not use
	SUBTARGET_PROLOGUE.

	* system.h: Poision SUBTARGET_PROLOGUE.

	* config/arm/arm-protos.h: Remove unused rdate_section prototype.

	* output.h: Remove TDESC_SECTION_ASM_OP and RDATA_SECTION_ASM_OP
	dependend code.

	* system.h: Poison TDESC_SECTION_ASM_OP and RDATA_SECTION_ASM_OP.

	* system.h: Poison INSN_CACHE_DEPTH, INSN_CACHE_SIZE and
	INSN_CACHE_LINE_WIDTH.

	* libgcc2.c (INSN_CACHE_PLANE_SIZE): Removed.
	(__clear_cache): Remove code dependend on INSN_CACHE_DEPTH,
	INSN_CACHE_SIZE and INSN_CACHE_LINE_WIDTH.

	* doc/tm.texi (Trampolines): Remove INSN_CACHE_DEPTH,
	INSN_CACHE_SIZE and INSN_CACHE_LINE_WIDTH.

	* dbxout.c (dbxout_type): Remove usage of DBX_OUTPUT_ENUM.
	(dbxout_symbol): Remove usage of DBX_OUTPUT_CONSTANT_SYMBOL.
	(dbxout_block): Remove usage of DBX_OUTPUT_CATCH.
	(dbxout_block): Remove usage of DBX_LBRAC_FIRST.
	(dbxout_source_file): Remove usage of DBX_OUTPUT_SOURCE_FILENAME.
	(dbxout_init): Remove test for DBX_WORKING_DIRECTORY.

	* doc/tm.texi (DBX Options): Do not document DBX_LBRAC_FIRST,
	DBX_OUTPUT_SOURCE_FILENAME and DBX_OUTPUT_ENUM and
	DBX_WORKING_DIRECTORY.

	* system.h: Poison DBX_LBRAC_FIRST, DBX_OUTPUT_ENUM,
	DBX_OUTPUT_SOURCE_FILENAME and DBX_WORKING_DIRECTORY.

	* config/frv/frv-protos.h: Remove unused const_section
	declaration.
	* config/vax/vax-protos.h: Likewise.

	* output.h: Remove CONST_SECTION_ASM_OP usage.

	* system.h: Poison CONST_SECTION_ASM_OP.

	* crtstuff.c (__do_global_dtors_aux): Remove usage of CRT_GET_RFIB_TEXT
	(frame_dummy): Likewise.
	* unwind-dw2-fde-glibc.c (_Unwind_IteratePhdrCallback): Likewise.
	* system.h: Poison CRT_GET_RFIB_TEXT.

From-SVN: r67423
2003-06-04 07:21:41 +02:00
Andreas Jaeger 6d3a8e3c78 * collect2.c (is_ctor_dtor): Remove CFRONT_LOSSAGE dependend code.
From-SVN: r67422
2003-06-04 06:56:26 +02:00
Andreas Jaeger a816c98137 fix-header.c: Remove ADD_MISSING_EXTERN_C dependend variables.
* fix-header.c: Remove ADD_MISSING_EXTERN_C dependend variables.
	(write_lbrac): Remove ADD_MISSING_EXTERN_C dependend code.
	(recognized_function): Likewise.
	(read_scan_file): Likewise.

From-SVN: r67421
2003-06-04 06:50:47 +02:00