1. 05 Jun, 2003 10 commits
  2. 04 Jun, 2003 30 commits
    • Makefile.in (varasm.o): Don't set -Wno-error. · 6b6600bd
      	* Makefile.in (varasm.o): Don't set -Wno-error.
      	* rs6000/t-rs6000 (varasm.o, out_object_file): Don't clear.
      
      From-SVN: r67469
      Kaveh R. Ghazi committed
    • basic_string.h (_M_fold, [...]): Constify various variables. · 7778fa6e
      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
      Paolo Carlini committed
    • re PR bootstrap/3163 ([3.3 Only] gcc/aclocal.m4 mmap test fails on UnixWare 7.1.1) · 1072ec3f
      	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
      Zack Weinberg committed
    • decl.c (grokdeclarator): Error_mark_node in, error_mark_node out. · 88d5a16e
      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
      J"orn Rennecke committed
    • aout.h (ASM_OUTPUT_SKIP): Fix cast for format specifier warning. · c53dddc2
      	* 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
      Kaveh R. Ghazi committed
    • cse.c (find_best_addr): Consider binary operators even if second argument is not CONST_INT. · 7b9c108f
              * cse.c (find_best_addr): Consider binary operators even if second
              argument is not CONST_INT.
      
      From-SVN: r67463
      Richard Henderson committed
    • * doc/invoke.texi (max-cse-path-length): Document. · c48ec590
      From-SVN: r67462
      Zdenek Dvorak committed
    • darwin.h (RS6000_OUTPUT_BASENAME): Remove semi-colon at the end of the expression. · 9dce39a4
      	* config/rs6000/darwin.h (RS6000_OUTPUT_BASENAME):
      	Remove semi-colon at the end of the expression.
      
      From-SVN: r67459
      Andrew Pinski committed
    • i370.c (mvs_function_name_length): Fix signed/unsigned warnings. · ad929cd5
      	* 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
      Kaveh R. Ghazi committed
    • config.gcc: Reorganize --with-cpu logic. · 7816bea0
      	* 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
      Daniel Jacobowitz committed
    • config.gcc: Reorganize --with-cpu section. · 73f09c99
      	* 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
      Daniel Jacobowitz committed
    • rs6000.c (rs6000_complex_function_value): Unpack complex numbers <= 32 bits into two registers. · 165848da
      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
      Aldy Hernandez committed
    • alpha.c (print_operand_address): Fix format specifier warnings. · 74eda121
      	* 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
      Kaveh R. Ghazi committed
    • c-decl.c (c_init_decl_processing): Clear input_file_name while building common nodes. · e3091a5f
      	* 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
      J"orn Rennecke committed
    • install.texi (*-ibm-aix*): Native as and ld required to bootstrap on AIX 5L. · f0483418
              * doc/install.texi (*-ibm-aix*): Native as and ld required
              to bootstrap on AIX 5L.
      
      From-SVN: r67450
      David Edelsohn committed
    • c-common.c (handle_cleanup_attribute): New. · 0bfa5f65
              * 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
      Richard Henderson committed
    • function.c (trampolines_created): New variable. · 3edc56a9
      	* 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
      Jakub Jelinek committed
    • i386.c (min_insn_size, [...]): New functions · d2c49530
      	* i386.c (min_insn_size, k8_avoid_jump_misspredicts): New functions
      	(ix86_reorg): Use it.
      	* i386.md (align): New insn pattern.
      
      From-SVN: r67446
      Jan Hubicka committed
    • * toplev.c (rest_of_type_compilation): Fix typo. · 05a0e2af
      From-SVN: r67445
      Kaveh R. Ghazi committed
    • dg-pch.exp: New file. · ac871ee1
      	* lib/dg-pch.exp: New file.
      	* g++.dg/pch/pch.exp: Use dg-pch.exp.
      	* gcc.dg/pch/pch.exp: Likewise.
      
      From-SVN: r67443
      Mark Mitchell committed
    • linux.h (NO_PROFILE_COUNTERS): Define to 1. · 9739c90c
      	* 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
      Jakub Jelinek committed
    • builtins.c (dconstpi, dconste): New mathematical constants. · 385a9348
      
      	* 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
      Roger Sayle committed
    • calls.c (expand_call): Avoid calling pure or const functions when the result is… · 8c6a8269
      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
      Roger Sayle committed
    • system.h: Do not poison TDESC_SECTION_ASM_OP, RDATA_SECTION_ASM_OP and SUBTARGET_PROLOGUE. · e2d8bb29
      
      	* system.h: Do not poison TDESC_SECTION_ASM_OP,
      	RDATA_SECTION_ASM_OP and SUBTARGET_PROLOGUE.
      
      From-SVN: r67435
      Andreas Jaeger committed
    • final.c (asm_fprintf): Update comments... · b1721339
      	* 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
      Kaveh R. Ghazi committed
    • Makefile.in (cse.o): Add params.h dependency. · 9bf8cfbf
      	* 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
      Zdenek Dvorak committed