Eric Botcazou [Thu, 5 Jun 2003 07:50:42 +0000 (09:50 +0200)]
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
Matt Kraai [Thu, 5 Jun 2003 07:11:39 +0000 (07:11 +0000)]
* 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
Matt Kraai [Thu, 5 Jun 2003 06:59:57 +0000 (06:59 +0000)]
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
Christopher Faylor [Thu, 5 Jun 2003 03:54:44 +0000 (03:54 +0000)]
cygwin caveat
From-SVN: r67476
Richard Henderson [Thu, 5 Jun 2003 00:23:23 +0000 (17:23 -0700)]
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
Mark Mitchell [Thu, 5 Jun 2003 00:17:16 +0000 (00:17 +0000)]
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
GCC Administrator [Thu, 5 Jun 2003 00:16:07 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r67472
Kaveh R. Ghazi [Wed, 4 Jun 2003 23:21:26 +0000 (23:21 +0000)]
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
Paolo Carlini [Wed, 4 Jun 2003 22:53:05 +0000 (00:53 +0200)]
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
Zack Weinberg [Wed, 4 Jun 2003 22:21:21 +0000 (22:21 +0000)]
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
J"orn Rennecke [Wed, 4 Jun 2003 22:00:22 +0000 (22:00 +0000)]
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
Kaveh R. Ghazi [Wed, 4 Jun 2003 21:18:48 +0000 (21:18 +0000)]
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
Richard Henderson [Wed, 4 Jun 2003 21:05:20 +0000 (14:05 -0700)]
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
Zdenek Dvorak [Wed, 4 Jun 2003 20:59:56 +0000 (22:59 +0200)]
* doc/invoke.texi (max-cse-path-length): Document.
From-SVN: r67462
Richard Henderson [Wed, 4 Jun 2003 20:06:34 +0000 (13:06 -0700)]
* config/i386/i386.md (align): Use ASM_OUTPUT_*ALIGN macros.
From-SVN: r67461
Andrew Pinski [Wed, 4 Jun 2003 19:01:54 +0000 (19:01 +0000)]
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
Kaveh R. Ghazi [Wed, 4 Jun 2003 17:53:07 +0000 (17:53 +0000)]
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
Daniel Jacobowitz [Wed, 4 Jun 2003 17:50:44 +0000 (17:50 +0000)]
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
Daniel Jacobowitz [Wed, 4 Jun 2003 17:44:03 +0000 (17:44 +0000)]
* config.gcc: Only process --with-cpu logic in the third pass.
From-SVN: r67456
Daniel Jacobowitz [Wed, 4 Jun 2003 17:42:53 +0000 (17:42 +0000)]
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
Aldy Hernandez [Wed, 4 Jun 2003 17:41:06 +0000 (17:41 +0000)]
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
Kaveh R. Ghazi [Wed, 4 Jun 2003 17:33:51 +0000 (17:33 +0000)]
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
J"orn Rennecke [Wed, 4 Jun 2003 17:19:36 +0000 (17:19 +0000)]
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
David Edelsohn [Wed, 4 Jun 2003 17:11:18 +0000 (17:11 +0000)]
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
Richard Henderson [Wed, 4 Jun 2003 17:06:00 +0000 (10:06 -0700)]
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
Jakub Jelinek [Wed, 4 Jun 2003 16:44:51 +0000 (18:44 +0200)]
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
Jan Hubicka [Wed, 4 Jun 2003 16:42:23 +0000 (18:42 +0200)]
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
Kaveh R. Ghazi [Wed, 4 Jun 2003 16:14:35 +0000 (16:14 +0000)]
* toplev.c (rest_of_type_compilation): Fix typo.
From-SVN: r67445
Mark Mitchell [Wed, 4 Jun 2003 15:35:58 +0000 (15:35 +0000)]
* g++.dg/abi/vague1.C: Use xfail, rather than embedded Tcl code.
From-SVN: r67444
Mark Mitchell [Wed, 4 Jun 2003 15:32:08 +0000 (15:32 +0000)]
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
Jakub Jelinek [Wed, 4 Jun 2003 15:23:42 +0000 (17:23 +0200)]
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
Daniel Jacobowitz [Wed, 4 Jun 2003 14:53:59 +0000 (14:53 +0000)]
* config.gcc: Revert accidentally committed ARM changes.
From-SVN: r67440
Roger Sayle [Wed, 4 Jun 2003 12:20:40 +0000 (12:20 +0000)]
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
Roger Sayle [Wed, 4 Jun 2003 12:07:52 +0000 (12:07 +0000)]
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
Andreas Jaeger [Wed, 4 Jun 2003 11:35:10 +0000 (13:35 +0200)]
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
Kaveh R. Ghazi [Wed, 4 Jun 2003 08:34:22 +0000 (08:34 +0000)]
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
Zdenek Dvorak [Wed, 4 Jun 2003 07:51:41 +0000 (09:51 +0200)]
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
Jan Hubicka [Wed, 4 Jun 2003 07:50:27 +0000 (09:50 +0200)]
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
Eric Botcazou [Wed, 4 Jun 2003 07:13:03 +0000 (09:13 +0200)]
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
Eric Botcazou [Wed, 4 Jun 2003 06:52:17 +0000 (08:52 +0200)]
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
Andreas Jaeger [Wed, 4 Jun 2003 05:41:31 +0000 (07:41 +0200)]
* unwind-dw2-fde-glibc.c (_Unwind_IteratePhdrCallback):Remove usage of
CRT_GET_RFIB_TEXT.
From-SVN: r67425
Chris Demetriou [Wed, 4 Jun 2003 05:35:15 +0000 (05:35 +0000)]
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
Andreas Jaeger [Wed, 4 Jun 2003 05:21:41 +0000 (07:21 +0200)]
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
Andreas Jaeger [Wed, 4 Jun 2003 04:56:26 +0000 (06:56 +0200)]
* collect2.c (is_ctor_dtor): Remove CFRONT_LOSSAGE dependend code.
From-SVN: r67422
Andreas Jaeger [Wed, 4 Jun 2003 04:50:47 +0000 (06:50 +0200)]
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
Andreas Jaeger [Wed, 4 Jun 2003 04:48:16 +0000 (06:48 +0200)]
g77spec.c (lang_specific_driver): Remove ALT_LIBM usage.
* g77spec.c (lang_specific_driver): Remove ALT_LIBM usage.
* g++spec.c (lang_specific_driver): Remove ALT_LIBM usage.
From-SVN: r67419
Roger Sayle [Wed, 4 Jun 2003 04:42:14 +0000 (04:42 +0000)]
optabs.c (expand_binop): Optimize complex multiplication for the case of squaring a complex argument.
* optabs.c (expand_binop): Optimize complex multiplication for
the case of squaring a complex argument.
From-SVN: r67418
Roger Sayle [Wed, 4 Jun 2003 04:40:26 +0000 (04:40 +0000)]
optabs.c (expand_binop): Attempt to reuse pseudos for duplicate non-volatile operands of binary operations.
* optabs.c (expand_binop): Attempt to reuse pseudos for duplicate
non-volatile operands of binary operations.
(prepare_cmp_insn): Likewise.
From-SVN: r67417
Roger Sayle [Wed, 4 Jun 2003 04:36:53 +0000 (04:36 +0000)]
varasm.c (force_const_mem): Handle alignment of constants not representable as a type in the front-end language.
* varasm.c (force_const_mem): Handle alignment of constants not
representable as a type in the front-end language.
From-SVN: r67416
Aldy Hernandez [Wed, 4 Jun 2003 01:12:00 +0000 (01:12 +0000)]
forgot to commit.
From-SVN: r67415
Jason Merrill [Wed, 4 Jun 2003 01:06:09 +0000 (21:06 -0400)]
cp-tree.h (CP_AGGREGATE_TYPE_P): Accept vectors.
2003-06-03 Jason Merrill <jason@redhat.com>
* cp/cp-tree.h (CP_AGGREGATE_TYPE_P): Accept vectors.
* cp/decl.c (reshape_init): Handle vectors.
* testsuite/g++.dg/init/array10.C: New.
From-SVN: r67414
GCC Administrator [Wed, 4 Jun 2003 00:16:08 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r67412
Kazu Hirata [Tue, 3 Jun 2003 23:17:27 +0000 (23:17 +0000)]
flow.c (initialize_uninitialized_subregs): Use emit_move_insn instead of emitting a hardcoded move.
* flow.c (initialize_uninitialized_subregs): Use
emit_move_insn instead of emitting a hardcoded move.
From-SVN: r67409
Glen Nakamura [Tue, 3 Jun 2003 23:08:22 +0000 (23:08 +0000)]
* gcc.dg/
20020525-1.c: Replace 0x5a5a5a5a with -1.
From-SVN: r67407
Olivier Hainque [Tue, 3 Jun 2003 22:30:11 +0000 (22:30 +0000)]
re PR ada/9953 (Unsatisfied symbols: U_prep_frame_rec_for_unwind (code))
PR ada/9953:
* 5hsystem.ads: Remove pragma Linker_Option for pthreads library,
and turn ZCX_By_Default back to False since the underlying support
is not quite there yet.
From-SVN: r67406
Olivier Hainque [Tue, 3 Jun 2003 22:25:02 +0000 (22:25 +0000)]
re PR ada/9953 (Unsatisfied symbols: U_prep_frame_rec_for_unwind (code))
2003-06-04 Olivier Hainque <hainque@act-europe.fr>
PR ada/9953:
* 5hsystem.ads: Remove pragma Linker_Option for pthreads library,
and turn ZCX_By_Default back to False, since the underlying support
is not quite there yet.
From-SVN: r67405
Richard Henderson [Tue, 3 Jun 2003 21:29:48 +0000 (14:29 -0700)]
optabs.c (expand_abs_nojump): Split out from ...
* optabs.c (expand_abs_nojump): Split out from ...
(expand_abs): ... here.
* optabs.h (expand_abs_nojump): Declare.
* ifcvt.c: (noce_try_abs): Use expand_abs_nojump.
* Makefile.in (ifcvt.o): Depend on optabs.h.
From-SVN: r67404
Alan Modra [Tue, 3 Jun 2003 20:45:01 +0000 (20:45 +0000)]
* dwarf2out.c (DEBUG_STR_SECTION_FLAGS): Heed flag_merge_constants.
From-SVN: r67403
Nathanael Nerode [Tue, 3 Jun 2003 20:42:13 +0000 (20:42 +0000)]
Makefile.tpl: Make 'recursive targets' using autogen rather than shell loop.
* Makefile.tpl: Make 'recursive targets' using autogen rather
than shell loop. Remove duplicate 'clean' targets and false
comments.
* Makefile.def: Add systematic dependencies to 'recursive' targets.
Add systematic method of specifying missing targets in subdirs.
Add copyright boilerplate.
* Makefile.in: Regenerate.
* configure.in: Add 'recursive targets' to maybe list.
* configure: Regenerate.
From-SVN: r67402
Jason Thorpe [Tue, 3 Jun 2003 20:39:52 +0000 (20:39 +0000)]
config.gcc (default_use_cxa_atexit): New variable, defaults to no.
* config.gcc (default_use_cxa_atexit): New variable, defaults to no.
(*-*-netbsd[2-9]* | *-*-netbsdelf[2-9]*): Set default_use_cxa_atexit
to yes.
* configure.in: Allow default_use_cxa_atexit to determine the
value of DEFAULT_USE_CXA_ATEXIT if not explicitly enabled or
disabled.
* configure: Regenerate.
From-SVN: r67401
Douglas Rupp [Tue, 3 Jun 2003 20:28:14 +0000 (20:28 +0000)]
Makefile.in (TEXI_GCC_FILES): Remove vms.texi entry.
* Makefile.in (TEXI_GCC_FILES): Remove vms.texi entry.
* doc/gcc.texi: Remove vms.texi section.
* doc/vms.texi: Remove obsolete file.
From-SVN: r67400
Douglas B Rupp [Tue, 3 Jun 2003 20:22:20 +0000 (20:22 +0000)]
*** empty log message ***
From-SVN: r67399
J"orn Rennecke [Tue, 3 Jun 2003 19:10:09 +0000 (19:10 +0000)]
* g++.dg/abi/empty6.C (B): Request alignment of 8 bytes.
From-SVN: r67398
Joern Rennecke [Tue, 3 Jun 2003 19:04:23 +0000 (20:04 +0100)]
builtin-noret-1.c (_exit, _Exit): Make weak.
* gcc.dg/torture/builtin-noret-1.c (_exit, _Exit): Make weak.
* gcc.dg/torture/builtin-noret-2.c (_exit, _Exit): Likewise.
From-SVN: r67397
J"orn Rennecke [Tue, 3 Jun 2003 19:01:22 +0000 (19:01 +0000)]
configure.in (inhibit_libc): Don't define when configuring with --with-newlib --with-headers.
* configure.in (inhibit_libc): Don't define when configuring
with --with-newlib --with-headers.
* configure: Regenerate.
* t-sh: Remove LIB2FUNCS_EXTRA and embed-bb.c rules.
From-SVN: r67396
Nick Clifton [Tue, 3 Jun 2003 18:19:17 +0000 (18:19 +0000)]
asprintf.c: Change comment to note that -1 is returned upon error.
vasprintf.c: Likewise. (vasprintf): Return -1 upon error.
functions.texi: Document changes to asprintf and vasprintf.
From-SVN: r67395
Benjamin Kosnik [Tue, 3 Jun 2003 18:06:09 +0000 (18:06 +0000)]
fstream.tcc (pbackfail): Make a rarely taken 'if' branch less obscure.
2003-06-03 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/fstream.tcc (pbackfail): Make a rarely taken
'if' branch less obscure.
From-SVN: r67394
Rainer Orth [Tue, 3 Jun 2003 17:18:00 +0000 (17:18 +0000)]
configure.in (gcc_cv_as_hidden): Disable .hidden completely on IRIX 6 without GNU ld.
* configure.in (gcc_cv_as_hidden): Disable .hidden completely on
IRIX 6 without GNU ld.
* configure: Regenerate.
From-SVN: r67390
Roger Sayle [Tue, 3 Jun 2003 17:13:06 +0000 (17:13 +0000)]
expr.c (emit_move_insn_1): Use emit_move_insn to move the parts of a complex number rather than invoke...
* expr.c (emit_move_insn_1): Use emit_move_insn to move the parts
of a complex number rather than invoke mov_optab directly.
From-SVN: r67389
Kazu Hirata [Tue, 3 Jun 2003 17:10:48 +0000 (17:10 +0000)]
combine.c (simplify_set): Don't move a subreg in SET_SRC to SET_DEST if...
* combine.c (simplify_set): Don't move a subreg in SET_SRC to
SET_DEST if WORD_REGISTER_OPERATIONS is not defined.
From-SVN: r67388
Joern Rennecke [Tue, 3 Jun 2003 17:00:23 +0000 (18:00 +0100)]
builtin-noret-1.c (_exit, _Exit): Make weak.
* gcc.dg/torture/builtin-noret-1.c (_exit, _Exit): Make weak.
* gcc.dg/torture/builtin-noret-2.c (_exit, _Exit): Likewise.
From-SVN: r67387
Nathanael Nerode [Tue, 3 Jun 2003 16:48:03 +0000 (16:48 +0000)]
* MAINTAINERS: "GNATS only" -> "Bug database only".
From-SVN: r67382
Nathanael Nerode [Tue, 3 Jun 2003 16:40:42 +0000 (16:40 +0000)]
x86-64.h: Remove two target-independent comments; replace "GNU CC" with "GCC".
* config/i386/x86-64.h: Remove two target-independent comments;
replace "GNU CC" with "GCC".
From-SVN: r67381
Nathanael Nerode [Tue, 3 Jun 2003 16:35:42 +0000 (16:35 +0000)]
Makefile.tpl: Rename [+target+] to [+make_target+].
* Makefile.tpl: Rename [+target+] to [+make_target+].
* Makefile.def: Rename 'target' to 'make_target'.
From-SVN: r67380
Andrew Haley [Tue, 3 Jun 2003 16:13:22 +0000 (16:13 +0000)]
x86_64-signal.h (MAKE_THROW_FRAME): Mark sigcontext on stack volatile to prevent optimization from removing it.
2003-06-03 Andrew Haley <aph@redhat.com>
* include/x86_64-signal.h (MAKE_THROW_FRAME): Mark sigcontext on
stack volatile to prevent optimization from removing it.
From-SVN: r67379
Anthony Green [Tue, 3 Jun 2003 15:19:16 +0000 (15:19 +0000)]
Commit patch that was approved last october. Oops.
From-SVN: r67375
Aldy Hernandez [Tue, 3 Jun 2003 13:46:28 +0000 (13:46 +0000)]
simd-5.x: Remove xfail for PPC64.
2003-06-03 Aldy Hernandez <aldyh@redhat.com>
* testsuite/gcc.c-torture/compile/simd-5.x: Remove xfail for PPC64.
From-SVN: r67374
Kriang Lerdsuwanakij [Tue, 3 Jun 2003 13:01:44 +0000 (13:01 +0000)]
re PR c++/10940 (Bad code with explicit specialization)
PR c++/10940
* pt.c (check_explicit_specialization): Check for 'static'
earlier.
* g++.dg/template/spec10.C: New test.
From-SVN: r67373
Roger Sayle [Tue, 3 Jun 2003 11:27:23 +0000 (11:27 +0000)]
builtins.def (BUILT_IN_CABS, [...]): New builtins representing ISO C99's cabs, cabsf and cabsl.
* builtins.def (BUILT_IN_CABS, BUILT_IN_CABSF, BUILT_IN_CABSL):
New builtins representing ISO C99's cabs, cabsf and cabsl.
* builtins.c (expand_builtin_fabs): New function.
(expand_builtin_cabs): New function.
(expand_builtin): Expand BUILT_IN_FABS{,F,L} and BUILT_IN_CABS{,F,L}
using expand_builtin_fabs and expand_builtin_cabs respectively.
* doc/extend.texi: Document new cabs, cabsf and cabsl builtins.
* gcc.dg/builtins-16.c: New test case.
From-SVN: r67368
Aldy Hernandez [Tue, 3 Jun 2003 11:14:07 +0000 (11:14 +0000)]
function.c (assign_parms): Split complex arguments.
2003-06-03 Aldy Hernandez <aldyh@redhat.com>
* function.c (assign_parms): Split complex arguments.
* doc/tm.texi (SPLIT_COMPLEX_ARGS): Document.
* expr.h (SPLIT_COMPLEX_ARGS): Define.
(split_complex_types): Protoize.
(split_complex_values): Protoize.
* calls.c (expand_call): Split complex arguments on architectures
that require it.
(split_complex_values): New.
(split_complex_types): New.
* config/rs6000/rs6000.c (rs6000_libcall_value): New.
(rs6000_function_value): Handle complex values on AIX.
(rs6000_complex_function_value): New.
* config/rs6000/rs6000-protos.h (rs6000_libcall_value): Protoize.
* config/rs6000/rs6000.h (LIBCALL_VALUE): Call function.
(SPLIT_COMPLEX_ARGS): New.
From-SVN: r67367
Jakub Jelinek [Tue, 3 Jun 2003 09:06:55 +0000 (11:06 +0200)]
configure.in (HAVE_LD_PIE): Check for ld -pie.
* configure.in (HAVE_LD_PIE): Check for ld -pie.
* config.in: Rebuilt.
* configure: Rebuilt.
* toplev.c (flag_pie, flag_shlib): New variables.
(f_options): Add -fpie and -fPIE.
(parse_options_and_default_flags): Set flag_pic if -fpie/-fPIE.
Set flag_shlib if flag_pic and not -fpie/-fPIE.
* flags.h (flag_pic, flag_shlib): Add.
* varasm.c (default_binds_local_p): Use flag_shlib instead of
flag_pic.
* gcc.c (LINK_PIE_SPEC): Define.
(LINK_COMMAND_SPEC): Use LINK_PIE_SPEC.
(option_map): Add --pie -> -pie mapping.
* config/sol2.h (ASM_SPEC): Handle -fpie the same way as -fpic
and -fPIE the same way as -fPIC.
* config/openbsd.h (ASM_SPEC): Likewise.
* config/frv/frv.h (ASM_SPEC): Likewise.
* config/arm/linux-gas.h (SUBTARGET_CPP_SPEC): Likewise.
* config/arm/semi.h (ASM_SPEC): Likewise.
* config/arm/netbsd-elf.h (SUBTARGET_EXTRA_ASM_SPEC): Likewise.
* config/freebsd-spec.h (FBSD_CPP_SPEC): Likewise.
* config/i386/beos-elf.h (CC1_SPEC): Likewise.
* config/i386/freebsd-aout.h (ASM_SPEC): Likewise.
* config/m68k/linux.h (CPP_SPEC): Likewise.
* config/m68k/netbsd.h (ASM_SPEC): Likewise.
* config/m68k/openbsd.h (ASM_SPEC): Likewise.
* config/m68k/netbsd-elf.h (ASM_SPEC): Likewise.
* config/mips/linux.h (SUBTARGET_CPP_SPEC): Likewise.
* config/mips/openbsd.h (SUBTARGET_ASM_SPEC): Likewise.
* config/pa/pa-linux.h (CPP_SPEC): Likewise.
* config/netbsd-aout.h (ASM_SPEC): Likewise.
* config/rs6000/sysv4.h (ASM_SPEC, CPP_SYSV_SPEC): Likewise.
* config/rs6000/vxworks.h (CPP_SPEC): Likewise.
* config/sparc/linux.h (CPP_SUBTARGET_SPEC, ASM_SPEC): Likewise.
* config/sparc/linux64.h (CPP_SUBTARGET_SPEC, ASM_SPEC): Likewise.
* config/sparc/sparc.h (ASM_SPEC): Likewise.
* config/sparc/sp64-elf.h (ASM_SPEC): Likewise.
* config/sparc/sysv4.h (ASM_SPEC): Likewise.
* config/sparc/netbsd-elf.h (ASM_SPEC): Likewise.
* config/sparc/openbsd64.h (ASM_SPEC): Likewise.
* config/cris/linux.h (CRIS_ASM_SUBTARGET_SPEC): Likewise.
* config/linux.h (STARTFILE_SPEC, ENDFILE_SPEC): Handle -pie.
Simplify.
* config/alpha/elf.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise.
* config/i386/linux64.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise.
* config/ia64/linux.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise.
* config/rs6000/sysv4.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise.
* config/rs6000/linux64.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise.
* config/sparc/linux.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise.
* config/sparc/linux64.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise.
* doc/invoke.texi: Document -pie, -fpie and -fPIE options.
From-SVN: r67359
Jakub Jelinek [Tue, 3 Jun 2003 08:57:55 +0000 (10:57 +0200)]
builtins.c (expand_builtin_memcpy): Remove endp argument and endp != 0 handling.
* builtins.c (expand_builtin_memcpy): Remove endp argument and endp
!= 0 handling. Pass 0 to store_by_pieces.
(expand_builtin_mempcpy): Add endp argument. Don't call
expand_builtin_memcpy, call store_by_pieces resp. move_by_pieces
directly. If ignoring result, only do expand_call.
(expand_builtin_stpcpy): Likewise. Call expand_builtin_mempcpy
otherwise.
(expand_builtin_strncpy, expand_builtin_memset): Adjust
store_by_pices callers.
(expand_builtin): Adjust expand_builtin_memcpy and
expand_builtin_mempcpy callers.
* expr.c (can_move_by_pieces): New function.
(move_by_pieces): Add endp argument, return to resp. memory at end
or one byte earlier depending on endp.
(store_by_pieces): Likewise.
(emit_block_move): Adjust call to move_by_pieces.
(emit_push_insn): Adjust move_by_pieces caller.
* expr.h (can_move_by_pieces): New prototype.
(store_by_pieces): Adjust prototypes.
* rtl.h (move_by_pieces): Adjust prototype.
* config/mips/mips.c (expand_block_move): Adjust move_by_pieces
caller.
* gcc.c-torture/execute/builtins/string-4.c (main_test): Remove
mempcpy test with post-increments.
* gcc.c-torture/execute/string-opt-3.c: New test.
* gcc.dg/string-opt-1.c: New test.
From-SVN: r67358
Ben Elliston [Tue, 3 Jun 2003 06:56:42 +0000 (16:56 +1000)]
* doc/md.texi (Processor pipeline description): Improve wording.
From-SVN: r67355
Neil Booth [Tue, 3 Jun 2003 05:42:25 +0000 (05:42 +0000)]
c-opts.c (c_common_handle_option): New, pulled out of c_common_decode_option.
* c-opts.c (c_common_handle_option): New, pulled out of
c_common_decode_option. Substitute uses of argv.
(c_common_decode_option): Broken into two.
From-SVN: r67354
GCC Administrator [Tue, 3 Jun 2003 00:16:07 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r67351
David Billinghurst [Tue, 3 Jun 2003 00:10:35 +0000 (00:10 +0000)]
re PR fortran/10965 (g77 compiles illegal code in testsuite)
2003-06-03 David Billinghurst (David.Billinghurst@riotinto.com)
PR fortran/10965
* g77.f-torture/compile/
20000601-2.f: Fix non-standard code.
From-SVN: r67349
Mark Mitchell [Mon, 2 Jun 2003 19:21:15 +0000 (19:21 +0000)]
scanasm.exp (dg-scan): New function, factored out of ...
* lib/scanasm.exp (dg-scan): New function, factored out of ...
(scan-assembler): ... here. Use dg-scan.
(scan-assembler-not): Likewise.
(scan-file): New function.
(scan-file-not): Likewise.
* gcc.dg/cpp/
19990228-1.c: Use scan-file and/or scan-file-not.
* gcc.dg/cpp/_Pragma4.c: Likewise.
* gcc.dg/cpp/_Pragma5.c: Likewise.
* gcc.dg/cpp/avoidpaste1.c: Likewise.
* gcc.dg/cpp/avoidpaste2.c: Likewise.
* gcc.dg/cpp/cmdlne-C2.c: Likewise.
* gcc.dg/cpp/cmdlne-P.c: Likewise.
* gcc.dg/cpp/cmdlne-dD-M.c: Likewise.
* gcc.dg/cpp/cmdlne-dD-dM.c: Likewise.
* gcc.dg/cpp/cmdlne-dI-M.c: Likewise.
* gcc.dg/cpp/cmdlne-dM-M.c: Likewise.
* gcc.dg/cpp/cmdlne-dM-dD.c: Likewise.
* gcc.dg/cpp/cmdlne-dN-M.c: Likewise.
* gcc.dg/cpp/cxxcom1.c: Likewise.
* gcc.dg/cpp/line1.c: Likewise.
* gcc.dg/cpp/maccom1.c: Likewise.
* gcc.dg/cpp/maccom2.c: Likewise.
* gcc.dg/cpp/maccom3.c: Likewise.
* gcc.dg/cpp/maccom4.c: Likewise.
* gcc.dg/cpp/maccom5.c: Likewise.
* gcc.dg/cpp/maccom6.c: Likewise.
* gcc.dg/cpp/multiline.c: Likewise.
* gcc.dg/cpp/spacing1.c: Likewise.
* gcc.dg/cpp/spacing2.c: Likewise.
* gcc.dg/cpp/trad/cmdlne-C2.c: Likewise.
* gcc.dg/cpp/trad/maccom1.c: Likewise.
* gcc.dg/cpp/trad/maccom2.c: Likewise.
* gcc.dg/cpp/trad/maccom3.c: Likewise.
* gcc.dg/cpp/trad/maccom4.c: Likewise.
* gcc.dg/cpp/trad/maccom6.c: Likewise.
* gcc.dg/cpp/cxxcom2.c: Likewise.
* gcc.dg/cpp/cxxcom2.h: New file.
From-SVN: r67347
Richard Sandiford [Mon, 2 Jun 2003 19:13:41 +0000 (19:13 +0000)]
Revert accidental change to mips_output_move.
From-SVN: r67346
Andrew Pinski [Mon, 2 Jun 2003 18:38:32 +0000 (18:38 +0000)]
re PR libstdc++/9815 (atomicity.h - fails to compile with -O3 -masm=intel)
2003-06-02 Andrew Pinski <pinskia@physics.uc.edu>
PR libstdc++/9815
* config/cpu/i386/atomicity.h (__exchange_and_add): add intel
asm case to asm.
* config/cpu/i486/atomicity.h (__exchange_and_add): Likewise.
(__atomic_add): likewise.
From-SVN: r67343
Paolo Carlini [Mon, 2 Jun 2003 18:24:30 +0000 (20:24 +0200)]
sstream.tcc (pbackfail): Minor clean up and reformatting, consistent with basic_filebuf::pbackfail.
2003-06-02 Paolo Carlini <pcarlini@unitus.it>
* include/bits/sstream.tcc (pbackfail): Minor clean up and
reformatting, consistent with basic_filebuf::pbackfail.
From-SVN: r67342
Richard Kreckel [Mon, 2 Jun 2003 18:03:23 +0000 (18:03 +0000)]
re PR libstdc++/11062 (Please avoid __attribute__ ((unused)))
2003-06-02 Richard Kreckel <Richard.Kreckel@GiNaC.DE>
PR libstdc++/11062
* config/cpu/mips/atomicity.h: Change __attribute__ ((unused)) to
__attribute__ ((__unused__)).
* config/os/aix/atomicity.h: Likewise.
From-SVN: r67340
Paolo Carlini [Mon, 2 Jun 2003 16:46:28 +0000 (18:46 +0200)]
re PR libstdc++/9761 (filebuf::pbackfail discards previously put back characters)
2003-06-02 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/9761
* include/bits/fstream.tcc (pbackfail): If the pback buffer
is already active don't try to store in it a second char.
* testsuite/27_io/basic_filebuf/pbackfail/char/9761.cc: New.
* include/bits/fstream.tcc (pbackfail): Add unbuffered bits.
From-SVN: r67337
Paolo Carlini [Mon, 2 Jun 2003 15:53:14 +0000 (17:53 +0200)]
3.cc: Tweak line spacing.
2003-06-02 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/basic_stringbuf/seekpos/char/3.cc: Tweak
line spacing.
From-SVN: r67336
Nick Clifton [Mon, 2 Jun 2003 15:40:43 +0000 (15:40 +0000)]
remove addition to ARM configure accidentally added with m32r commit
From-SVN: r67335
Paolo Carlini [Mon, 2 Jun 2003 15:36:24 +0000 (17:36 +0200)]
std_fstream.h (_M_destroy_pback): Use _M_in_beg instead of unnecessarily taking the address of _M_pback.
2003-06-02 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_fstream.h (_M_destroy_pback): Use _M_in_beg
instead of unnecessarily taking the address of _M_pback.
(xsgetn): Simplify slightly for a single char pback buffer.
2003-06-02 Paolo Carlini <pcarlini@unitus.it>
* include/bits/sstream.tcc (seekoff): Remove four unnecessary
variables and two 'if', clean up.
2003-06-02 Paolo Carlini <pcarlini@unitus.it>
* include/bits/sstream.tcc (seekpos): Test against _M_out_lim
not _M_out_end, since the former actually points to the string
end (vs buffer end).
* testsuite/27_io/basic_stringbuf/seekpos/char/3.cc: New.
From-SVN: r67334
Mark Mitchell [Mon, 2 Jun 2003 15:25:50 +0000 (15:25 +0000)]
truefalse.cpp: Move it to ...
* gcc.dg/cpp/truefalse.cpp: Move it to ...
* g++.dg/cpp/truefalse.C: Here.
* gcc.dg/cpp/cpp.exp: Remove scanning of ".cpp" files.
From-SVN: r67333
Roger Sayle [Mon, 2 Jun 2003 14:19:24 +0000 (14:19 +0000)]
emit-rtl.c (gen_complex_constant_part): Remove unnecessary test of TREE_CONSTANT_POOL_ADDRESS_P.
* emit-rtl.c (gen_complex_constant_part): Remove unnecessary
test of TREE_CONSTANT_POOL_ADDRESS_P.
Co-Authored-By: Zack Weinberg <zack@codesourcery.com>
From-SVN: r67331
Kaveh R. Ghazi [Mon, 2 Jun 2003 14:15:15 +0000 (14:15 +0000)]
mips.c: Don't include output.h twice.
* mips.c: Don't include output.h twice.
* stormy16.c: Likewise.
* xtensa.c: Likewise.
* output.h: Protect against multiple inclusion.
From-SVN: r67330
J"orn Rennecke [Mon, 2 Jun 2003 14:04:56 +0000 (14:04 +0000)]
sh.h (OLD_ARG_MODE): New macro.
* sh.h (OLD_ARG_MODE): New macro.
(FUNCTION_ARG_ADVANCE, FUNCTION_ARG_PASS_BY_REFERENCE): Use it.
(FUNCTION_ARG_1): Break out of:
(FUNCTION_ARG). Use OLD_ARG_MODE.
From-SVN: r67329
Nick Clifton [Mon, 2 Jun 2003 12:11:49 +0000 (12:11 +0000)]
Add support multilib parts for m32rx processor.
From-SVN: r67328