Alan Modra [Tue, 11 Jan 2005 09:51:17 +0000 (09:51 +0000)]
re PR target/18916 (mis-aligned vector code with copy memory (-maltivec))
PR target/18916
* builtins.c (std_gimplify_va_arg_expr): Adjust alignment of *ap.
* expr.h (struct locate_and_pad_arg_data): Add "boundary".
* function.c (locate_and_pad_parm): Set new field.
(assign_parm_find_stack_rtl): Use it instead of FUNCTION_ARG_BOUNDARY.
Tweak where_pad test to include "none". Always set mem align for
stack_parm.
(assign_parm_adjust_stack_rtl): Discard stack_parm if alignment
not sufficient for type.
(assign_parm_setup_block): If stack_parm is zero on entry, always
make a new stack local. Block move old stack parm if necessary
to new aligned stack local.
(assign_parm_setup_stack): Use a block move to handle
potentially misaligned entry_parm.
(assign_parms_unsplit_complex): Specify required alignment when
creating stack local.
* calls.c (compute_argument_addresses): Override alignment of stack
arg calculated from its type with the alignment given by
FUNCTION_ARG_BOUNDARY.
(store_one_arg): Likewise.
From-SVN: r93179
Jan Beulich [Tue, 11 Jan 2005 08:57:24 +0000 (08:57 +0000)]
ia64.md (zero_extendsidi2): Replace zxt4 by addp4.
gcc/
2005-01-11 Jan Beulich <jbeulich@novell.com>
* config/ia64/ia64.md (zero_extendsidi2): Replace zxt4 by addp4.
Change respective itanium_class attribute to ialu.
(shladdp4_internal): New.
* config/ia64/predicates.md (shladd_log2_operand): New.
From-SVN: r93178
Richard Henderson [Tue, 11 Jan 2005 08:37:00 +0000 (00:37 -0800)]
expr.c (store_constructor): Use rtvec_alloc instead of alloca+gen_rtvec_v...
* expr.c (store_constructor): Use rtvec_alloc instead of
alloca+gen_rtvec_v, and an incorrect number passed to alloca.
From-SVN: r93177
Kazu Hirata [Tue, 11 Jan 2005 05:29:29 +0000 (05:29 +0000)]
* config/alpha/alpha.c, config/i386/mmx.md: Fix comment typos.
From-SVN: r93176
Alan Modra [Tue, 11 Jan 2005 04:07:28 +0000 (04:07 +0000)]
varasm.c (default_section_type_flags_1): Don't set SECTION_SMALL.
* varasm.c (default_section_type_flags_1): Don't set SECTION_SMALL.
* config/ia64/ia64.c (TARGET_SECTION_TYPE_FLAGS): Define.
(TARGET_RWRELOC): Define.
(ia64_rwreloc_section_type_flags): Delete.
(ia64_section_type_flags): New function.
* config/ia64/hpux.h (TARGET_SECTION_TYPE_FLAGS): Don't define.
(TARGET_RWRELOC): Define.
From-SVN: r93175
David Mosberger [Tue, 11 Jan 2005 03:44:10 +0000 (03:44 +0000)]
re PR target/18987 ([ia64] Extra '.restore sp' in tail call)
Patch from David Mosberger to fix -fno-omit-frame-pointer bug.
PR target/18987
* config/ia64/ia64.c (process_set): For alloc insn, only call
process_epilogue is !frame_pointer_needed.
From-SVN: r93174
GCC Administrator [Tue, 11 Jan 2005 00:16:49 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r93162
Roger Sayle [Mon, 10 Jan 2005 23:55:33 +0000 (23:55 +0000)]
re PR c++/19355 (ICE: tree check at c-common.c:2332)
PR c++/19355
* c-common.c (c_common_truthvalue_conversion): TRUTH_NOT_EXPR is a
unary operator and can't be treated as a binary/comparison operator.
* g++.dg/expr/pr19355-1.C: New test case.
From-SVN: r93159
Tom Tromey [Mon, 10 Jan 2005 22:57:53 +0000 (22:57 +0000)]
* mauve-libgcj: Exclude some swing tests.
From-SVN: r93157
Richard Henderson [Mon, 10 Jan 2005 21:13:46 +0000 (13:13 -0800)]
i386.c (ix86_function_value): Use type_natural_mode.
* config/i386/i386.c (ix86_function_value): Use type_natural_mode.
(ix86_return_in_memory): Likewise.
(function_arg_advance): Likewise. Mirror structure in function_arg
for choosing register to advance.
From-SVN: r93156
Tom Tromey [Mon, 10 Jan 2005 19:39:26 +0000 (19:39 +0000)]
PR libgcj/12016, PR libgcj/18405, PR libgcj/17738:
* java/lang/Package.java (getPackages): Use VMClassLoader when
appropriate.
(getPackage): Likewise.
* prims.cc (_Jv_CreateJavaVM): Call
_Jv_RegisterBootstrapPackages.
* include/jvm.h (_Jv_RegisterBootstrapPackages): Declare.
* java/lang/VMClassLoader.java (getPackage): Rewrote.
(getPackages): Likewise.
(definedPackages): New field.
(definePackageForNative): New method.
* java/lang/Class.h (_Jv_FindClassInCache): Updated.
* java/lang/natVMClassLoader.cc (loadClass): Updated.
* defineclass.cc (handleClassBegin): Use
ClassLoader.findLoadedClass.
* java/lang/natClassLoader.cc (_Jv_RegisterInitiatingLoader):
Rewrote.
(struct _Jv_LoaderInfo): Removed.
(initiated_classes): Likewise.
(_Jv_UnregisterClass): Don't use initiated_classes.
(_Jv_FindClassInCache): Likewise. Removed 'loader' argument.
(_Jv_FindClass): Register classes found during boostrap.
(BOOTSTRAP_CLASS_LIST_SIZE): New define.
(bootstrap_class_list): New global.
(bootstrap_index): Likewise.
(_Jv_RegisterBootstrapPackages): New function.
* gnu/gcj/runtime/natVMClassLoader.cc (findClass): Call
definePackageForNative.
(findClass): Updated.
* gnu/gcj/runtime/VMClassLoader.java (definePackageForNative):
New method.
From-SVN: r93155
Kazu Hirata [Mon, 10 Jan 2005 19:37:05 +0000 (19:37 +0000)]
* cp-tree.h: Fix a comment typo.
From-SVN: r93154
Kazu Hirata [Mon, 10 Jan 2005 19:34:36 +0000 (19:34 +0000)]
* tree-vectorizer.c, tree.def: Fix comment typos.
From-SVN: r93153
Tom Tromey [Mon, 10 Jan 2005 19:21:46 +0000 (19:21 +0000)]
re PR libgcj/18868 (Interface containing anonymous class breaks gij)
PR libgcj/18868:
* include/jvm.h (_Jv_Linker::find_field): Declare.
(_Jv_Linker::find_field_helper): Likewise.
* link.cc (find_field_helper): New method.
(find_field): Likewise.
(resolve_pool_entry): Use it. Throw NoSuchFieldError when field
not found.
(link_symbol_table): Use find_field.
From-SVN: r93151
Michael Koch [Mon, 10 Jan 2005 18:26:59 +0000 (18:26 +0000)]
re PR libgcj/18014 (java.util.Locale changes variant to upper case)
2005-01-10 Michael Koch <konqueror@gmx.de>
PR libgcj/18014
* java/util/Locale.java (Locale): Don't uppercase variant.
(getISOCountries): Fixed typo in javadoc.
From-SVN: r93150
Michael Koch [Mon, 10 Jan 2005 18:26:40 +0000 (18:26 +0000)]
[multiple changes]
2005-01-10 Michael Koch <konqueror@gmx.de>
* java/util/SimpleTimeZone.java (checkRule):
Throw IllegalArgumentException on invalid month values.
* java/util/TimeZone.java (setID):
Throw NullPointerException if needed.
2005-01-10 Andrew John Hughes <gnu_andrew@member.fsf.org>
* java/util/SimpleTimeZone.java (getOffset):
offset end date with daylight savings
From-SVN: r93149
Ranjit Mathew [Mon, 10 Jan 2005 18:14:36 +0000 (18:14 +0000)]
* verify.c: Revert to the version before the BC-ABI merge.
From-SVN: r93147
Ranjit Mathew [Mon, 10 Jan 2005 18:07:22 +0000 (18:07 +0000)]
re PR java/19277 (allows array.length++ although it is final)
* testsuite/libjava.compile/PR19277.java: New file for PR java/19277.
* testsuite/libjava.compile/PR19277.xfail: Likewise.
From-SVN: r93146
Ranjit Mathew [Mon, 10 Jan 2005 18:01:04 +0000 (18:01 +0000)]
re PR java/19277 (allows array.length++ although it is final)
PR java/19277
* check-init.c (check_init): Take care of references that do not
have an explicit final variable declaration (e.g. array length
access) for pre/post in/de-crement operators.
From-SVN: r93144
Paolo Carlini [Mon, 10 Jan 2005 17:07:50 +0000 (17:07 +0000)]
Makefile.in: Regenerate.
2005-01-10 Paolo Carlini <pcarlini@suse.de>
* Makefile.in: Regenerate.
* libmath/Makefile.in: Likewise.
* libsupc++/Makefile.in: Likewise.
* po/Makefile.in: Likewise.
* src/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
2005-01-10 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_algobase.h (lexicographical_compare):
Fix concept check.
From-SVN: r93143
Mark Dettinger [Mon, 10 Jan 2005 16:06:21 +0000 (16:06 +0000)]
s390.c (struct processor_costs): 4 new fields: ddbr, ddr, debr, der.
2005-01-10 Mark Dettinger <dettinge@de.ibm.com>
* config/s390/s390.c (struct processor_costs): 4 new fields:
ddbr, ddr, debr, der.
(s390_rtx_costs): More precise handling of divide instructions.
From-SVN: r93142
David Edelsohn [Mon, 10 Jan 2005 15:10:05 +0000 (15:10 +0000)]
* config/rs6000/t-aix43 (BOOT_LDFLAGS): Define.
From-SVN: r93140
Laurent GUERBY [Mon, 10 Jan 2005 08:19:24 +0000 (08:19 +0000)]
c456001.a: New from ACATS 2.5L
2005-01-10 Laurent GUERBY <laurent@guerby.net>
* ada/acats/tests/c4/
c456001.a: New from ACATS 2.5L
* ada/acats/tests/c3/
c392014.a: Update from ACATS 2.5L
* ada/acats/tests/c3/
c92005b.ada: Likewise.
* ada/acats/tests/c3/cxb3012.a: Likewise.
* ada/acats/norun.lst: Add
c380004 and
c953002, add PR
From-SVN: r93135
Jan Beulich [Mon, 10 Jan 2005 07:42:49 +0000 (07:42 +0000)]
ia64.c (ia64_in_small_data_p): Also handle the section names resulting from...
gcc/
2005-01-10 Jan Beulich <jbeulich@novell.com>
* config/ia64/ia64.c (ia64_in_small_data_p): Also handle the section
names resulting from -ffunction-sections/-fdata-sections and linkonce
ones.
* varasm.c (default_section_type_flags_1): Also set SECTION_SMALL
based on the section name. Rearrange the section name comparison logic
slightly so that each section name is compared against at most once.
From-SVN: r93134
GCC Administrator [Mon, 10 Jan 2005 00:16:19 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r93126
Ben Elliston [Sun, 9 Jan 2005 23:43:29 +0000 (23:43 +0000)]
invoke.texi (Code Gen Options): Add PowerPC to the list of targets for which -fPIC reduces limitations on the...
* doc/invoke.texi (Code Gen Options): Add PowerPC to the list of
targets for which -fPIC reduces limitations on the GOT size.
From-SVN: r93123
Paul Brook [Sun, 9 Jan 2005 22:57:45 +0000 (22:57 +0000)]
re PR fortran/17675 ([Regression w.r.t. g77] Alignment constraints not honored in EQUIVALENCE)
2005-01-09 Paul Brook <paul@codesourcery.com>
PR fortran/17675
* trans-common.c (current_common, current_offset): Remove.
(create_common): Add head argument.
(align_segment): New function.
(apply_segment_offset): New function.
(translate_common): Merge code from new_segment. Handle alignment.
(new_segment): Remove.
(finish_equivalences): Ensure proper alignment.
testsuite/
* gfortran.dg/common_2.f90: New file.
* gfortran.dg/common_3.f90: New file.
From-SVN: r93122
Falk Hueffner [Sun, 9 Jan 2005 22:27:07 +0000 (23:27 +0100)]
fold-const.c (fold): Also handle EXACT_DIV_EXPR when folding X/C1 cmpop C2.
* fold-const.c (fold): Also handle EXACT_DIV_EXPR when folding
X/C1 cmpop C2.
From-SVN: r93121
David Edelsohn [Sun, 9 Jan 2005 22:01:48 +0000 (22:01 +0000)]
re PR other/18720 (collect2 uses wrong search order if -brtl specified)
PR target/18720
* collect2.c (main): Set aixrtl_flag for -brtl option.
(resolve_lib_name): Search for .so file extension before .a
if aixrtl_flag set.
From-SVN: r93119
Zdenek Dvorak [Sun, 9 Jan 2005 18:58:11 +0000 (19:58 +0100)]
* gcc.dg/tree-ssa/loop-4.c: Fix outcome.
From-SVN: r93116
Michael Koch [Sun, 9 Jan 2005 18:57:32 +0000 (18:57 +0000)]
re PR libgcj/17069 (InetAddress.getLocalHost() returns broken InetAddress object if hostname not set)
2005-01-09 Michael Koch <konqueror@gmx.de>
PR libgcj/17069
* java/net/InetAddress.java (getLocalHost):
Throw UnknownHostException if local hostname cannot be determined.
From-SVN: r93115
Dorit Naishlos [Sun, 9 Jan 2005 17:30:24 +0000 (17:30 +0000)]
tree-vectorizer.c (vect_enhance_data_refs_alignment): Add dump prints.
* tree-vectorizer.c (vect_enhance_data_refs_alignment): Add dump prints.
(vect_analyze_data_refs_alignment): Add dump prints.
* gcc.dg/vect/pr18400.c: Add checks for alignment prints.
* gcc.dg/vect/pr18425.c: Add checks for alignment prints.
* gcc.dg/vect/pr18536.c: Add checks for alignment prints.
* gcc.dg/vect/vect-1.c: Add checks for alignment prints.
* gcc.dg/vect/vect-2.c: Add checks for alignment prints.
* gcc.dg/vect/vect-3.c: Add checks for alignment prints.
* gcc.dg/vect/vect-4.c: Add checks for alignment prints.
* gcc.dg/vect/vect-5.c: Add checks for alignment prints.
* gcc.dg/vect/vect-6.c: Add checks for alignment prints.
* gcc.dg/vect/vect-7.c: Add checks for alignment prints.
* gcc.dg/vect/vect-13.c: Add checks for alignment prints.
* gcc.dg/vect/vect-17.c: Add checks for alignment prints.
* gcc.dg/vect/vect-18.c: Add checks for alignment prints.
* gcc.dg/vect/vect-19.c: Add checks for alignment prints.
* gcc.dg/vect/vect-20.c: Add checks for alignment prints.
* gcc.dg/vect/vect-21.c: Add checks for alignment prints.
* gcc.dg/vect/vect-22.c: Add checks for alignment prints.
* gcc.dg/vect/vect-23.c: Add checks for alignment prints.
* gcc.dg/vect/vect-24.c: Add checks for alignment prints.
* gcc.dg/vect/vect-25.c: Add checks for alignment prints.
* gcc.dg/vect/vect-26.c: Add checks for alignment prints.
* gcc.dg/vect/vect-27.c: Add checks for alignment prints.
* gcc.dg/vect/vect-28.c: Add checks for alignment prints.
* gcc.dg/vect/vect-29.c: Add checks for alignment prints.
* gcc.dg/vect/vect-31.c: Add checks for alignment prints.
* gcc.dg/vect/vect-32.c: Add checks for alignment prints.
* gcc.dg/vect/vect-33.c: Add checks for alignment prints.
* gcc.dg/vect/vect-34.c: Add checks for alignment prints.
* gcc.dg/vect/vect-35.c: Add checks for alignment prints.
* gcc.dg/vect/vect-36.c: Add checks for alignment prints.
* gcc.dg/vect/vect-37.c: Add checks for alignment prints.
* gcc.dg/vect/vect-40.c: Add checks for alignment prints.
* gcc.dg/vect/vect-41.c: Add checks for alignment prints.
* gcc.dg/vect/vect-42.c: Add checks for alignment prints.
* gcc.dg/vect/vect-43.c: Add checks for alignment prints.
* gcc.dg/vect/vect-44.c: Add checks for alignment prints.
* gcc.dg/vect/vect-46.c: Add checks for alignment prints.
* gcc.dg/vect/vect-47.c: Add checks for alignment prints.
* gcc.dg/vect/vect-48.c: Add checks for alignment prints.
* gcc.dg/vect/vect-50.c: Add checks for alignment prints.
* gcc.dg/vect/vect-52.c: Add checks for alignment prints.
* gcc.dg/vect/vect-53.c: Add checks for alignment prints.
* gcc.dg/vect/vect-56.c: Add checks for alignment prints.
* gcc.dg/vect/vect-58.c: Add checks for alignment prints.
* gcc.dg/vect/vect-60.c: Add checks for alignment prints.
* gcc.dg/vect/vect-62.c: Add checks for alignment prints.
* gcc.dg/vect/vect-64.c: Add checks for alignment prints.
* gcc.dg/vect/vect-65.c: Add checks for alignment prints.
* gcc.dg/vect/vect-66.c: Add checks for alignment prints.
* gcc.dg/vect/vect-67.c: Add checks for alignment prints.
* gcc.dg/vect/vect-68.c: Add checks for alignment prints.
* gcc.dg/vect/vect-69.c: Add checks for alignment prints.
* gcc.dg/vect/vect-72.c: Add checks for alignment prints.
* gcc.dg/vect/vect-73.c: Add checks for alignment prints.
* gcc.dg/vect/vect-74.c: Add checks for alignment prints.
* gcc.dg/vect/vect-75.c: Add checks for alignment prints.
* gcc.dg/vect/vect-76.c: Add checks for alignment prints.
* gcc.dg/vect/vect-77.c: Add checks for alignment prints.
* gcc.dg/vect/vect-78.c: Add checks for alignment prints.
* gcc.dg/vect/vect-80.c: Add checks for alignment prints.
* gcc.dg/vect/vect-86.c: Add checks for alignment prints.
* gcc.dg/vect/vect-87.c: Add checks for alignment prints.
* gcc.dg/vect/vect-88.c: Add checks for alignment prints.
* gcc.dg/vect/vect-89.c: Add checks for alignment prints.
* gcc.dg/vect/vect-all.c: Add checks for alignment prints.
* gcc.dg/vect/vect-1.c: Fix spelling.
* gcc.dg/vect/vect-10.c: Fix spelling.
* gcc.dg/vect/vect-11.c: Fix spelling.
* gcc.dg/vect/vect-12.c: Fix spelling.
* gcc.dg/vect/vect-14.c: Fix spelling.
* gcc.dg/vect/vect-15.c: Fix spelling.
* gcc.dg/vect/vect-16.c: Fix spelling.
* gcc.dg/vect/vect-46.c: Remove obsolete comment.
* gcc.dg/vect/vect-64.c: Fix comments.
* gcc.dg/vect/vect-none.c: Remove vectorizable loop.
Co-Authored-By: Ira Rosen <irar@il.ibm.com>
From-SVN: r93114
Ira Rosen [Sun, 9 Jan 2005 15:12:36 +0000 (15:12 +0000)]
tree-vectorizer.c (vect_analyze_offset_expr): Use expr_invariant_in_loop_p.
2005-01-09 Ira Rosen <irar@il.ibm.com>
* tree-vectorizer.c (vect_analyze_offset_expr): Use
expr_invariant_in_loop_p.
Initialize outputs first thing in the function.
(vect_update_ivs_after_vectorizer): Call initial_condition_in_loop_num.
(vect_is_simple_iv_evolution): Call initial_condition_in_loop_num.
(vect_analyze_pointer_ref_access): Check that the initial condition of
the access function is loop invariant.
From-SVN: r93113
Mark Wielaard [Sun, 9 Jan 2005 13:54:34 +0000 (13:54 +0000)]
parse.y (process_imports): Allocate (and free) original_name only when not already defined.
* parse.y (process_imports): Allocate (and free) original_name only
when not already defined.
* jcf-parse.c (read_class): Free results of find_class() and
lrealpath().
(java_parse_file): Keep pointer to head of file_list and free when
done. Free result of lrealpath().
From-SVN: r93109
Manfred Hollstein [Sun, 9 Jan 2005 12:28:14 +0000 (12:28 +0000)]
pr18241-1.c: Fix dg-do parameter.
* gcc.dg/pr18241-1.c: Fix dg-do parameter.
* gcc.dg/pr18241-2.c: Likewise.
* gcc.dg/pr18241-3.c: Likewise.
* gcc.dg/pr18241-4.c: Likewise.
* gcc.dg/pr18241-5.c: Likewise.
From-SVN: r93108
Richard Henderson [Sun, 9 Jan 2005 11:23:25 +0000 (03:23 -0800)]
i386.c (bdesc_2arg): Update names for mmx_ prefixes.
* config/i386/i386.c (bdesc_2arg): Update names for mmx_ prefixes.
(ix86_expand_builtin): Likewise. Frob MASKMOVQ wrt the input mem
just like MASKMOVDQU. Return plain zero for MMX_ZERO.
* config/i386/i386.md (MMXMODEI, mov<MMXMODEI>,
mov<MMXMODEI>_internal_rex64, mov<MMXMODEI>_internal, movv2sf,
movv2sf_internal_rex64, movv2sf_internal, MMXMODE,
movmisalign<MMXMODE>, mmx_pmovmskb, mmx_maskmovq, mmx_maskmovq_rex,
sse_movntdi, addv8qi3, addv4hi3, addv2si3, mmx_adddi3, ssaddv8qi3,
ssaddv4hi3, usaddv8qi3, usaddv4hi3, subv8qi3, subv4hi3, subv2si3,
mmx_subdi3, sssubv8qi3, sssubv4hi3, ussubv8qi3, ussubv4hi3,
mulv4hi3, smulv4hi3_highpart, umulv4hi3_highpart, mmx_pmaddwd,
sse2_umulsidi3, mmx_iordi3, mmx_xordi3, mmx_anddi3, mmx_nanddi3,
mmx_uavgv8qi3, mmx_uavgv4hi3, mmx_psadbw, mmx_pinsrw, mmx_pinsrw,
mmx_pextrw, mmx_pshufw, eqv8qi3, eqv4hi3, eqv2si3, gtv8qi3, gtv4hi3,
gtv2si3, umaxv8qi3, smaxv4hi3, uminv8qi3, sminv4hi3, ashrv4hi3,
ashrv2si3, lshrv4hi3, lshrv2si3, mmx_lshrdi3, ashlv4hi3, ashlv2si3,
mmx_ashldi3, mmx_packsswb, mmx_packssdw, mmx_packuswb, mmx_punpckhbw,
mmx_punpckhwd, mmx_punpckhdq, mmx_punpcklbw, mmx_punpcklwd,
mmx_punpckldq, emms, addv2sf3, subv2sf3, subrv2sf3, gtv2sf3, gev2sf3,
eqv2sf3, pfmaxv2sf3, pfminv2sf3, mulv2sf3, femms, pf2id, pf2iw,
pfacc, pfnacc, pfpnacc, pi2fw, floatv2si2, pfrcpv2sf2, pfrcpit1v2sf3,
pfrcpit2v2sf3, pfrsqrtv2sf2, pfrsqit1v2sf3, pmulhrwv4hi3, pswapdv2si2,
pswapdv2sf2): Move to mmx.md; rename as necessary with leading
mmx_ prefix.
(mmx_clrdi, pavgusb): Remove.
(ldmxcsr, stmxcsr, sfence, sfence_insn): Move to sse.md; rename
with leading sse_ prefix.
* config/i386/sse.md: Receive them.
* config/i386/mmx.md: New file.
(MMXMODE12, MMXMODE24, mmxvecsize): New.
(subrv2sf3): Turn into expander for normal subtraction.
(mmx_addv2sf3, mmx_mulv2sf3, mmx_smaxv2sf3, mmx_sminv2sf3,
mmx_eqv2sf3, mmx_mulv4hi3, mmx_smulv4hi3_highpart,
mmx_umulv4hi3_highpart, mmx_pmaddwd, mmx_pmulhrwv4hi3, sse2_umulsidi3,
mmx_umaxv8qi3, mmx_smaxv4hi3, mmx_uminv8qi3, mmx_sminv4hi3): Mark
commutative; use ix86_binary_operator_ok.
(mmx_add<MMXMODEI>3, mmx_ssadd<MMXMODE12>3, mmx_usadd<MMXMODE12>3,
mmx_sub<MMXMODEI>3, mmx_sssub<MMXMODE12>3, mmx_ussub<MMXMODE12>3
mmx_ashr<MMXMODE24>3, mmx_lshr<MMXMODE23>3, mmx_ashl<MMXMODE24>3
mmx_eq<MMXMODEI>3, mmx_gt<MMXMODEI>3, mmx_and<MMXMODEI>3,
mmx_nand<MMXMODEI>3, mmx_ior<MMXMODEI>3, mmx_xor<MMXMODEI>3):
Macroize from existing patterns; use ix86_binary_operator_ok.
(mmx_packsswb, mmx_packssdw, mmx_packuswb): Add memory alternative.
(mmx_punpckhbw, mmx_punpcklbw, mmx_punpckhwd, mmx_punpcklwd,
mmx_punpckhdq, mmx_punpckhdq, mmx_punpckldq): Likewise. Model
with vec_select+vec_concat.
(mmx_pshufw, mmx_pshufw_1): Likewise.
(mmx_uavgv8qi3): Merge pavgusb. Model correcty.
(mmx_uavgv4hi3): Model correctly.
* config/i386/mmintrin.h (_mm_and_si64, _mm_andnot_si64, _mm_or_si64,
_mm_xor_si64): Remove casts.
From-SVN: r93107
Zdenek Dvorak [Sun, 9 Jan 2005 08:22:10 +0000 (09:22 +0100)]
re PR tree-optimization/19224 (Endless loop compiling simple file: Bug in tree-scalar-evolution.c (instantiate_parameters_1)?)
PR tree-optimization/19224
* tree-scalar-evolution.c (get_instantiated_value,
set_instantiated_value): New functions.
(instantiate_parameters_1): Cache the results.
(instantiate_parameters, resolve_mixers): Initialize and free
the cache.
From-SVN: r93106
David Edelsohn [Sun, 9 Jan 2005 01:28:04 +0000 (01:28 +0000)]
i386.md (addhi_4): Correct reference in comment.
* config/i386/i386.md (addhi_4): Correct reference in comment.
(addqi_4): Same.
From-SVN: r93102
Richard Henderson [Sun, 9 Jan 2005 00:51:31 +0000 (16:51 -0800)]
emmintrin.h (_mm_cvtsi128_si32): Move earlier.
* config/i386/emmintrin.h (_mm_cvtsi128_si32): Move earlier.
(_mm_cvtsi128_si64x): Likewise.
(_mm_srl_epi64, _mm_srl_epi32, _mm_srl_epi16, _mm_sra_epi32,
_mm_sra_epi16, _mm_sll_epi64, _mm_sll_epi32, _mm_sll_epi16): Use
the _mm_{srl,sll}i_foo counterpart, and _mm_cvtsi128_si32.
* config/i386/i386-modes.def: Add V16HI, V32QI, V4DF, V8SF.
* config/i386/i386-protos.h: Update.
* config/i386/i386.c (print_operand): Add 'H'.
(ix86_fixup_binary_operands): Split out from ...
(ix86_expand_binary_operator): ... here.
(ix86_fixup_binary_operands_no_copy): New.
(ix86_expand_fp_absneg_operator): Handle vector mode results.
(bdesc_2arg): Update names for sse{,2,3}_ prefixes.
(ix86_init_mmx_sse_builtins): Remove *maskncmp* special cases.
(safe_vector_operand): Use CONST0_RTX.
(ix86_expand_binop_builtin): Use ix86_fixup_binary_operands.
(ix86_expand_builtin): Merge CODE_FOR_sse2_maskmovdqu_rex64 and
CODE_FOR_sse2_maskmovdqu. Special case SSE version of MASKMOVDQU
expansion. Update names for sse{,2,3}_ prefixes. Remove *maskncmp*
special cases.
* config/i386/i386.h (IX86_BUILTIN_CMPNGTSS): New.
(IX86_BUILTIN_CMPNGESS): New.
* config/i386/i386.md (UNSPEC_FIX_NOTRUNC): New.
(attr type): Add sselog1.
(attr unit, attr memory): Handle it.
(movti, movti_internal, movti_rex64): Move near other integer moves.
(movtf, movtf_internal): Move near other fp moves.
(SSEMODE, SSEMODEI, vec_setv2df, vec_extractv2df, vec_initv2df,
vec_setv4sf, vec_extractv4sf, vec_initv4sf, movv4sf, movv4sf_internal,
movv2df, movv2df_internal, mov<SSEMODEI>, mov<SSEMODEI>_internal,
movmisalign<SSEMODE>, sse_movups_1, sse_movmskps, sse_movntv4sf,
sse_movhlps, sse_movlhps, sse_storehps, sse_loadhps, sse_storelps,
sse_loadlps, sse_loadss, sse_loadss_1, sse_movss, sse_storess,
sse_shufps, addv4sf3, vmaddv4sf3, subv4sf3, vmsubv4sf3, negv4sf2,
mulv4sf3, vmmulv4sf3, divv4sf3, vmdivv4sf3, rcpv4sf2, vmrcpv4sf2,
rsqrtv4sf2, vmrsqrtv4sf2, sqrtv4sf2, vmsqrtv4sf2, sse_andv4sf3,
sse_nandv4sf3, sse_iorv4sf3, sse_xorv4sf3, sse2_andv2df3,
sse2_nandv2df3, sse2_iorv2df3, sse2_xorv2df3, sse2_andv2di3,
sse2_nandv2di3, sse2_iorv2di3, sse2_xorv2di3, maskcmpv4sf3,
vmmaskcmpv4sf3, sse_comi, sse_ucomi, sse_unpckhps, sse_unpcklps,
smaxv4sf3, vmsmaxv4sf3, sminv4sf3, vmsminv4sf3, cvtpi2ps, cvtps2pi,
cvttps2pi, cvtsi2ss, cvtsi2ssq, cvtss2si, cvtss2siq, cvttss2si,
cvttss2siq, addv2df3, vmaddv2df3, subv2df3, vmsubv2df3, mulv2df3,
vmmulv2df3, divv2df3, vmdivv2df3, smaxv2df3, vmsmaxv2df3, sminv2df3,
vmsminv2df3, sqrtv2df2, vmsqrtv2df2, maskcmpv2df3, vmmaskcmpv2df3,
sse2_comi, sse2_ucomi, sse2_movmskpd, sse2_pmovmskb, sse2_maskmovdqu,
sse2_maskmovdqu_rex64, sse2_movntv2df, sse2_movntv2di, sse2_movntsi,
cvtdq2ps, cvtps2dq, cvttps2dq, cvtdq2pd, cvtpd2dq, cvttpd2dq,
cvtpd2pi, cvttpd2pi, cvtpi2pd, cvtsd2si, cvtsd2siq, cvttsd2si,
cvttsd2siq, cvtsi2sd, cvtsi2sdq, cvtsd2ss, cvtss2sd, cvtpd2ps,
cvtps2pd, addv16qi3, addv8hi3, addv4si3, addv2di3, ssaddv16qi3,
ssaddv8hi3, usaddv16qi3, usaddv8hi3, subv16qi3, subv8hi3, subv4si3,
subv2di3, sssubv16qi3, sssubv8hi3, ussubv16qi3, ussubv8hi3, mulv8hi3,
smulv8hi3_highpart, umulv8hi3_highpart, sse2_umulsidi3,
sse2_umulv2siv2di3, sse2_pmaddwd, sse2_uavgv16qi3, sse2_uavgv8hi3,
sse2_psadbw, sse2_pinsrw, sse2_pextrw, sse2_pshufd, sse2_pshuflw,
sse2_pshufhw, eqv16qi3, eqv8hi3, eqv4si3, gtv16qi3, gtv8hi3,
gtv4si3, umaxv16qi3, smaxv8hi3, uminv16qi3, sminv8hi3, ashrv8hi3,
ashrv4si3, lshrv8hi3, lshrv4si3, lshrv2di3, ashlv8hi3, ashlv4si3,
ashlv2di3, sse2_ashlti3, sse2_lshrti3, sse2_unpckhpd, sse2_unpcklpd,
sse2_packsswb, sse2_packssdw, sse2_packuswb, sse2_punpckhbw,
sse2_punpckhwd, sse2_punpckhdq, sse2_punpcklbw, sse2_punpcklwd,
sse2_punpckldq, sse2_punpcklqdq, sse2_punpckhqdq, sse2_movupd,
sse2_movdqu, sse2_movdq2q, sse2_movdq2q_rex64, sse2_movq2dq,
sse2_movq2dq_rex64, sse2_loadd, sse2_stored, sse2_storehpd,
sse2_loadhpd, sse2_storelpd, sse2_loadlpd, sse2_movsd, sse2_loadsd,
sse2_loadsd_1, sse2_storesd, sse2_shufpd, sse2_clflush, sse2_mfence,
mfence_insn, sse2_lfence, lfence_insn, mwait, monitor, addsubv4sf3,
addsubv2df3, haddv4sf3, haddv2df3, hsubv4sf3, hsubv2df3, movshdup,
movsldup, lddqu, loadddup, movddup): Move to sse.md. Any with
non-optabs meanings renamed with an "sse{,2,3}_" prefix at the
same time.
(SSEPUSH, push<SSEPUSH>): Remove.
(MMXPUSH, push<MMXPUSH>): Remove.
(sse_movaps, sse_movaps_1, sse_movups): Remove.
(sse2_movapd, sse2_movdqa, sse2_movq): Remove.
(sse2_andti3, sse2_nandti3, sse2_iorti3, sse2_xorti3): Remove.
(sse_clrv4sf, sse_clrv2df, sse2_clrti): Remove.
(maskncmpv4sf3, vmmaskncmpv4sf3): Remove.
(maskncmpv2df3, vmmaskncmpv2df3): Remove.
(ashrv8hi3_ti, ashrv4si3_ti, lshrv8hi3_ti, lshrv4si3_ti): Remove.
(lshrv2di3_ti, ashlv8hi3_ti, ashlv4si3_ti, ashlv2di3_ti): Remove.
* config/i386/athlon.md (athlon_sselog_load): Handle sselog1.
(athlon_sselog_load_k8, athlon_sselog, athlon_sselog_k8): Likewise.
* config/i386/ppro.md (ppro_sse_div_V4SF_load): Fix memory attr.
(ppro_sse_log_V4SF_load): Similarly. Handle sselog1.
(ppro_sse_log_V4SF): Handle sselog1.
* config/i386/predicates.md (const_0_to_1_operand): New.
(const_0_to_255_mul_8_operand): New.
(const_1_to_31_operand): Rename from const_int_1_31_operand.
(const_2_to_3_operand, const_4_to_7_operand): New.
* config/i386/sse.md: New file.
(SSEMODE12, SSEMODE24, SSEMODE124, SSEMODE248, ssevecsize): New.
(sse_movups): Rename from sse_movups_1.
(sse_loadlss): Rename from sse_loadss_1.
(andv4sf3, iorv4sf3, xorv4sf3, andv2df3): Remove the sse prefix
from the name.
(negv4sf2): Use ix86_expand_fp_absneg_operator.
(absv4sf2, negv2df, absv2df): New.
(addv4sf3): Add expander to call ix86_fixup_binary_operands_no_copy.
(subv4sf3, mulv4sf3, divv4sf3, smaxv4sf3, sminv4sf3, andv4sf3,
iorv4sf3, xorv4sf3, addv2df3, subv2df3, mulv2df3, divv2df3,
smaxv2df3, sminv2df3, andv2df3, iorv2df3, xorv2df3, mulv8hi3,
umaxv16qi3, smaxv8hi3, uminv16qi3, sminv8hi3): Likewise.
(sse3_addsubv4sf3): Model correctly.
sse3_haddv4sf3, sse3_hsubv4sf3, sse3_addsubv2df3, sse3_haddv2df3,
sse3_hsubv2df3, sse2_ashlti3, sse2_lshrti3): Likewise.
(sse_movhlps): Model with vec_select+vec_concat.
(sse_movlhps, sse_unpckhps, sse_unpcklps, sse3_movshdup,
sse3_movsldup, sse_shufps, sse_shufps_1, sse2_unpckhpd, sse3_movddup,
sse2_unpcklpd, sse2_shufpd, sse2_shufpd_1, sse2_punpckhbw,
sse2_punpcklbw, sse2_punpckhwd, sse2_punpcklwd, sse2_punpckhdq,
sse2_punpckldq, sse2_punpckhqdq, sse2_punpcklqdq, sse2_pshufd,
sse2_pshufd_1, sse2_pshuflw, sse2_pshuflw_1, sse2_pshufhw,
sse2_pshufhw_1): Likewise.
(neg<SSEMODEI>2, one_cmpl<SSEMODEI>2): New.
(add<SSEMODEI>3, sse2_ssadd<SSEMODE12>3, sse2_usadd<SSEMODE12>3,
sub<SSEMODEI>3, sse2_sssub<SSEMODE12>3, sse2_ussub<SSEMODE12>3,
ashr<SSEMODE24>3, lshr<SSEMODE248>3, sse2_eq<SSEMODE124>3,
sse2_gt<SSEMODDE124>3, and<SSEMODEI>3, sse_nand<SSEMODEI>3,
ior<SSEMODEI>3, xor<SSEMODEI>3): Macroize from existing patterns.
(addv4sf3, sse_vmaddv4sf3, mulv4sf3, sse_vmmulv4sf3, smaxv4sf3,
sse_vmsmaxv4sf3, sminv4sf3, sse_vmsminv4sf3, addv2df3, sse2_vmaddv2df3,
mulv2df3, sse2_vmmulv2df3, smaxv2df3, sse2_vmsmaxv2df3, sminv2df3,
sse2_vmsminv2df3, umaxv16qi3, smaxv8hi3, uminv16qi3
sminv8hi3): Mark commutative
operands. Use ix86_binary_operator_ok.
(sse_unpckhps, sse_unpcklps, sse2_packsswb, sse2_packssdw,
sse2_packuswb, sse2_punpckhbw, sse2_punpcklbw, sse2_punpckhwd,
sse2_punpcklwd, sse2_punpckhdq, sse2_punpckldq, sse2_punpckhqdq,
sse2_punpcklqdq): Allow operand2 in memory.
(sse_movhlps, sse_movlhps, sse2_unpckhpd, sse2_unpcklpd
sse2_movsd): Add memory alternatives.
(sse_storelps): Turn expander into an insn; split after reload.
(sse_storess, sse2_loadhpd, sse2_loadlpd): Add non-xmm inputs.
(sse2_storehpd, sse2_storelpd): Add non-xmm outputs.
From-SVN: r93101
GCC Administrator [Sun, 9 Jan 2005 00:16:24 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r93098
Tobias Schlüter [Sat, 8 Jan 2005 23:16:18 +0000 (00:16 +0100)]
Fix typo
From-SVN: r93095
Eric Botcazou [Sat, 8 Jan 2005 23:14:06 +0000 (00:14 +0100)]
configure.ac (DWARF-2 debug_line): Use objdump.
* configure.ac (DWARF-2 debug_line): Use objdump.
* configure: Regenerate.
From-SVN: r93094
Tobias Schlüter [Sat, 8 Jan 2005 22:40:47 +0000 (23:40 +0100)]
arith.c (arctangent2, [...]): Fix whitespace issues.
* arith.c (arctangent2, gfc_arith_init_1, gfc_arith_done_1,
gfc_constant_result, gfc_range_check, gfc_arith_power,
eval_type_intrinsic0, eval_intrinsic_f2, gfc_real2real,
gfc_real2complex, gfc_complex2int, gfc_complex2real,
gfc_complex2complex): Fix whitespace issues.
check.c (must_be, type_check, numeric_check, int_or_real_check,
logical_array_check, array_check, scalar_check, nonoptional_check,
variable_check, dim_check, check_a_kind, gfc_check_a_ikind,
gfc_check_a_xkind, gfc_check_abs, gfc_check_all_any,
gfc_check_allocated, gfc_check_a_p, gfc_check_besn,
gfc_check_btest, gfc_check_char, gfc_check_cmplx, gfc_check_count,
gfc_check_cshift, gfc_check_dcmplx, gfc_check_dble,
gfc_check_digits, gfc_check_dot_product, gfc_check_eoshift,
gfc_check_fnum, gfc_check_g77_math1, gfc_check_huge, gfc_check_i,
gfc_check_iand, gfc_check_ibclr, gfc_check_ibits, gfc_check_ibset,
gfc_check_idnint, gfc_check_ieor, gfc_check_index, gfc_check_int,
gfc_check_ior, gfc_check_ishft, gfc_check_ishftc, gfc_check_kind,
gfc_check_lbound, gfc_check_logical, min_max_args,
gfc_check_min_max_integer, gfc_check_min_max_real,
gfc_check_min_max_double, gfc_check_matmul,
gfc_check_minval_maxval, gfc_check_merge, gfc_check_nearest,
gfc_check_pack, gfc_check_precision, gfc_check_radix,
gfc_check_range, gfc_check_real, gfc_check_repeat,
gfc_check_scale, gfc_check_scan, gfc_check_selected_real_kind,
gfc_check_set_exponent): Fix formatting issues.
(gfc_check_size, gfc_check_sign): Alphabetize function order,
remove whitespace-only line.
(gfc_check_fstat, gfc_check_fstat_sub, gfc_check_stat,
gfc_check_stat_sub, gfc_check_transfer, gfc_check_transpose,
gfc_check_ubound, gfc_check_unpack, gfc_check_verify, gfc_check_x,
gfc_check_cpu_time, gfc_check_date_and_time, gfc_check_mvbits,
gfc_check_random_number, gfc_check_random_seed,
gfc_check_second_sub, gfc_check_system_clock,
gfc_check_getcwd_sub, gfc_check_exit, gfc_check_flush,
gfc_check_umask, gfc_check_umask_sub, gfc_check_unlink,
gfc_check_unlink_sub): Fix formatting issues.
From-SVN: r93093
Tobias Schlüter [Sat, 8 Jan 2005 21:47:36 +0000 (22:47 +0100)]
trans-intrinsic.c (gfc_get_intrinsic_lib_fndecl, [...]): Remove trailing whitespace.
* trans-intrinsic.c (gfc_get_intrinsic_lib_fndecl,
gfc_conv_intrinsic_bound, gfc_conv_intrinsic_minmaxloc,
gfc_conv_intrinsic_ishft, gfc_conv_intrinsic_len): Remove
trailing whitespace.
(prepare_arg_info): Fix formatting, indenting and remove trailing
whitespace.
(gfc_conv_intrinsic_spacing, gfc_conv_intrinsic_trim): Remove
trailing whitespace.
From-SVN: r93092
Tobias Schlüter [Sat, 8 Jan 2005 20:18:53 +0000 (21:18 +0100)]
* trans-const.c: Don't include unused math.h.
From-SVN: r93090
Diego Novillo [Sat, 8 Jan 2005 18:32:48 +0000 (13:32 -0500)]
Fix botched ChangeLog entries in previous commit.
From-SVN: r93089
Diego Novillo [Sat, 8 Jan 2005 18:31:39 +0000 (13:31 -0500)]
[multiple changes]
2005-01-08 Jeff Law <law@redhat.com>
Diego Novillo <dnovillo@redhat.com>
* tree-nrv.c (tree_nrv): Ignore volatile return values.
* tree-ssa-dse.c (dse_optimize_stmt): Do not optimize
statements with volatile operands.
* tree-ssa-operands.c (add_stmt_operand): Do add volatile
operands after marking a statement with has_volatile_ops.
testsuite/ChangeLog:
2005-01-08 Diego Novillo <dnovillo@redhat.com>
* gcc.dg/pr18241-1.c: New test.
* gcc.dg/pr18241-2.c: New test.
* gcc.dg/pr18241-3.c: New test.
* gcc.dg/pr18241-4.c: New test.
* gcc.dg/pr18241-5.c: New test.
From-SVN: r93088
Steven G. Kargl [Sat, 8 Jan 2005 17:31:40 +0000 (18:31 +0100)]
select_2.f90, [...]: New.
* gfortran.dg/select_2.f90, gfortran.dg/select_3.f90,
gfortran.dg/select_4.f90: New.
From-SVN: r93087
Roger Sayle [Sat, 8 Jan 2005 16:13:22 +0000 (16:13 +0000)]
tree.c (int_fits_type_p): Always honor integer constant TYPE_MIN_VALUE and TYPE_MAX_VALUE if they exist.
* tree.c (int_fits_type_p): Always honor integer constant
TYPE_MIN_VALUE and TYPE_MAX_VALUE if they exist.
From-SVN: r93086
Roger Sayle [Sat, 8 Jan 2005 14:47:56 +0000 (14:47 +0000)]
ifcvt.c (find_if_case_1): Reinstate 2005-01-04 change...
* ifcvt.c (find_if_case_1): Reinstate 2005-01-04 change, now that
the latent bug in rtl_delete_block has been resolved.
From-SVN: r93085
Tobias Schlüter [Sat, 8 Jan 2005 13:35:18 +0000 (14:35 +0100)]
gfortran.h: Remove outdated comment.
* gfortran.h: Remove outdated comment. Don't include stdio.h
explicitly.
From-SVN: r93082
Richard Sandiford [Sat, 8 Jan 2005 11:59:25 +0000 (11:59 +0000)]
t-iris6 (MULTILIB_DIRNAMES): Use -mabi argument values.
* config/mips/t-iris6 (MULTILIB_DIRNAMES): Use -mabi argument values.
(MULTILIB_OSDIRNAMES): Use the standard lib, lib32 and lib64.
From-SVN: r93081
Richard Sandiford [Sat, 8 Jan 2005 11:45:54 +0000 (11:45 +0000)]
t-slibgcc-irix (SHLIB_LINK): Install a copy of the library as @multilib_dir@/$(SHLIB_SONAME).
* config/mips/t-slibgcc-irix (SHLIB_LINK): Install a copy of the
library as @multilib_dir@/$(SHLIB_SONAME).
From-SVN: r93080
Eric Botcazou [Sat, 8 Jan 2005 01:17:47 +0000 (02:17 +0100)]
configure.ac (HAVE_AS_OFFSETABLE_LO10): Fix typo.
* configure.ac (HAVE_AS_OFFSETABLE_LO10): Fix typo.
* configure: Regenerate.
From-SVN: r93075
GCC Administrator [Sat, 8 Jan 2005 00:16:36 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r93072
Tom Tromey [Fri, 7 Jan 2005 22:15:46 +0000 (22:15 +0000)]
* java/lang/ClassLoader.java (findClass): Fixed documentation.
From-SVN: r93069
Jakub Jelinek [Fri, 7 Jan 2005 20:05:14 +0000 (21:05 +0100)]
c-common.c (handle_mode_attribute): For ENUMERAL_TYPE, also copy TYPE_MODE.
* c-common.c (handle_mode_attribute): For ENUMERAL_TYPE, also copy
TYPE_MODE.
* gcc.c-torture/execute/
20050107-1.c: New test.
From-SVN: r93066
Benjamin Kosnik [Fri, 7 Jan 2005 19:34:46 +0000 (19:34 +0000)]
acinclude.m4: Remove CCODECVT_H.
2005-01-07 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4: Remove CCODECVT_H.
* configure: Regenerate.
* include/Makefile.am (host_headers_extra): Move to...
(ext_headers): ...here.
* include/Makefile.in: Regenerate.
* include/ext/enc_filebuf: Remove enc_filebuf, consolidate
enc_traits to...
* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Move...
* include/ext/codecvt_specializations.h: ...here. Remove
_GLIBCXX_USE___ENC_TRAITS.
(__enc_traits): To __encoding_state, put in __gnu_cxx namespace.
(enc_char_traits): To __encoding_char_traits, put in __gnu_cxx
namespace.
* config/locale/generic/codecvt_specializations.h: Remove.
* include/bits/codecvt.h: Remove codecvt_specializations.h include.
* src/codecvt.cc: Remove __enc_traits::_S_max_size.
From-SVN: r93062
Nathan Sidwell [Fri, 7 Jan 2005 17:09:15 +0000 (17:09 +0000)]
re PR c++/19298 (dependent type (references) and calling a function method)
cp:
PR c++/19298
* pt.c (tsubst_qualified_id): Call convert_from_reference.
testsuite:
PR c++/19298
* g++.dg/template/ref2.C: New.
From-SVN: r93055
Andrew Pinski [Fri, 7 Jan 2005 15:52:02 +0000 (15:52 +0000)]
pr17529.c (y): Change size of array to 1 instead of being empty.
2005-01-07 Andrew Pinski <pinskia@physics.uc.edu>
* gcc.c-torture/compile/pr17529.c (y): Change size of array to 1
instead of being empty.
From-SVN: r93053
David Edelsohn [Fri, 7 Jan 2005 15:30:13 +0000 (15:30 +0000)]
re PR rtl-optimization/13674 (ICE in reload_cse_simplify_operands, at postreload.c:378 on PPC64)
PR target/13674
* config/rs6000/rs6000.c (rs6000_legitimize_reload_address):
Convert non-word aligned offset address using ld/std into
indirect address.
From-SVN: r93052
Richard Henderson [Fri, 7 Jan 2005 14:29:44 +0000 (06:29 -0800)]
* config/i386/i386.md (sse_loadhps splitter): Fix operand number typo.
From-SVN: r93051
Tobias Schlüter [Fri, 7 Jan 2005 11:56:11 +0000 (12:56 +0100)]
re PR fortran/15553 (Array copy operation produces garbage)
PR fortran/15553
* gfortran.dg/array-1.f90: New test.
From-SVN: r93049
Michael Koch [Fri, 7 Jan 2005 11:32:07 +0000 (11:32 +0000)]
re PR libgcj/18115 (JNI nio buffer functions only work with byte buffers)
2005-01-07 Michael Koch <konqueror@gmx.de>
PR libgcj/18115
* java/nio/Buffer.java (address): New field.
* java/nio/DirectByteBufferImpl.java (address): Removed.
* java/nio/MappedByteBufferImpl.java (address): Likewise.
* java/nio/CharViewBufferImpl.java (CharViewBufferImpl):
Explicitly initialize Buffer.address if needed.
* java/nio/DoubleViewBufferImpl.java (DoubleViewBufferImpl): Likewise.
* java/nio/FloatViewBufferImpl.java (FloatViewBufferImpl): Likewise.
* java/nio/IntViewBufferImpl.java (IntViewBufferImpl): Likewise.
* java/nio/LongViewBufferImpl.java (LongViewBufferImpl): Likewise.
* java/nio/ShortViewBufferImpl.java (ShortViewBufferImpl): Likewise.
* jni.cc (_Jv_JNI_GetDirectBufferAddress): Don't assume buffer is a
DirectByteBufferImpl object.
(_Jv_JNI_GetDirectBufferCapacity): Likewise.
* testsuite/libjava.jni/directbuffer.c,
testsuite/libjava.jni/directbuffer.java,
testsuite/libjava.jni/directbuffer.out,
testsuite/libjava.jni/bytebuffer.c,
testsuite/libjava.jni/bytebuffer.java,
testsuite/libjava.jni/bytebuffer.out: New files.
From-SVN: r93046
Richard Sandiford [Fri, 7 Jan 2005 09:24:49 +0000 (09:24 +0000)]
* tree.h (IS_EXPR_CODE_CLASS): Use a straight-forward range check.
From-SVN: r93044
Jakub Jelinek [Fri, 7 Jan 2005 09:08:10 +0000 (10:08 +0100)]
re PR tree-optimization/19283 (Bad code generated in final_cleanup)
PR tree-optimization/19283
* fold-const.c (fold_widened_comparison): Return NULL if shorter_type
is not shorter than the original type.
* gcc.c-torture/execute/
20050106-1.c: New test.
From-SVN: r93043
Jakub Jelinek [Fri, 7 Jan 2005 09:05:46 +0000 (10:05 +0100)]
re PR target/19012 (ICE on testsuite/gcc.c-torture/execute/930208-1.c with -fpack-struct -Os)
PR rtl-optimization/19012
* config/i386/i386.md (addqi_1_slp): Set memory attribute.
From-SVN: r93042
Jakub Jelinek [Fri, 7 Jan 2005 09:04:01 +0000 (10:04 +0100)]
re PR rtl-optimization/18861 (ICE Segmentation fault in try_crossjump_to_edge at ../../gcc/gcc/cfgcleanup.c:1637 with two switches (table jumps))
PR rtl-optimization/18861
* cfgbuild.c (BLOCK_USED_BY_TABLEJUMP): Define.
(FULL_STATE): Define.
(mark_tablejump_edge): New function.
(purge_dead_tablejump_edges): New function.
(find_bb_boundaries): Use it.
* gcc.dg/
20050105-1.c: New test.
From-SVN: r93041
Jakub Jelinek [Fri, 7 Jan 2005 09:01:00 +0000 (10:01 +0100)]
re PR tree-optimization/18828 (Extraneous warning with var_start and optimization)
PR tree-optimization/18828
* builtins.c (expand_builtin_next_arg): Remove argument and all
the argument checking.
(expand_builtin): Adjust caller.
(expand_builtin_va_start): Likewise. Remove error for too many
arguments.
(fold_builtin_next_arg): Issue error for too many arguments.
After checking arguments, replace them with magic arguments that
prevent further checking of the args.
* gcc.dg/
20050105-2.c: New test.
From-SVN: r93040
Andreas Jaeger [Fri, 7 Jan 2005 06:49:02 +0000 (07:49 +0100)]
* gcc.dg/i386-local.c: Handle -m32/-m64 runs correctly.
From-SVN: r93039
Bud Davis [Fri, 7 Jan 2005 03:25:47 +0000 (03:25 +0000)]
re PR libfortran/18398 (Formatted I/O problems)
2005-01-07 Bud Davis <bdavis9659@comcast.net>
PR fortran/18398
* transfer.c (next_record_r): always skip the
eol search if it was found during sf_read.
* gfortran.dg/fmt_read.f90: New test.
From-SVN: r93035
John David Anglin [Fri, 7 Jan 2005 01:11:57 +0000 (01:11 +0000)]
* pa64-hpux.h (STARTFILE_SPEC): Fix typo in spec.
From-SVN: r93024
Roger Sayle [Fri, 7 Jan 2005 01:05:37 +0000 (01:05 +0000)]
re PR target/6077 ([alpha-osf].s with -x assembler-with-cpp breaks mips-tfile)
PR target/6077
* gcc.c (input_suffix_matches): Tweak the semantics of %{.s:...}
and %{.S:...} (and their negative variants) to test whether the
input file is assembler or pre-processed-assembler independent of
the actual filename extension.
From-SVN: r93023
Roger Sayle [Fri, 7 Jan 2005 00:47:13 +0000 (00:47 +0000)]
simplify-rtx.c (simplify_subreg): Simplify truncations of shifts of sign or zero extended values.
* simplify-rtx.c (simplify_subreg): Simplify truncations of shifts
of sign or zero extended values.
From-SVN: r93022
Geoffrey Keating [Fri, 7 Jan 2005 00:19:23 +0000 (00:19 +0000)]
c-cppbuiltin.c (builtin_define_float_constants): Set __*_EPSILON__ for IBM long double format correctly.
* c-cppbuiltin.c (builtin_define_float_constants): Set __*_EPSILON__
for IBM long double format correctly.
From-SVN: r93021
GCC Administrator [Fri, 7 Jan 2005 00:16:18 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r93018
Daniel Berlin [Thu, 6 Jan 2005 22:08:27 +0000 (22:08 +0000)]
re PR tree-optimization/18792 (ICE with -O1 -ftree-loop-linear on small test case)
2005-01-06 Daniel Berlin <dberlin@dberlin.org>
Fix PR tree-optimization/18792
* tree-data-ref.c (build_classic_dist_vector): Change first_loop
to first_loop_depth, and use loop depth instead of loop number.
(build_classic_dir_vector): Ditto.
(compute_data_dependences_for_loop): Use depth, not loop number.
* tree-loop-linear.c (try_interchange_loops): Use loop depth, not loop
number. Pass in loops, instead of loop numbers.
(gather_interchange_stats): Ditto.
(linear_transform_loops): Ditto.
From-SVN: r93008
Benjamin Kosnik [Thu, 6 Jan 2005 20:40:25 +0000 (20:40 +0000)]
fstream.tcc: Remove unnecessary qualifications for uglified data members of basic_filebuf...
2005-01-06 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/fstream.tcc: Remove unnecessary qualifications for
uglified data members of basic_filebuf, including _M_buf,
_M_buf_size, _M_mode, _M_pback_init.
* include/std/std_fstream.h: Same.
From-SVN: r93006
Mark Mitchell [Thu, 6 Jan 2005 20:23:38 +0000 (20:23 +0000)]
Update copyright dateas
From-SVN: r93005
Mark Mitchell [Thu, 6 Jan 2005 20:21:13 +0000 (20:21 +0000)]
re PR c++/19244 (Typedef of anonymous class incorrectly handled in member function definition)
PR c++/19244
* class.c (add_implicitly_declared_members): Remove dead code.
* decl.c (grokfndecl): Add sfk parameter. Use it do set
DECL_CONSTRUCTOR_P.
(grokdeclarator): Adjust calls to grokfndecl.
* method.c (implicitly_declare_fn): Improve documentation.
* parser.c (cp_parser_direct_declarator): Do not consider a
function to be a constructor if the containing class was
originally anonymous.
PR c++/19244
* g++.dg/parser/ctor2.C: New test.
From-SVN: r93004
Richard Sandiford [Thu, 6 Jan 2005 19:10:56 +0000 (19:10 +0000)]
re PR rtl-optimization/13299 (Unsafe treatment of extended givs)
PR rtl-opt/13299
* loop.c (get_monotonic_increment, biased_biv_fits_mode_p,
biv_fits_mode_p, extension_within_bounds_p): New functions.
(check_ext_dependent_givs): Use them.
From-SVN: r93000
Roger Sayle [Thu, 6 Jan 2005 18:05:27 +0000 (18:05 +0000)]
cfgrtl.c (rtl_delete_block): A basic block may be followed by more than one barrier...
* cfgrtl.c (rtl_delete_block): A basic block may be followed by
more than one barrier, in which case we should delete them all.
From-SVN: r92996
Tobias Schlüter [Thu, 6 Jan 2005 16:41:36 +0000 (17:41 +0100)]
gcc.c (process_command): Change year in 'gcc --version' to 2005.
* gcc.c (process_command): Change year in 'gcc --version' to 2005.
fortran/
* gfortranspec.c (lang_specific_driver): Change year to 2005 in
output of 'gfortran --version'.
From-SVN: r92995
Kriang Lerdsuwanakij [Thu, 6 Jan 2005 16:04:05 +0000 (16:04 +0000)]
re PR c++/17154 (Using declaration of function name ignored inside partial specialization of template class)
PR c++/17154
* search.c (lookup_field_1): Handle using declaration in
class template partial specialization.
* g++.dg/template/using9.C: New test.
From-SVN: r92994
Kriang Lerdsuwanakij [Thu, 6 Jan 2005 15:41:34 +0000 (15:41 +0000)]
re PR c++/19258 (Incorrect access check for default argument)
PR c++/19258
* pt.c (push_access_scope): Handle friend defined in class.
(pop_access_scope): Likewise.
* g++.dg/lookup/friend6.C: New test.
From-SVN: r92993
Nathan Sidwell [Thu, 6 Jan 2005 15:22:11 +0000 (15:22 +0000)]
re PR c++/19270 (ice on valid template code)
cp:
PR c++/19270
* pt.c (tsubst_copy) <ARRAY_REF case>: Handle separately.
(tsubst_copy_and_build) <ARRAY_REF case>: Remove obsolete
array-new handling code. Use build_x_binary_op.
testsuite:
PR c++/19270
* g++.dg/template/array10.C: New.
From-SVN: r92992
Daniel Berlin [Thu, 6 Jan 2005 14:49:34 +0000 (14:49 +0000)]
Fix PR middle-end/19286 Fix PR debug/19267
2005-01-05 Daniel Berlin <dberlin@dberlin.org>
Fix PR middle-end/19286
Fix PR debug/19267
* dwarf2out.c (gen_subprogram_die): If we've already tried to
output this subprogram, simply ignore this attempt to do it again.
(add_abstract_origin_attribute): Don't abort trying to add the abstract
origin attribute if it's not possible.
(gen_block_die): Don't ignore subblocks of "unused" blocks.
(decls_for_scope): Ditto.
* gimple-low.c (mark_blocks_with_used_subblocks): Remove.
(mark_used_blocks): Don't call mark_blocks_with_used_subblocks.
From-SVN: r92991
Benjamin Kosnik [Thu, 6 Jan 2005 07:08:48 +0000 (07:08 +0000)]
2005-01-05 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/testsuite_hooks.h:
(copy_constructor::mark_call): Use __throw_runtime_error.
(assignment_operator::mark_call): Same.
* testsuite/testsuite_hooks.cc (verify_demangle): Same.
(locale_data): Remove, just use runtime_error directly.
(environment_variable): Same.
(not_found): Same.
(run_tests_wrapped_locale): Use __throw_runtime_error.
(run_tests_wrapped_env): Same.
(semaphore::semaphore): Same.
(semaphore::signal): Same.
(semaphore::wait): Same.
* testsuite/testsuite_abi.h (symbol_error): Remove, use logic_error.
* testsuite/testsuite_abi.cc (get_symbol): Use __throw_logic_error.
(create_symbols): Use __throw_runtime_error.
* src/bitmap_allocator.cc: Use __throw_bad_alloc.
From-SVN: r92989
Richard Henderson [Thu, 6 Jan 2005 06:22:32 +0000 (22:22 -0800)]
re PR rtl-optimization/11327 (Non-optimal code when using MMX/SSE builtins)
PR target/11327
* config/i386/i386.c (BUILTIN_DESC_SWAP_OPERANDS): New.
(bdesc_2arg): Use it.
(ix86_expand_binop_builtin): Force operands into registers
when optimizing.
(ix86_expand_unop_builtin, ix86_expand_unop1_builtin,
ix86_expand_sse_compare, ix86_expand_sse_comi,
ix86_expand_builtin): Likewise.
From-SVN: r92988
Richard Henderson [Thu, 6 Jan 2005 06:18:15 +0000 (22:18 -0800)]
ia64.c (rtx_needs_barrier): Handle CONST_VECTOR and VEC_SELECT.
* config/ia64/ia64.c (rtx_needs_barrier): Handle CONST_VECTOR
and VEC_SELECT.
* config/ia64/vect.md (mulv8qi3): Re-implement with mix_[rl].
(mulv4hi3): Set itanium_class mmmul.
(fpack_sfxf, fpack_xfsf, fpack_xfxf): Remove.
From-SVN: r92987
Richard Henderson [Thu, 6 Jan 2005 04:09:34 +0000 (20:09 -0800)]
Update copyright.
From-SVN: r92985
Richard Henderson [Thu, 6 Jan 2005 04:09:11 +0000 (20:09 -0800)]
re PR rtl-optimization/10692 ([m68k] miscompilation of perl with -O2 -fPIC)
PR rtl-opt/10692
* reload1.c (do_input_reload): Restrict the optimization deleteing
a previous output reload to RELOAD_FOR_INPUT.
From-SVN: r92984
Kaveh R. Ghazi [Thu, 6 Jan 2005 02:32:57 +0000 (02:32 +0000)]
asm1.C, [...]: Bypass tests on x86 when using -fpic/-fPIC.
* g++.old-deja/g++.pt/asm1.C, g++.old-deja/g++.pt/asm2.C,
gcc.dg/
20011119-1.c: Bypass tests on x86 when using -fpic/-fPIC.
From-SVN: r92983
GCC Administrator [Thu, 6 Jan 2005 00:16:18 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r92980
Jakub Jelinek [Wed, 5 Jan 2005 23:44:11 +0000 (00:44 +0100)]
* gcc.c-torture/compile/
20050105-1.c: New test.
From-SVN: r92975
Steven Bosscher [Wed, 5 Jan 2005 23:19:23 +0000 (23:19 +0000)]
combine.c (expand_compound_operation): Add comment that we fall through after case.
* combine.c (expand_compound_operation) <ZERO_EXTRACT>: Add
comment that we fall through after case.
(mark_used_regs_combine): Don't expect a SIGN_EXTRACT in a SET_DEST.
(distribute_links): Likewise.
* cse.c (cse_insn): Likewise.
* cselib.c (cselib_invalidate_mem): Likewise.
* df.c: Update comments at the top of the file.
(read_modify_subreg_p): Update comments here too.
(df_def_record_1): Don't expect a SIGN_EXTRACT in a SET_DEST.
* flow.c (mark_set_1): Likewise.
(mark_used_regs): Likewise.
* gcse.c (mems_conflict_for_gcse_p): Likewise.
(canon_list_insert): Likewise.
(mark_set): Likewise.
(try_replace_reg): Likewise.
(store_killed_in_insn): Likewise.
* loop.c (count_one_set): Likewise.
(basic_induction_var): Likewise.
* postreload-gcse.c (find_mem_conflicts): Likewise.
* postreload.c (reload_combine_note_store): Likewise.
(move2add_note_store): Likewise.
* reload.c (find_equiv_reg): Likewise.
(mark_referenced_resources): Likewise.
* rtlanal.c (set_noop_p): Likewise.
(note_stores): Likewise.
(note_uses): Likewise.
* sched-deps.c (sched_analyze_1): Likewise.
* sched-rgn.c (check_live_1): Likewise.
(update_live_1): Likewise.
* config/i860/i860.c: Likewise.
* rtl.dec (SIGN_EXTRACT): Document that this cannot appear as
an lvalue.
(ZERO_EXTRACT): Mention that this one can be an lvalue.
* doc/rtl.texi: Update documentation for bit-fields and SET.
From-SVN: r92974
Geoffrey Keating [Wed, 5 Jan 2005 22:41:04 +0000 (22:41 +0000)]
* gcc.dg/darwin-weakimport-2.c: Remove stray 'APPLE LOCAL' marker.
From-SVN: r92973
Stan Shebs [Wed, 5 Jan 2005 21:53:25 +0000 (21:53 +0000)]
Fix an oopsie in the last commit, sorry
From-SVN: r92971
Roger Sayle [Wed, 5 Jan 2005 21:13:08 +0000 (21:13 +0000)]
* ifcvt.c (find_if_case_1): Revert 2005-01-04 change.
From-SVN: r92970
Tom Tromey [Wed, 5 Jan 2005 20:41:27 +0000 (20:41 +0000)]
ZipEntry.java (setCompressedSize): Allow any argument.
* java/util/zip/ZipEntry.java (setCompressedSize): Allow any
argument.
(compressedSize): Now 'long'. Default to -1.
(getCompressedSize): Rewrote.
* java/util/zip/DeflaterOutputStream.java (deflate): Don't
deflate at all if we need input.
From-SVN: r92969