Kaveh R. Ghazi [Tue, 30 Jul 2002 12:34:31 +0000 (12:34 +0000)]
alpha.h, [...] (ASM_OUTPUT_LABEL): Delete definition.
* alpha.h, arc.h, arm/aout.h, avr.h, c4x.h, cris.h, d30v.h,
darwin.h, dsp16xx.h, fr30.h, h8300.h, i370.h, i386.h, i960.h,
ip2k.h, m32r.h, m68hc11.h, m68k.h, m88k.h, mcore.h, mips.h,
mn10200.h, mn10300.h, ns32k.h, pa/pa-linux.h, pdp11.h, romp.h,
rs6000/sysv4.h, s390/linux.h, sh.h, sparc.h, stormy16.h,
v850.h, vax.h, xtensa.h (ASM_OUTPUT_LABEL): Delete definition.
* defaults.h (ASM_OUTPUT_LABEL): Provide a default.
* doc/tm.texi (ASM_OUTPUT_LABEL): Update docs.
From-SVN: r55872
Gabriel Dos Reis [Tue, 30 Jul 2002 07:49:40 +0000 (07:49 +0000)]
* cp-tree.h (VF_DERIVED_VALUE): Restore from previous deletion.
From-SVN: r55871
GCC Administrator [Tue, 30 Jul 2002 07:17:09 +0000 (07:17 +0000)]
Daily bump.
From-SVN: r55870
Gabriel Dos Reis [Tue, 30 Jul 2002 06:34:57 +0000 (06:34 +0000)]
c-pretty-print.c (pp_c_primary_expression): Handle STMT_EXPR.
* c-pretty-print.c (pp_c_primary_expression): Handle STMT_EXPR.
(pp_c_postfix_expression): Handle ARROW_EXPR, FFS_EXPR,
COMPOUND_LITERAL_EXPR, VA_ARG_EXPR.
(pp_c_expression): Update.
From-SVN: r55864
Nathan Sidwell [Tue, 30 Jul 2002 05:03:42 +0000 (05:03 +0000)]
cp-tree.h (CLASSTYPE_VFIELDS, VF_*, BV_*): Add more documentation.
* cp-tree.h (CLASSTYPE_VFIELDS, VF_*, BV_*): Add more
documentation.
From-SVN: r55863
Kaveh R. Ghazi [Tue, 30 Jul 2002 02:24:17 +0000 (02:24 +0000)]
adadecode.c (ada_demangle): Use xstrdup in lieu of xmalloc/strcpy.
ada:
* adadecode.c (ada_demangle): Use xstrdup in lieu of
xmalloc/strcpy.
* misc.c (gnat_decode_option): Likewise.
gcc:
* alpha/vms-cc.c (preprocess_args, main): Use xstrdup and/or
concat in lieu of xmalloc/strcpy/memcpy/sprintf.
* alpha/vms-ld.c (main): Likewise.
* dsp16xx.c (double_reg_to_memory): Likewise.
* mcore.c (mcore_expand_prolog): Likewise.
* cppfiles.c (read_name_map): Likewise.
* gensupport.c (process_rtx, identify_predicable_attribute,
alter_test_for_insn): Likewise.
* vmsdbgout.c (write_rtnbeg, vmsdbgout_init): Likewise.
f:
* com.c (read_name_map): Use concat in lieu of xmalloc/strcpy.
From-SVN: r55861
Roger Sayle [Tue, 30 Jul 2002 02:19:43 +0000 (02:19 +0000)]
builtins.c (expand_builtin): Change the default behavior to only issue an error if...
* builtins.c (expand_builtin): Change the default behavior to
only issue an error if the builtin function doesn't have a
fallback library call. Remove several cases handled by the
new default.
From-SVN: r55860
John David Anglin [Tue, 30 Jul 2002 01:42:19 +0000 (01:42 +0000)]
real.c (ieee_24, [...]): Define only if the floating point format of the target is IEEE.
* real.c (ieee_24, ieee_53, ieee_64, ieee_113): Define only if the
floating point format of the target is IEEE.
* (dec_f, dec_d, dec_g, dec_h): Define only if the floating point
format of the target is DEC.
From-SVN: r55859
Richard Henderson [Mon, 29 Jul 2002 23:57:52 +0000 (16:57 -0700)]
unroll.c (verify_addresses): Remove.
* unroll.c (verify_addresses): Remove.
(find_splittable_givs): Never split DEST_ADDR givs.
From-SVN: r55858
Geoffrey Keating [Mon, 29 Jul 2002 23:53:47 +0000 (23:53 +0000)]
gty.texi (GGC Roots): Clarify that the list of syntaxes is exhaustive.
* doc/gty.texi (GGC Roots): Clarify that the list of syntaxes
is exhaustive.
(Files): Improve documentation on generated source files.
* doc/extend.texi (Translation implementation): Document what
diagnostics look like.
(Identifiers implementation): Document that there's normally no
limit on identifier names.
(Integers implementation): Document two's complement.
(Hints implementation): Document that GCC honours 'inline', mostly.
(Preprocessing directives implementation): Document that GCC
requires the current time.
From-SVN: r55857
Gabriel Dos Reis [Mon, 29 Jul 2002 23:42:26 +0000 (23:42 +0000)]
c-pretty-print.h (struct c_pretty_print_info): Add new member.
2002-07-30 Gabriel Dos Reis <gdr@nerim.net>
* c-pretty-print.h (struct c_pretty_print_info): Add new member.
(pp_initializer): New macro.
(pp_c_initializer): Declare.
* c-pretty-print.c (pp_c_primary_expression): HAndle TARGET_EXPR.
(pp_c_initializer): Define.
(pp_c_initializer_list): New function.
(pp_c_postfix_expression): Handle ABS_EXPR, COMPLEX_CST,
VECTOR_CST, CONSTRUCTOR.
(pp_c_unary_expression): Handle CONJ_EXPR, REALPART_EXPR,
IMAGPART_EXPR.
(pp_c_cast_expression): Handle FLOAT_EXPR.
(pp_c_assignment_expression): Handle INIT_EXPR.
(pp_c_expression): Update.
From-SVN: r55856
Alan Modra [Mon, 29 Jul 2002 23:26:27 +0000 (23:26 +0000)]
locks.h: Formatting.
* sysdep/powerpc/locks.h: Formatting.
(_LARX): Define.
(_STCX): Define.
(compare_and_swap): Use _LARX and _STCX.
(compare_and_swap_release): Likewise.
From-SVN: r55855
Alan Modra [Mon, 29 Jul 2002 23:26:00 +0000 (23:26 +0000)]
cpu_limits.h (__glibcpp_long_bits): Define.
* config/cpu/powerpc/cpu_limits.h (__glibcpp_long_bits): Define.
* configure.target (cpu_include_dir): Use cpu/powerpc for powerpc64.
* config/cpu/powerpc/atomicity.h (__always_swap): Remove.
(__test_and_set): Remove.
(_STWCX): Define and use.
From-SVN: r55854
Neil Booth [Mon, 29 Jul 2002 22:46:34 +0000 (22:46 +0000)]
objc-act.c (objc_init): Return immediately if filename is NULL.
* objc/objc-act.c (objc_init): Return immediately if filename
is NULL.
From-SVN: r55853
Eric Christopher [Mon, 29 Jul 2002 22:21:41 +0000 (22:21 +0000)]
elf.h: Remove ecoff.h and gofast includes.
2002-07-29 Eric Christopher <echristo@redhat.com>
* config/mips/elf.h: Remove ecoff.h and gofast includes.
(DWARF2_DEBUGGING_INFO, DBX_DEBUGGING_INFO): Define unconditionally.
(SDB_DEBUGGING_INFO): Undefine.
(PREFERRED_DEBUGGING_TYPE): Set to DWARF2_DEBUG.
(PUT_SDB_SIZE): Remove.
(SUBTARGET_ASM_DEBUGGING_SPEC): Redefine.
(STARTFILE_SPEC): Add isa3264 define.
* config/mips/elf64.h: Ditto. Move TARGET_MEM_FUNCTIONS from here...
* config/mips/ecoff.h: Remove. and here...
* config/mips/iris3.h: and here...
* config/mips/sni-svr4.h: and here...
* config/mips/mips.h: To here. Remove OBJECT_FORMAT_ROSE ifdefs.
Add assembler -mmdebug options for non-dwarf debugging.
* config/mips/r3900.h: Remove debug info defines.
* config/mips/isa32-linux.h: Remove, move functionality to config.gcc.
* config/mips/isa3264.h: Ditto.
* config/mips/t-isa3264: Fix up for file removal and gofast configure
change.
* config/mips/t-elf: Ditto.
* config/mips/t-ecoff: Ditto.
* config/mips/t-r3900: Ditto.
* config/mips/t-iris5-6: Ditto.
* config/mips/t-isa3264: Ditto.
* config/mips/t-linux: Remove.
* config/mips/t-netbsd: Remove.
* config/mips/t-mips: New file.
* config/mips/t-gofast: Ditto.
* config/mips/netbsd.h: Remove unnecessary undefines.
* config/mips/linux.h: Remove #include of mips.h.
* config.gcc: Add mips.h include for elf targets. Remove tm_file
for ecoff. Add gofast configure option for mips.
From-SVN: r55852
Chris Demetriou [Mon, 29 Jul 2002 22:07:27 +0000 (22:07 +0000)]
configure.in (mips*-*-*): Add a test to see if MIPS libgloss linker scripts use STARTUP directives...
2002-07-29 Chris Demetriou <cgd@broadcom.com>
* configure.in (mips*-*-*): Add a test to see if MIPS libgloss
linker scripts use STARTUP directives consistently.
* configure: Regenerate.
* config.in: Regenerate.
* config/mips/elf.h (STARTFILE_SPEC): Define conditionally, based
on whether HAVE_MIPS_LIBGLOSS_STARTUP_DIRECTIVES is defined.
* config/mips/elf64.h (STARTFILE_SPEC): Likewise.
* config/mips/isa3264.h (STARTFILE_SPEC): Do not redefine if
HAVE_MIPS_LIBGLOSS_STARTUP_DIRECTIVES is set; the result
will be the same.
From-SVN: r55851
Aldy Hernandez [Mon, 29 Jul 2002 21:37:23 +0000 (21:37 +0000)]
* config/rs6000/rs6000.md ("cpu"): Add ppc8540 to attribute.
From-SVN: r55850
Aldy Hernandez [Mon, 29 Jul 2002 21:19:20 +0000 (21:19 +0000)]
rs6000.h (RTX_COSTS): Add MULT case for 8540.
2002-07-29 Aldy Hernandez <aldyh@redhat.com>
* config/rs6000/rs6000.h (RTX_COSTS): Add MULT case for 8540.
From-SVN: r55849
Aldy Hernandez [Mon, 29 Jul 2002 21:05:23 +0000 (21:05 +0000)]
rs6000.md: Move altivec patterns from here...
2002-07-29 Aldy Hernandez <aldy@quesejoda.com>
* config/rs6000/rs6000.md: Move altivec patterns from here...
* config/rs6000/altivec.md: ...to here.
From-SVN: r55848
Aldy Hernandez [Mon, 29 Jul 2002 20:15:43 +0000 (20:15 +0000)]
spe.md ("spe_evmra"): Change to unspec.
2002-07-29 Aldy Hernandez <aldyh@redhat.com>
* config/rs6000/spe.md ("spe_evmra"): Change to unspec.
From-SVN: r55847
Richard Henderson [Mon, 29 Jul 2002 19:53:34 +0000 (12:53 -0700)]
emit-rtl.c (set_mem_attributes_minus_bitpos): Rename from set_mem_attributes and add BITPOS argument.
* emit-rtl.c (set_mem_attributes_minus_bitpos): Rename from
set_mem_attributes and add BITPOS argument. Subtract it from
OFFSET when same is adjusted.
(set_mem_attributes): New wrapper function.
* expr.c (expand_assignment): Use set_mem_attributes_minus_bitpos;
remove offset adjustment hack.
* expr.h (set_mem_attributes_minus_bitpos): Declare.
From-SVN: r55846
Gabriel Dos Reis [Mon, 29 Jul 2002 19:31:24 +0000 (19:31 +0000)]
Makefile.in (C_OBJS): Include c-pretty-print.o
2002-07-29 Gabriel Dos Reis <gdr@nerim.net>
* Makefile.in (C_OBJS): Include c-pretty-print.o
(c-pretty-print.o): Add depency rule.
* pretty-print.h: Add more macros.
* c-pretty-print.c: New file.
* c-pretty-print.h: Likewise.
cp/
2002-07-29 Gabriel Dos Reis <gdr@nerim.net>
* Make-lang.in (CXX_C_OBJS): Include.
From-SVN: r55845
Aldy Hernandez [Mon, 29 Jul 2002 19:07:10 +0000 (19:07 +0000)]
spe.h (__internal_ev_mwhgumian): Cast vector constants to __ev64_s32__.
2002-07-29 Aldy Hernandez <aldyh@redhat.com>
* config/rs6000/spe.h (__internal_ev_mwhgumian): Cast vector
constants to __ev64_s32__.
(__internal_ev_mwhgsmian): Same.
(__internal_ev_mwhgsmfan): Same.
(__internal_ev_mwhgssfan): Same.
(__internal_ev_mwhgumiaa): Same.
(__internal_ev_mwhgsmiaa): Same.
(__internal_ev_mwhgsmfaa): Same.
(__internal_ev_mwhgssfaa): Same.
From-SVN: r55844
David Edelsohn [Mon, 29 Jul 2002 19:01:55 +0000 (19:01 +0000)]
varasm.c (assemble_variable): Narrow test for uninitialized without BSS target support.
* varasm.c (assemble_variable): Narrow test for uninitialized
without BSS target support.
From-SVN: r55843
Nathan Sidwell [Mon, 29 Jul 2002 18:40:45 +0000 (18:40 +0000)]
profile.c: Add file comment describing the overall algorithm and structures.
* profile.c: Add file comment describing the overall algorithm and
structures.
(struct edge_info): Add comments.
(struct bb_info): Add comments.
* basic-block.h (EDGE_*): Add comments.
* doc/gcov.texi (Gcov Data Files): Document bit flags.
From-SVN: r55842
Bob Wilson [Mon, 29 Jul 2002 18:07:09 +0000 (18:07 +0000)]
* config/xtensa/elf.h, config/xtensa/linux.h
(TARGET_OS_CPP_BUILTINS): Define.
(CPP_PREDEFINES): Remove.
* config/xtensa/xtensa.h (TARGET_CPU_CPP_BUILTINS): Define.
(CPP_SPEC): Remove.
From-SVN: r55840
Zack Weinberg [Mon, 29 Jul 2002 18:02:47 +0000 (18:02 +0000)]
gensupport.c: Include hashtab.h.
* gensupport.c: Include hashtab.h.
(insn_elision, condition_table, hash_c_test, cmp_c_test,
maybe_eval_c_test): New routines and data structures to
support insn elision.
(init_md_reader): Read and initialize the condition_table.
(read_md_rtx): Discard insn patterns whose C test is provably
always false.
* gensupport.h: Declare new functions and data structures.
* genconditions.c, dummy-conditions.c: New files.
* Makefile.in: Build genconditions; run it to construct
insn-conditions.c; build that and link it into most gen*
programs.
(HOST_SUPPORT, HOST_EARLY_SUPPORT): New variables.
(GEN): Delete, unused.
(STAGESTUFF): Update.
* gencodes.c: (gen_insn): #define CODE_FOR_xxx equal to
CODE_FOR_nothing for all elided patterns.
(main): Tweaked to support this.
* genflags.c (gen_proto): Emit a static inline generator
function here for all elided patterns, which simply returns
NULL_RTX.
(gen_insn): Do not define HAVE_xxx for elided patterns.
(main): Tweaked to support this. No need to forward-declare
struct rtx_def.
* genrecog.c: Do not bother emitting the C test if it's known
to be true at compile time.
From-SVN: r55839
Mike Stump [Mon, 29 Jul 2002 17:25:30 +0000 (17:25 +0000)]
config.gcc (target_gtfiles): Initialize...
* config.gcc (target_gtfiles): Initialize, as otherwise cross compilers hosted on
powerpc-apple-darwin6.0 won't even build.
From-SVN: r55838
Neil Booth [Mon, 29 Jul 2002 17:11:10 +0000 (17:11 +0000)]
* cplus-dem.c (PREPEND_BLANK): Remove.
From-SVN: r55837
Richard Earnshaw [Mon, 29 Jul 2002 12:41:46 +0000 (12:41 +0000)]
arm.md (sibcall, [...]): Add RETURN as part of the pattern, remove clobber of LR.
* arm.md (sibcall, sibcall_value): Add RETURN as part of the pattern,
remove clobber of LR.
(sibcall_insn, sibcall_value_insn): Update accordingly.
(sibcall_epilogue): Remove debugging comment from assembler stream.
From-SVN: r55836
Alan Modra [Mon, 29 Jul 2002 11:45:33 +0000 (11:45 +0000)]
* cp-tree.h: Comment typo fix.
From-SVN: r55835
Richard Earnshaw [Mon, 29 Jul 2002 10:37:25 +0000 (10:37 +0000)]
spew.c (space_for_token): Allocate zeroed memory for a new token chunk.
* spew.c (space_for_token): Allocate zeroed memory for a new token
chunk.
From-SVN: r55834
Gabriel Dos Reis [Mon, 29 Jul 2002 08:26:45 +0000 (08:26 +0000)]
pretty-print.h: Define more macros.
* pretty-print.h: Define more macros.
* diagnostic.h (output_formatted_integer): Moved from...
* diagnostic.c: ... here.
From-SVN: r55833
GCC Administrator [Mon, 29 Jul 2002 07:17:07 +0000 (07:17 +0000)]
Daily bump.
From-SVN: r55832
GCC Administrator [Mon, 29 Jul 2002 07:17:06 +0000 (07:17 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r55831.3
Andreas Jaeger [Mon, 29 Jul 2002 05:31:34 +0000 (07:31 +0200)]
gcc_release: Update comment.
* gcc_release: Update comment.
* snapshot-README: Snapshots are taken from GCC 3.2 branch.
From-SVN: r55825
Mark Mitchell [Mon, 29 Jul 2002 04:46:45 +0000 (04:46 +0000)]
* gcc_release: Use the 3.2 branch for snapshots.
From-SVN: r55824
Kaveh R. Ghazi [Sun, 28 Jul 2002 22:35:21 +0000 (22:35 +0000)]
* stormy16.h (ASM_OUTPUT_SYMBOL_REF): Use ASM_OUTPUT_LABEL_REF.
From-SVN: r55822
Zack Weinberg [Sun, 28 Jul 2002 18:44:34 +0000 (18:44 +0000)]
defaults.h (ASM_OUTPUT_MEASURED_SIZE): Take only two arguments.
* defaults.h (ASM_OUTPUT_MEASURED_SIZE): Take only two
arguments. Always use ".-symbol" as expression argument.
* doc/tm.texi: Update to match. Document requirement for
".size symbol, .-symbol" to be acceptable to assembler.
* config/elfos.h, config/netbsd-aout.h, config/openbsd.h,
config/arm/elf.h, config/avr/avr.h, config/cris/aout.h,
config/i386/freebsd-aout.h, config/i386/sco5.h,
config/ip2k/ip2k.h, config/m88k/m88k.h, config/xtensa/elf.h,
config/xtensa/linux.h: Update uses of ASM_OUTPUT_MEASURED_SIZE.
From-SVN: r55820
Mark Mitchell [Sun, 28 Jul 2002 16:45:44 +0000 (16:45 +0000)]
Update version number
From-SVN: r55818
Kaveh R. Ghazi [Sun, 28 Jul 2002 13:36:05 +0000 (13:36 +0000)]
* Makefile.in (gengtype-lex.c): Fix error in last change.
From-SVN: r55817
Kaveh R. Ghazi [Sun, 28 Jul 2002 13:00:22 +0000 (13:00 +0000)]
freebsd.h (TARGET_OS_CPP_BUILTINS): Add missing backslash.
* alpha/freebsd.h (TARGET_OS_CPP_BUILTINS): Add missing
backslash.
From-SVN: r55816
Kaveh R. Ghazi [Sun, 28 Jul 2002 12:55:13 +0000 (12:55 +0000)]
Makefile.in (vmsdbgout.o): Depend on function.h.
* Makefile.in (vmsdbgout.o): Depend on function.h.
* vmsdbgout.c: Include function.h.
From-SVN: r55815
Alan Modra [Sun, 28 Jul 2002 09:01:09 +0000 (09:01 +0000)]
prefix.c (update_path): Don't strip single `.' path components unless stripping a later `..' component.
* prefix.c (update_path): Don't strip single `.' path components
unless stripping a later `..' component. Exit loop as soon as
a valid path is found.
From-SVN: r55814
GCC Administrator [Sun, 28 Jul 2002 07:17:06 +0000 (07:17 +0000)]
Daily bump.
From-SVN: r55813
Roger Sayle [Sun, 28 Jul 2002 05:34:04 +0000 (05:34 +0000)]
builtins.def [...]: Require an explicit ATTRS argument.
* builtins.def [DEF_GCC_BUILTIN]: Require an explicit ATTRS
argument. Mark BUILT_IN_RETURN, BUILT_IN_EH_RETURN,
BUILT_IN_LONGJMP and BUILT_IN_TRAP as noreturn, the ISO C99
floating point unordered comparisons (e.g. __builtin_isgreater)
as const, and leave the remaining GCC_BUILTINs unchanged.
* c-decl.c (builtin_function): No need to explicitly mark
BUILT_IN_RETURN and BUILT_IN_EH_RETURN as noreturn.
* cp/decl.c (builtin_function_1): No need to explicitly mark
BUILT_IN_RETURN and BUILT_IN_EH_RETURN as noreturn.
From-SVN: r55805
Roger Sayle [Sun, 28 Jul 2002 02:11:05 +0000 (02:11 +0000)]
Makefile.in: rtlanal.o now depends upon real.h.
* Makefile.in: rtlanal.o now depends upon real.h.
* flags.h [flag_signaling_nans]: New flag.
[HONOR_SNANS]: New macro.
* toplev.c [flag_signaling_nans]: Initialize to false.
(f_options): Add processing for "-fsignaling-nans".
(set_fast_math_flags): Clear flag_signaling_nans with -ffast-math.
(process_options): flag_signaling_nans implies flag_trapping_math.
* c-common.c (cb_register_builtins): Define __SUPPORT_SNAN__
when -fsignaling-nans. First step to implementing WG14's N965.
* fold-const.c (fold) [MULT_EXPR]: Conditionalize transforming
1.0 * x into x, and -1.0 * x into -x on !HONOR_SNANS.
[RDIV_EXPR]: Conditionalize x/1.0 into x on !HONOR_SNANS.
* simplify-rtx.c (simplify_relational_operation): Conditionalize
transforming abs(x) < 0.0 into false on !HONOR_SNANS.
* rtlanal.c: #include real.c for TARGET_FLOAT_FORMAT definitions
required by HONOR_SNANS. (may_trap_p): Floating point DIV, MOD,
UDIV, UMOD, GE, GT, LE, LT and COMPARE may always trap with
-fsignaling_nans. EQ and NE only trap for flag_signaling_nans
not flag_trapping_math (i.e. HONOR_SNANS but not HONOR_NANS).
* doc/invoke.texi: Document new -fsignaling-nans compiler option.
From-SVN: r55804
Kaveh R. Ghazi [Sat, 27 Jul 2002 23:35:11 +0000 (23:35 +0000)]
Makefile.in (gengtype-lex.c): Work around a bug in flex.
* Makefile.in (gengtype-lex.c): Work around a bug in flex.
* gengtype-lex.l (YY_USE_PROTOS): Undef.
(YY_DECL): Define.
From-SVN: r55803
Roger Sayle [Sat, 27 Jul 2002 21:15:39 +0000 (21:15 +0000)]
decl2.c (cxx_decode_option): Support -fno-builtin-foo.
* cp/decl2.c (cxx_decode_option): Support -fno-builtin-foo.
* doc/invoke.texi: Document that both -fno-builtin-foo and
-fno-builtin are supported by the g++ front-end.
From-SVN: r55802
Stan Shebs [Sat, 27 Jul 2002 20:54:52 +0000 (20:54 +0000)]
configure.in: Rename config_gtfiles to target_gtfiles.
* configure.in: Rename config_gtfiles to target_gtfiles.
* configure: Regenerate.
* doc/gty.texi: Update reference.
* config.gcc (powerpc-*-darwin*): Set target_gtfiles
instead of appending to it.
From-SVN: r55801
GCC Administrator [Sat, 27 Jul 2002 07:16:57 +0000 (07:16 +0000)]
Daily bump.
From-SVN: r55796
Aldy Hernandez [Sat, 27 Jul 2002 04:12:48 +0000 (04:12 +0000)]
rs6000.c (function_arg_advance): SPE vararg vectors are split into two registers.
2002-07-25 Aldy Hernandez <aldyh@redhat.com>
* config/rs6000/rs6000.c (function_arg_advance): SPE vararg
vectors are split into two registers.
(function_arg): Same.
From-SVN: r55791
J"orn Rennecke [Sat, 27 Jul 2002 02:31:07 +0000 (02:31 +0000)]
* pa.md (extv): Check predicates before emitting extv_32.
From-SVN: r55790
Tom Tromey [Sat, 27 Jul 2002 00:53:42 +0000 (00:53 +0000)]
Authenticator.java: New version from Classpath.
* java/net/Authenticator.java: New version from Classpath.
* java/net/DatagramSocketImpl.java: New version from Classpath.
From-SVN: r55789
Alan Modra [Fri, 26 Jul 2002 23:54:28 +0000 (23:54 +0000)]
* configure.host: Add powerpc64*-* entry.
From-SVN: r55788
Alan Modra [Fri, 26 Jul 2002 23:46:47 +0000 (23:46 +0000)]
rs6000.c (rs6000_traceback_name): New var.
* config/rs6000/rs6000.c (rs6000_traceback_name): New var.
(rs6000_traceback): New var.
(rs6000_override_options): Set rs6000_traceback.
(rs6000_output_function_epilogue): Implement traceback options.
* config/rs6000/rs6000.h (TARGET_OPTIONS): Add "traceback=".
(rs6000_traceback_name): Declare.
* config/rs6000/rs6000.c (output_profile_hook): Don't generate profile
label reference when NO_PROFILE_COUNTERS.
From-SVN: r55787
Phil Edwards [Fri, 26 Jul 2002 20:12:00 +0000 (20:12 +0000)]
new (placement delete): Remove unused paramater names.
2002-07-26 Phil Edwards <pme@gcc.gnu.org>
* libsupc++/new (placement delete): Remove unused paramater names.
From-SVN: r55782
Jason Merrill [Fri, 26 Jul 2002 20:10:43 +0000 (16:10 -0400)]
function.c (assign_parms): Handle frontend-directed pass by invisible reference.
* function.c (assign_parms): Handle frontend-directed pass by
invisible reference.
cp/
* call.c (build_over_call): Likewise.
(cp_convert_parm_for_inlining): New fn.
(convert_for_arg_passing): New fn.
(convert_default_arg, build_over_call): Use it.
(type_passed_as): New fn.
* pt.c (tsubst_decl): Use it.
* decl2.c (cp_build_parm_decl): New fn.
(build_artificial_parm): Use it.
(start_static_storage_duration_function): Likewise.
* decl.c (start_cleanup_fn, grokdeclarater): Likewise.
(grokparms): Don't mess with DECL_ARG_TYPE.
* typeck.c (convert_arguments): Use convert_for_arg_passing.
* cp-lang.c (LANG_HOOKS_TREE_INLINING_CONVERT_PARM_FOR_INLINING):
Define.
* cp-tree.h: Declare new fns.
From-SVN: r55781
Tom Tromey [Fri, 26 Jul 2002 18:33:44 +0000 (18:33 +0000)]
natFileDescriptorPosix.cc: Don't include sys/socket.h or fcntl.h.
* java/io/natFileDescriptorPosix.cc: Don't include sys/socket.h or
fcntl.h.
From-SVN: r55780
Neil Booth [Fri, 26 Jul 2002 16:34:09 +0000 (16:34 +0000)]
cppopts.texi: Update.
* doc/cppopts.texi: Update.
testsuite:
* gcc.dg/cpp/trad/Wunused.c, gcc.dg/cpp/Wunused.c: Add test
for documented behaviour.
From-SVN: r55779
Neil Booth [Fri, 26 Jul 2002 16:29:31 +0000 (16:29 +0000)]
cppmacro.c (_cpp_create_definition): Don't attempt redefinition warnings on assertions.
* cppmacro.c (_cpp_create_definition): Don't attempt redefinition
warnings on assertions.
From-SVN: r55778
Neil Booth [Fri, 26 Jul 2002 16:23:07 +0000 (16:23 +0000)]
c-common.h (RID_AND, [...]): Remove.
* c-common.h (RID_AND, RID_AND_EQ, RID_NOT, RID_NOT_EQ,
RID_OR, RID_OR_EQ, RID_XOR, RID_XOR_EQ, RID_BITAND, RID_BITOR,
RID_COMPL): Remove.
* c-parse.in (rid_to_yy): Similarly.
cp:
* cp-tree.h (flag_operator_names): Remove.
* decl2.c (flag_operator_names): Remove.
(lang_f_options): Remove operator-names.
* lex.c (D_OPNAME): Remove.
(reswords): Remove operator names.
(rid_to_yy): Remove operator names.
(init_reswords): No need to handle D_OPNAME.
* spew.c (read_process_identifier): There are no operator
names.
From-SVN: r55777
Jason Merrill [Fri, 26 Jul 2002 13:45:38 +0000 (09:45 -0400)]
c-dump.c: Resurrect.
* c-dump.c: Resurrect.
* tree-dump.c: Move C-specific stuff to c-dump.c.
* c-common.h: Declare c_dump_tree.
* c-lang.c (LANG_HOOKS_TREE_DUMP_DUMP_TREE_FN): Define.
* Makefile.in (C_AND_OBJC_OBJS): Add c-dump.o.
(c-dump.o): New rule.
cp/
* dump.c (cp_dump_tree): Call c_dump_tree.
* Make-lang.in (CXX_C_OBJS): Add c-dump.o.
From-SVN: r55776
GCC Administrator [Fri, 26 Jul 2002 07:16:59 +0000 (07:16 +0000)]
Daily bump.
From-SVN: r55775
Alan Modra [Fri, 26 Jul 2002 02:47:35 +0000 (02:47 +0000)]
rs6000.md: Enable patterns using rlwinm for PowerPC64.
* config/rs6000/rs6000.md: Enable patterns using rlwinm for
PowerPC64. Replace "T" and "S" constraints with "n" when the
predicate will do. Formatting fixes.
(extzvsi_internal2): Use "andi.", "andis." and attr type of "compare"
as for extzvsi_internal1.
From-SVN: r55770
Roger Sayle [Fri, 26 Jul 2002 02:38:42 +0000 (02:38 +0000)]
20020720-1.x: Skip this test on several targets known to fail.
* gcc.c-torture/execute/
20020720-1.x: Skip this test on
several targets known to fail.
From-SVN: r55769
Benjamin Kosnik [Fri, 26 Jul 2002 01:49:36 +0000 (01:49 +0000)]
re PR libstdc++/7216 (basic_iostream::traits_type is ambiguous issue)
2002-07-25 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/7216
* include/std/std_istream.h (basic_iostream): Add typedefs for
char_type, int_type, pos_type, off_type, and traits_type.
* testsuite/27_io/iostream.cc (test01): Add typedef tests.
* testsuite/27_io/istream.cc: Same.
* testsuite/27_io/ostream.cc: Same.
* testsuite/27_io/filebuf.cc: Same.
* testsuite/27_io/stringbuf.cc: Replace content, move to...
* testsuite/27_io/stringbuf_members.cc: ...here.
* testsuite/27_io/streambuf.cc: Replace content, move to...
* testsuite/27_io/streambuf_members.cc: ...here.
* testsuite/27_io/stringstream.cc: Replace content, move to...
* testsuite/27_io/stringstream_members.cc: ...here.
* testsuite/27_io/ios.cc: New file.
* testsuite/27_io/fstream.cc: New file.
* testsuite/27_io/ifstream.cc: New file.
* testsuite/27_io/ofstream.cc: New file.
* testsuite/27_io/istringstream.cc: New file.
* testsuite/27_io/ostringstream.cc: New file.
From-SVN: r55767
Benjamin Kosnik [Thu, 25 Jul 2002 23:20:49 +0000 (23:20 +0000)]
re PR libstdc++/7220 (g++ 3.1: basic_istream::ignore(0,delimiter) issue.)
2002-07-25 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/7220
* include/bits/istream.tcc (istream::ignore): Don't extract on
zero.
* testsuite/27_io/istream_unformatted.cc (test10): Add.
From-SVN: r55763
Neil Booth [Thu, 25 Jul 2002 21:21:37 +0000 (21:21 +0000)]
dwarfout.c (VERSION_ASM_OP, [...]): Remove.
* dwarfout.c (VERSION_ASM_OP, DERIV_BEGIN_LABEL_FMT,
DERIV_END_LABEL_FMT): Remove.
(SL_BEGIN_LABEL_FMT, SL_END_LABEL_FMT): Move.
From-SVN: r55762
Neil Booth [Thu, 25 Jul 2002 21:18:24 +0000 (21:18 +0000)]
objc-act.c (UTAG_STATICS, [...]): Remove.
* objc/objc-act.c (UTAG_STATICS, UTAG_PROTOCOL_LIST, USERTYPE):
Remove.
From-SVN: r55761
Neil Booth [Thu, 25 Jul 2002 21:13:36 +0000 (21:13 +0000)]
error.c (print_whitespace): Remove.
cp:
* error.c (print_whitespace): Remove.
* g++spec.c (LIBUNWIND): Move.
* mangle.c (mangled_position, write_signed_number): Remove.
From-SVN: r55760
Neil Booth [Thu, 25 Jul 2002 21:10:59 +0000 (21:10 +0000)]
* Missed.
From-SVN: r55759
Stan Shebs [Thu, 25 Jul 2002 21:00:10 +0000 (21:00 +0000)]
rs6000.c (rs6000_emit_prologue): Remove unused local var dwarfp.
* config/rs6000/rs6000.c (rs6000_emit_prologue): Remove unused
local var dwarfp.
(output_compiler_stub): Remove unused locals.
(output_call): Always initialize line number.
From-SVN: r55758
J"orn Rennecke [Thu, 25 Jul 2002 19:38:54 +0000 (19:38 +0000)]
sh.h (LOAD_EXTEND_OP): QImode zero-extends on SHmedia.
* sh.h (LOAD_EXTEND_OP): QImode zero-extends on SHmedia.
* sh.md (truncdiqi2, movqi_media): Likewise.
From-SVN: r55757
Toon Moene [Thu, 25 Jul 2002 19:00:06 +0000 (21:00 +0200)]
news.texi: Document better handling of (no-)alias information of dummy arguments and...
2002-07-25 Toon Moene <toon@moene.indiv.nluug.nl>
* news.texi: Document better handling of (no-)alias
information of dummy arguments and induction variables
on loop unrolling.
From-SVN: r55756
Neil Booth [Thu, 25 Jul 2002 18:57:31 +0000 (18:57 +0000)]
collect2.c (SYMBOL__MAIN): Remove.
* collect2.c (SYMBOL__MAIN): Remove.
* gcse.c (obstack_chunk_alloc): Remove.
(gcse_alloc): Fix to count allocated bytes.
From-SVN: r55755
Neil Booth [Thu, 25 Jul 2002 18:48:42 +0000 (18:48 +0000)]
gcc.c (TARGET_EXECUTABLE_SUFFIX): Only used if HAVE_TARGET_EXECUTABLE_SUFFIX.
* gcc.c (TARGET_EXECUTABLE_SUFFIX): Only used if
HAVE_TARGET_EXECUTABLE_SUFFIX.
From-SVN: r55754
J"orn Rennecke [Thu, 25 Jul 2002 18:00:38 +0000 (18:00 +0000)]
rtl.h (mem_attrs): Spell out more clearly the roles of ALIGN, SIZE, EXPR and OFFSET.
* rtl.h (mem_attrs): Spell out more clearly the roles of ALIGN,
SIZE, EXPR and OFFSET.
From-SVN: r55753
Richard Henderson [Thu, 25 Jul 2002 17:33:43 +0000 (10:33 -0700)]
emit-rtl.c (set_mem_attributes): Fix size and alignment thinkos in ARRAY_REF of DECL_P case.
* emit-rtl.c (set_mem_attributes): Fix size and alignment thinkos
in ARRAY_REF of DECL_P case.
From-SVN: r55752
Gerald Pfeifer [Thu, 25 Jul 2002 14:34:56 +0000 (16:34 +0200)]
gennews (files): Add proper files for the GCC 3.1 release series.
* gennews (files): Add proper files for the GCC 3.1 release series.
Simplify and reformat introductory wording.
From-SVN: r55750
Richard Sandiford [Thu, 25 Jul 2002 10:16:00 +0000 (10:16 +0000)]
invoke.texi: Document -mabi=meabi, and expand on the EABI description.
* doc/invoke.texi: Document -mabi=meabi, and expand on the EABI
description. Document -mips32, -mips64, and the associated -march
values. Describe the "mipsN" arguments to -march. Say that the
-mipsN options are equivalent to -march. Reword the description
of default type sizes.
* toplev.h (target_flags_explicit): Declare.
* toplev.c (target_flags_explicit): New var.
(set_target_switch): Update target_flags_explicit.
* config/mips/abi64.h (SUBTARGET_TARGET_OPTIONS): Undefine.
* config/mips/elf64.h (MIPS_ISA_DEFAULT): Undefine.
* config/mips/iris6.h (SUBTARGET_ASM_SPEC): -mabi=64 implies -mips3.
* config/mips/isa3264.h (MIPS_ENABLE_EMBEDDED_O32): Undefine.
* config/mips/mips.h (mips_cpu_info): New struct.
(mips_cpu_string, mips_explicit_type_size_string): Remove.
(mips_cpu_info_table, mips_arch_info, mips_tune_info): Declare.
(MIPS_CPP_SET_PROCESSOR): New macro.
(TARGET_CPP_BUILTINS): Declare a macro for each supported processor.
Define _MIPS_ARCH and _MIPS_TUNE.
(MIPS_ISA_DEFAULT): Don't provide a default value. Instead...
(MIPS_CPU_STRING_DEFAULT): Set to "from-abi" if neither it nor
MIPS_ISA_DEFAULT were already defined.
(MULTILIB_DEFAULTS): Add MULTILIB_ABI_DEFAULT.
(TARGET_OPTIONS): Remove -mcpu and -mexplicit-type-size.
(ABI_NEEDS_32BIT_REGS, ABI_NEEDS_64BIT_REGS): New.
(GAS_ASM_SPEC): Remove -march, -mcpu, -mgp* and -mabi rules.
(ABI_GAS_ASM_SPEC): Remove.
(MULTILIB_ABI_DEFAULT, ASM_ABI_DEFAULT_SPEC): New macros.
(ASM_SPEC): Add -mgp32, -mgp64, -march, -mabi=eabi and -mabi=o64.
Invoke %(asm_abi_default_spec) if no ABI was specified.
(CC1_SPEC): Remove ISA -> register-size rules.
(EXTRA_SPECS): Remove abi_gas_asm_spec. Add asm_abi_default_spec.
* config/mips/mips.c (mips_arch_info, mips_tune_info): New vars.
(mips_cpu_string, mips_explicit_type_size_string): Remove.
(mips_cpu_info_table): New array.
(mips_set_architecture, mips_set_tune): New fns.
(override_options): Rework to make -mipsN equivalent to -march.
Detect more erroneous cases, including those removed from CC1_SPEC.
Don't change the ABI based on architecture, or vice versa.
Unify logic with GAS.
(mips_asm_file_start): Get architecture name from mips_arch_info.
(mips_strict_matching_cpu_name_p, mips_matching_cpu_name_p): New fns.
(mips_parse_cpu): Take the name of the option as argument. Handle
'from-abi'. Raise an error if the option is wrong.
(mips_cpu_info_from_isa): New fn.
[gcc/testsuite]
* gcc.dg/mips-args-[123].c: New tests.
From-SVN: r55747
Richard Sandiford [Thu, 25 Jul 2002 09:58:19 +0000 (09:58 +0000)]
mips.md (tablejump_mips161): Use gen_rtx_LABEL_REF.
* config/mips/mips.md (tablejump_mips161): Use gen_rtx_LABEL_REF.
(tablejump_mips162): Likewise.
From-SVN: r55746
J"orn Rennecke [Thu, 25 Jul 2002 09:25:14 +0000 (09:25 +0000)]
simpify-rtx.c (simplify_subreg): Don't pass MODE_CC mode to int_mode_for_mode.
* simpify-rtx.c (simplify_subreg): Don't pass MODE_CC mode to
int_mode_for_mode.
From-SVN: r55745
Gabriel Dos Reis [Thu, 25 Jul 2002 08:58:07 +0000 (08:58 +0000)]
c-common.c (c_sizeof_or_alignof_type): Take a third argument for complaining.
* c-common.c (c_sizeof_or_alignof_type): Take a third argument for
complaining.
* c-common.h (c_sizeof): Adjust definition.
(c_alignof): Likewise.
* c-tree.h (c_sizeof_nowarn): Now macro.
* c-typeck.c (c_sizeof_nowarn): Remove definition.
cp/
* cp-tree.h (cxx_sizeof_nowarn): Now a macro.
(cxx_sizeof_or_alignof_type): Take a third argument.
(cxx_sizeof): Adjust definition.
(cxx_alignof): Likewise.
* init.c (build_delete): Use cxx_sizeof_nowarn to reflect reality.
* typeck.c (cxx_sizeof_or_alignof_type): Take a third argument for
complaining.
(c_sizeof_nowarn): Remove definition.
(build_unary_op): Use cxx_sizeof_nowarn.
From-SVN: r55744
Benjamin Kosnik [Thu, 25 Jul 2002 07:19:40 +0000 (07:19 +0000)]
ios_base_type.cc: Move to...
2002-07-25 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/27_io/ios_base_type.cc: Move to...
* testsuite/27_io/ios_base_types.cc: ...here.
From-SVN: r55743
GCC Administrator [Thu, 25 Jul 2002 07:16:57 +0000 (07:16 +0000)]
Daily bump.
From-SVN: r55742
Neil Booth [Thu, 25 Jul 2002 06:56:11 +0000 (06:56 +0000)]
c-decl.c (c_decode_option): No need to handle switches cpplib handles.
* c-decl.c (c_decode_option): No need to handle switches
cpplib handles.
cp:
* decl2.c (cxx_decode_option): Similarly.
From-SVN: r55737
Benjamin Kosnik [Thu, 25 Jul 2002 06:42:00 +0000 (06:42 +0000)]
re PR libstdc++/7222 (g++ 3.1: locale::operator ==() doesn`t work on std::locale("") locales)
2002-07-24 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/7222
* src/locale.cc (locale::locale(const char*)): Use setlocale NULL.
* testsuite/22_locale/ctor_copy_dtor.cc (test02): New.
From-SVN: r55736
Zack Weinberg [Thu, 25 Jul 2002 05:14:23 +0000 (05:14 +0000)]
defaults.h (ASM_OUTPUT_TYPE_DIRECTIVE, [...]): New default definitions of new macros.
* defaults.h (ASM_OUTPUT_TYPE_DIRECTIVE, ASM_OUTPUT_SIZE_DIRECTIVE,
ASM_OUTPUT_MEASURED_SIZE): New default definitions of new macros.
* doc/tm.texi: Document them. Also document SIZE_ASM_OP,
TYPE_ASM_OP, and TYPE_OPERAND_FMT.
* config/elfos.h, config/netbsd-aout.h, config/openbsd.h,
config/alpha/elf.h, config/arm/elf.h, config/avr/avr.h,
config/cris/aout.h, config/i386/freebsd-aout.h,
config/i386/sco5.h, config/ia64/ia64.c, config/ip2k/ip2k.h,
config/m68k/m68kelf.h, config/m68k/m68kv4.h, config/m88k/m88k.h,
config/mcore/mcore-elf.h, config/mips/elf.h, config/mips/elf64.h,
config/mips/iris6.h, config/mips/linux.h, config/pa/pa-linux.h,
config/pa/pa64-hpux.h, config/rs6000/sysv4.h,
config/xtensa/elf.h, config/xtensa/linux.h:
Use the new macros.
Where possible, remove redundant definitions of SIZE_ASM_OP,
TYPE_ASM_OP, and TYPE_OPERAND_FMT.
From-SVN: r55735
Aldy Hernandez [Thu, 25 Jul 2002 02:51:31 +0000 (02:51 +0000)]
eabi.h: Define TARGET_SPE_ABI, TARGET_SPE, TARGET_ISEL, and TARGET_FPRS.
2002-07-24 Aldy Hernandez <aldyh@redhat.com>
* config/rs6000/eabi.h: Define TARGET_SPE_ABI, TARGET_SPE,
TARGET_ISEL, and TARGET_FPRS.
* doc/invoke.texi (RS/6000 and PowerPC Options): Document
-mabi=spe, -mabi=no-spe, and -misel=.
* config/rs6000/rs6000-protos.h: Add output_isel.
Move vrsave_operation prototype here.
* config/rs6000/rs6000.md (sminsi3): Allow pattern for TARGET_ISEL.
(smaxsi3): Same.
(uminsi3): Same.
(umaxsi3): Same.
(abssi2_nopower): Disallow when TARGET_ISEL.
(*ne0): Same.
(negsf2): Change to expand and rename old pattern to *negsf2.
(abssf2): Change to expand and rename old pattern to *abssf2.
New expanders: fix_truncsfsi2, floatunssisf2, floatsisf2,
fixunssfsi2.
Change patterns that check for TARGET_HARD_FLOAT or
TARGET_SOFT_FLOAT to also check TARGET_FPRS.
* config/rs6000/rs6000.c: New globals: rs6000_spe_abi,
rs6000_isel, rs6000_fprs, rs6000_isel_string.
(rs6000_override_options): Add 8540 case to
processor_target_table.
Set rs6000_isel for the 8540.
Call rs6000_parse_isel_option.
(enable_mask_for_builtins): New.
(rs6000_parse_isel_option): New.
(rs6000_parse_abi_options): Add spe and no-spe.
(easy_fp_constant): Treat !TARGET_FPRS as soft-float.
(rs6000_legitimize_address): Check for TARGET_FPRS when checking
for TARGET_HARD_FLOAT.
Add case for SPE_VECTOR_MODE.
(rs6000_legitimize_reload_address): Handle SPE vector modes.
(rs6000_legitimate_address): Disallow PRE_INC/PRE_DEC for SPE
vector modes.
Check for TARGET_FPRS when checking for TARGET_HARD_FLOAT.
(rs6000_emit_move): Check for TARGET_FPRS.
Add cases for SPE vector modes.
(function_arg_boundary): Return 64 for SPE vector modes.
(function_arg_advance): Check for TARGET_FPRS and
Handle SPE vectors.
(function_arg): Same.
(setup_incoming_varargs): Check for TARGET_FPRS.
(rs6000_va_arg): Same.
(struct builtin_description): Un-constify mask field. Move up in
file.
(bdesc_2arg): Un-constify and add SPE builtins.
(bdesc_1arg): Same.
(bdesc_spe_predicates): New.
(bdesc_spe_evsel): New.
(rs6000_expand_unop_builtin): Add SPE 5-bit literal builtins.
(rs6000_expand_binop_builtin): Same.
(bdesc_2arg_spe): New.
(spe_expand_builtin): New.
(spe_expand_predicate_builtin): New.
(spe_expand_evsel_builtin): New.
(rs6000_expand_builtin): Call spe_expand_builtin for SPE.
(rs6000_init_builtins): Initialize SPE builtins. Call
rs6000_common_init_builtins.
(altivec_init_builtins): Move all non-altivec builtin code to...
(rs6000_common_init_builtins): ...here. New function.
(branch_positive_comparison_operator): Allow NE code for SPE.
(ccr_bit): Return correct ccr bit for SPE fp.
(print_operand): Emit crnor in 'D' case for SPE.
New case 't'.
Add SPE code for 'y' case.
(rs6000_generate_compare): Generate rtl for SPE fp.
(output_cbranch): Handle SPE hard floats.
(rs6000_emit_cmove): Handle isel.
(rs6000_emit_int_cmove): New.
(output_isel): New.
(rs6000_stack_info): Adjust stack frame so GPRs are saved in
64-bits for SPE.
(debug_stack_info): Add SPE info.
(gen_frame_mem_offset): New.
(rs6000_emit_prologue): Save GPRs in 64-bits for SPE abi.
Change mode of frame pointer, when saving it, to Pmode.
(rs6000_emit_epilogue): Restore GPRs in 64-bits for SPE abi.
Misc cleanups and use gen_frame_mem_offset when appropriate.
* config/rs6000/rs6000.h (processor_type): Add PROCESSOR_PPC8540.
(TARGET_SPE_ABI): New.
(TARGET_SPE): New.
(TARGET_ISEL): New.
(TARGET_FPRS): New.
(FIXED_SCRATCH): New.
(RTX_COSTS): Add PROCESSOR_PPC8540.
(ASM_CPU_SPEC): Add case for 8540.
(TARGET_OPTIONS): Add isel= case.
(rs6000_spe_abi): New.
(rs6000_isel): New.
(rs6000_fprs): New.
(rs6000_isel_string): New.
(UNITS_PER_SPE_WORD): New.
(LOCAL_ALIGNMENT): Adjust for SPE.
(HARD_REGNO_MODE_OK): Same.
(DATA_ALIGNMENT): Same.
(MEMBER_TYPE_FORCES_BLK): New.
(FIRST_PSEUDO_REGISTER): Set to 113.
(FIXED_REGISTERS): Add SPE registers.
(reg_class): Same.
(REG_CLASS_NAMES): Same.
(REG_CLASS_CONTENTS): Same.
(REGNO_REG_CLASS): Same.
(REGISTER_NAMES): Same.
(DEBUG_REGISTER_NAMES): Same.
(ADDITIONAL_REGISTER_NAMES): Same.
(CALL_USED_REGISTERS): Same.
(CALL_REALLY_USED_REGISTERS): Same.
(SPE_ACC_REGNO): New.
(SPEFSCR_REGNO): New.
(SPE_SIMD_REGNO_P): New.
(HARD_REGNO_NREGS): Adjust for SPE.
(VECTOR_MODE_SUPPORTED_P): Same.
(REGNO_REG_CLASS): Same.
(FUNCTION_VALUE): Same.
(LIBCALL_VALUE): Same.
(LEGITIMATE_OFFSET_ADDRESS_P): Same.
(SPE_VECTOR_MODE): New.
(CONDITIONAL_REGISTER_USAGE): Disable FPRs when target does FP on
the GPRs. Set FIXED_SCRATCH fixed in SPE case.
(rs6000_stack): Add spe_gp_size, spe_padding_size,
spe_gp_save_offset.
(USE_FP_FOR_ARG_P): Check for TARGET_FPRS.
(LEGITIMATE_LO_SUM_ADDRESS_P): Same.
(SPE_CONST_OFFSET_OK): New.
(rs6000_builtins): Add SPE builtins.
* testsuite/gcc.dg/ppc-spe.c: New.
* config/rs6000/eabispe.h: New.
* config/rs6000/spe.h: New.
* config/rs600/spe.md: New.
* config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define
__SIMD__ for TARGET_SPE.
* config.gcc: Add powerpc-*-eabispe* case.
Add spe.h to user headers for powerpc.
From-SVN: r55734
Aldy Hernandez [Thu, 25 Jul 2002 02:31:04 +0000 (02:31 +0000)]
* testsuite/gcc.dg/ppc-spe.c: New.
From-SVN: r55733
Aldy Hernandez [Thu, 25 Jul 2002 02:27:55 +0000 (02:27 +0000)]
eabi.h: Define TARGET_SPE_ABI, TARGET_SPE, TARGET_ISEL, and TARGET_FPRS.
2002-07-24 Aldy Hernandez <aldyh@redhat.com>
* config/rs6000/eabi.h: Define TARGET_SPE_ABI, TARGET_SPE,
TARGET_ISEL, and TARGET_FPRS.
* doc/invoke.texi (RS/6000 and PowerPC Options): Document
-mabi=spe, -mabi=no-spe, and -misel=.
* config/rs6000/rs6000-protos.h: Add output_isel.
Move vrsave_operation prototype here.
* config/rs6000/rs6000.md (sminsi3): Allow pattern for TARGET_ISEL.
(smaxsi3): Same.
(uminsi3): Same.
(umaxsi3): Same.
(abssi2_nopower): Disallow when TARGET_ISEL.
(*ne0): Same.
(negsf2): Change to expand and rename old pattern to *negsf2.
(abssf2): Change to expand and rename old pattern to *abssf2.
New expanders: fix_truncsfsi2, floatunssisf2, floatsisf2,
fixunssfsi2.
Change patterns that check for TARGET_HARD_FLOAT or
TARGET_SOFT_FLOAT to also check TARGET_FPRS.
* config/rs6000/rs6000.c: New globals: rs6000_spe_abi,
rs6000_isel, rs6000_fprs, rs6000_isel_string.
(rs6000_override_options): Add 8540 case to
processor_target_table.
Set rs6000_isel for the 8540.
Call rs6000_parse_isel_option.
(enable_mask_for_builtins): New.
(rs6000_parse_isel_option): New.
(rs6000_parse_abi_options): Add spe and no-spe.
(easy_fp_constant): Treat !TARGET_FPRS as soft-float.
(rs6000_legitimize_address): Check for TARGET_FPRS when checking
for TARGET_HARD_FLOAT.
Add case for SPE_VECTOR_MODE.
(rs6000_legitimize_reload_address): Handle SPE vector modes.
(rs6000_legitimate_address): Disallow PRE_INC/PRE_DEC for SPE
vector modes.
Check for TARGET_FPRS when checking for TARGET_HARD_FLOAT.
(rs6000_emit_move): Check for TARGET_FPRS.
Add cases for SPE vector modes.
(function_arg_boundary): Return 64 for SPE vector modes.
(function_arg_advance): Check for TARGET_FPRS and
Handle SPE vectors.
(function_arg): Same.
(setup_incoming_varargs): Check for TARGET_FPRS.
(rs6000_va_arg): Same.
(struct builtin_description): Un-constify mask field. Move up in
file.
(bdesc_2arg): Un-constify and add SPE builtins.
(bdesc_1arg): Same.
(bdesc_spe_predicates): New.
(bdesc_spe_evsel): New.
(rs6000_expand_unop_builtin): Add SPE 5-bit literal builtins.
(rs6000_expand_binop_builtin): Same.
(bdesc_2arg_spe): New.
(spe_expand_builtin): New.
(spe_expand_predicate_builtin): New.
(spe_expand_evsel_builtin): New.
(rs6000_expand_builtin): Call spe_expand_builtin for SPE.
(rs6000_init_builtins): Initialize SPE builtins. Call
rs6000_common_init_builtins.
(altivec_init_builtins): Move all non-altivec builtin code to...
(rs6000_common_init_builtins): ...here. New function.
(branch_positive_comparison_operator): Allow NE code for SPE.
(ccr_bit): Return correct ccr bit for SPE fp.
(print_operand): Emit crnor in 'D' case for SPE.
New case 't'.
Add SPE code for 'y' case.
(rs6000_generate_compare): Generate rtl for SPE fp.
(output_cbranch): Handle SPE hard floats.
(rs6000_emit_cmove): Handle isel.
(rs6000_emit_int_cmove): New.
(output_isel): New.
(rs6000_stack_info): Adjust stack frame so GPRs are saved in
64-bits for SPE.
(debug_stack_info): Add SPE info.
(gen_frame_mem_offset): New.
(rs6000_emit_prologue): Save GPRs in 64-bits for SPE abi.
Change mode of frame pointer, when saving it, to Pmode.
(rs6000_emit_epilogue): Restore GPRs in 64-bits for SPE abi.
Misc cleanups and use gen_frame_mem_offset when appropriate.
* config/rs6000/rs6000.h (processor_type): Add PROCESSOR_PPC8540.
(TARGET_SPE_ABI): New.
(TARGET_SPE): New.
(TARGET_ISEL): New.
(TARGET_FPRS): New.
(FIXED_SCRATCH): New.
(RTX_COSTS): Add PROCESSOR_PPC8540.
(ASM_CPU_SPEC): Add case for 8540.
(TARGET_OPTIONS): Add isel= case.
(rs6000_spe_abi): New.
(rs6000_isel): New.
(rs6000_fprs): New.
(rs6000_isel_string): New.
(UNITS_PER_SPE_WORD): New.
(LOCAL_ALIGNMENT): Adjust for SPE.
(HARD_REGNO_MODE_OK): Same.
(DATA_ALIGNMENT): Same.
(MEMBER_TYPE_FORCES_BLK): New.
(FIRST_PSEUDO_REGISTER): Set to 113.
(FIXED_REGISTERS): Add SPE registers.
(reg_class): Same.
(REG_CLASS_NAMES): Same.
(REG_CLASS_CONTENTS): Same.
(REGNO_REG_CLASS): Same.
(REGISTER_NAMES): Same.
(DEBUG_REGISTER_NAMES): Same.
(ADDITIONAL_REGISTER_NAMES): Same.
(CALL_USED_REGISTERS): Same.
(CALL_REALLY_USED_REGISTERS): Same.
(SPE_ACC_REGNO): New.
(SPEFSCR_REGNO): New.
(SPE_SIMD_REGNO_P): New.
(HARD_REGNO_NREGS): Adjust for SPE.
(VECTOR_MODE_SUPPORTED_P): Same.
(REGNO_REG_CLASS): Same.
(FUNCTION_VALUE): Same.
(LIBCALL_VALUE): Same.
(LEGITIMATE_OFFSET_ADDRESS_P): Same.
(SPE_VECTOR_MODE): New.
(CONDITIONAL_REGISTER_USAGE): Disable FPRs when target does FP on
the GPRs. Set FIXED_SCRATCH fixed in SPE case.
(rs6000_stack): Add spe_gp_size, spe_padding_size,
spe_gp_save_offset.
(USE_FP_FOR_ARG_P): Check for TARGET_FPRS.
(LEGITIMATE_LO_SUM_ADDRESS_P): Same.
(SPE_CONST_OFFSET_OK): New.
(rs6000_builtins): Add SPE builtins.
* testsuite/gcc.dg/ppc-spe.c: New.
* config/rs6000/eabispe.h: New.
* config/rs6000/spe.h: New.
* config/rs600/spe.md: New.
* config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define
__SIMD__ for TARGET_SPE.
* config.gcc: Add powerpc-*-eabispe* case.
Add spe.h to user headers for powerpc.
From-SVN: r55732
Aldy Hernandez [Thu, 25 Jul 2002 02:22:47 +0000 (02:22 +0000)]
eabi.h: Define TARGET_SPE_ABI, TARGET_SPE, TARGET_ISEL, and TARGET_FPRS.
2002-07-24 Aldy Hernandez <aldyh@redhat.com>
* config/rs6000/eabi.h: Define TARGET_SPE_ABI, TARGET_SPE,
TARGET_ISEL, and TARGET_FPRS.
* doc/invoke.texi (RS/6000 and PowerPC Options): Document
-mabi=spe, -mabi=no-spe, and -misel=.
* config/rs6000/rs6000-protos.h: Add output_isel.
Move vrsave_operation prototype here.
* config/rs6000/rs6000.md (sminsi3): Allow pattern for TARGET_ISEL.
(smaxsi3): Same.
(uminsi3): Same.
(umaxsi3): Same.
(abssi2_nopower): Disallow when TARGET_ISEL.
(*ne0): Same.
(negsf2): Change to expand and rename old pattern to *negsf2.
(abssf2): Change to expand and rename old pattern to *abssf2.
New expanders: fix_truncsfsi2, floatunssisf2, floatsisf2,
fixunssfsi2.
Change patterns that check for TARGET_HARD_FLOAT or
TARGET_SOFT_FLOAT to also check TARGET_FPRS.
* config/rs6000/rs6000.c: New globals: rs6000_spe_abi,
rs6000_isel, rs6000_fprs, rs6000_isel_string.
(rs6000_override_options): Add 8540 case to
processor_target_table.
Set rs6000_isel for the 8540.
Call rs6000_parse_isel_option.
(enable_mask_for_builtins): New.
(rs6000_parse_isel_option): New.
(rs6000_parse_abi_options): Add spe and no-spe.
(easy_fp_constant): Treat !TARGET_FPRS as soft-float.
(rs6000_legitimize_address): Check for TARGET_FPRS when checking
for TARGET_HARD_FLOAT.
Add case for SPE_VECTOR_MODE.
(rs6000_legitimize_reload_address): Handle SPE vector modes.
(rs6000_legitimate_address): Disallow PRE_INC/PRE_DEC for SPE
vector modes.
Check for TARGET_FPRS when checking for TARGET_HARD_FLOAT.
(rs6000_emit_move): Check for TARGET_FPRS.
Add cases for SPE vector modes.
(function_arg_boundary): Return 64 for SPE vector modes.
(function_arg_advance): Check for TARGET_FPRS and
Handle SPE vectors.
(function_arg): Same.
(setup_incoming_varargs): Check for TARGET_FPRS.
(rs6000_va_arg): Same.
(struct builtin_description): Un-constify mask field. Move up in
file.
(bdesc_2arg): Un-constify and add SPE builtins.
(bdesc_1arg): Same.
(bdesc_spe_predicates): New.
(bdesc_spe_evsel): New.
(rs6000_expand_unop_builtin): Add SPE 5-bit literal builtins.
(rs6000_expand_binop_builtin): Same.
(bdesc_2arg_spe): New.
(spe_expand_builtin): New.
(spe_expand_predicate_builtin): New.
(spe_expand_evsel_builtin): New.
(rs6000_expand_builtin): Call spe_expand_builtin for SPE.
(rs6000_init_builtins): Initialize SPE builtins. Call
rs6000_common_init_builtins.
(altivec_init_builtins): Move all non-altivec builtin code to...
(rs6000_common_init_builtins): ...here. New function.
(branch_positive_comparison_operator): Allow NE code for SPE.
(ccr_bit): Return correct ccr bit for SPE fp.
(print_operand): Emit crnor in 'D' case for SPE.
New case 't'.
Add SPE code for 'y' case.
(rs6000_generate_compare): Generate rtl for SPE fp.
(output_cbranch): Handle SPE hard floats.
(rs6000_emit_cmove): Handle isel.
(rs6000_emit_int_cmove): New.
(output_isel): New.
(rs6000_stack_info): Adjust stack frame so GPRs are saved in
64-bits for SPE.
(debug_stack_info): Add SPE info.
(gen_frame_mem_offset): New.
(rs6000_emit_prologue): Save GPRs in 64-bits for SPE abi.
Change mode of frame pointer, when saving it, to Pmode.
(rs6000_emit_epilogue): Restore GPRs in 64-bits for SPE abi.
Misc cleanups and use gen_frame_mem_offset when appropriate.
* config/rs6000/rs6000.h (processor_type): Add PROCESSOR_PPC8540.
(TARGET_SPE_ABI): New.
(TARGET_SPE): New.
(TARGET_ISEL): New.
(TARGET_FPRS): New.
(FIXED_SCRATCH): New.
(RTX_COSTS): Add PROCESSOR_PPC8540.
(ASM_CPU_SPEC): Add case for 8540.
(TARGET_OPTIONS): Add isel= case.
(rs6000_spe_abi): New.
(rs6000_isel): New.
(rs6000_fprs): New.
(rs6000_isel_string): New.
(UNITS_PER_SPE_WORD): New.
(LOCAL_ALIGNMENT): Adjust for SPE.
(HARD_REGNO_MODE_OK): Same.
(DATA_ALIGNMENT): Same.
(MEMBER_TYPE_FORCES_BLK): New.
(FIRST_PSEUDO_REGISTER): Set to 113.
(FIXED_REGISTERS): Add SPE registers.
(reg_class): Same.
(REG_CLASS_NAMES): Same.
(REG_CLASS_CONTENTS): Same.
(REGNO_REG_CLASS): Same.
(REGISTER_NAMES): Same.
(DEBUG_REGISTER_NAMES): Same.
(ADDITIONAL_REGISTER_NAMES): Same.
(CALL_USED_REGISTERS): Same.
(CALL_REALLY_USED_REGISTERS): Same.
(SPE_ACC_REGNO): New.
(SPEFSCR_REGNO): New.
(SPE_SIMD_REGNO_P): New.
(HARD_REGNO_NREGS): Adjust for SPE.
(VECTOR_MODE_SUPPORTED_P): Same.
(REGNO_REG_CLASS): Same.
(FUNCTION_VALUE): Same.
(LIBCALL_VALUE): Same.
(LEGITIMATE_OFFSET_ADDRESS_P): Same.
(SPE_VECTOR_MODE): New.
(CONDITIONAL_REGISTER_USAGE): Disable FPRs when target does FP on
the GPRs. Set FIXED_SCRATCH fixed in SPE case.
(rs6000_stack): Add spe_gp_size, spe_padding_size,
spe_gp_save_offset.
(USE_FP_FOR_ARG_P): Check for TARGET_FPRS.
(LEGITIMATE_LO_SUM_ADDRESS_P): Same.
(SPE_CONST_OFFSET_OK): New.
(rs6000_builtins): Add SPE builtins.
* testsuite/gcc.dg/ppc-spe.c: New.
* config/rs6000/eabispe.h: New.
* config/rs6000/spe.h: New.
* config/rs600/spe.md: New.
* config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define
__SIMD__ for TARGET_SPE.
* config.gcc: Add powerpc-*-eabispe* case.
Add spe.h to user headers for powerpc.
From-SVN: r55731
Benjamin Kosnik [Thu, 25 Jul 2002 00:04:37 +0000 (00:04 +0000)]
re PR libstdc++/7230 (<strstream> header file is missing (trunk))
2002-07-24 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/7230
* config/linker-map.gnu: Revert strstream patch from 2002-07-01.
* include/Makefile.am (backward_headers): Use strstream, not
strstream.h.
* include/Makefile.in: Regenerate.
* include/backward/strstream: Revert.
* include/backward/strstream.h: Remove.
* src/strstream.cc: Revert.
* testsuite/backward/strstream_members.cc: Change include.
From-SVN: r55730
Chris Demetriou [Wed, 24 Jul 2002 23:48:20 +0000 (23:48 +0000)]
elf.h (STARTFILE_SPEC): Undo previous change.
2002-07-24 Chris Demetriou <cgd@broadcom.com>
* config/mips/elf.h (STARTFILE_SPEC): Undo previous change.
* config/mips/elf64.h (STARTFILE_SPEC): Likewise.
* config/mips/isa3264.h (STARTFILE_SPEC): Likewise.
From-SVN: r55729
Tom Tromey [Wed, 24 Jul 2002 23:17:39 +0000 (23:17 +0000)]
Runtime.java (loadLibrary): Pass `true' as search argument to _load.
* java/lang/Runtime.java (loadLibrary): Pass `true' as search
argument to _load.
From-SVN: r55727
Benjamin Kosnik [Wed, 24 Jul 2002 23:17:13 +0000 (23:17 +0000)]
re PR libstdc++/7219 (_GLIBCPP_DEPRECATED on (ios_base::streamoff and ios_base::streampos types))
2002-07-24 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/7219
* testsuite/27_io/ios_base_type.cc: New.
* include/bits/ios_base.h (ios_base::streampos): Add.
(ios_base::streamoff): Add.
From-SVN: r55726
Geoffrey Keating [Wed, 24 Jul 2002 23:01:07 +0000 (23:01 +0000)]
In cp/ChangeLog:
* tree.c (cp_build_qualified_type_real): When copying
pointer-to-method types, unshare the record that holds
the cached pointer-to-member-function type.
In testsuite/ChangeLog:
* g++.dg/other/ptrmem4.C: New testcase.
From-SVN: r55725
Richard Henderson [Wed, 24 Jul 2002 22:20:34 +0000 (15:20 -0700)]
* gcc.c-torture/execute/loop-2e.c: Rewrite for 64 bit and no mmap.
From-SVN: r55724
Richard Henderson [Wed, 24 Jul 2002 22:05:19 +0000 (15:05 -0700)]
expr.c (expand_expr): Use GOTO_SUBROUTINE_EXPR form when not optimizing.
* expr.c (expand_expr) [TRY_FINALLY_EXPR]: Use GOTO_SUBROUTINE_EXPR
form when not optimizing.
From-SVN: r55723