platform/upstream/gcc.git
19 years agore PR tree-optimization/18179 (vectorizer: wrong alignment/step/initial-address compu...
Ira Rosen [Wed, 29 Dec 2004 13:16:07 +0000 (13:16 +0000)]
re PR tree-optimization/18179 (vectorizer: wrong alignment/step/initial-address computed for struct accesses)

2004-12-29  Ira Rosen  <irar@il.ibm.com>

        PR tree-optimization/18179
        * tree-vectorizer.h (struct _stmt_vec_info): Add new fields:
        initial_offset, step, misalignment and base_aligned_p and macros
        to access them.
        * tree-vectorizer.c (vect_analyze_offset_expr): New function.
        (new_stmt_vec_info): Initialize the new fields of stmt_vec_info.

        (vect_create_data_ref_ptr): Fix printings.

From-SVN: r92701

19 years agore PR tree-optimization/18179 (vectorizer: wrong alignment/step/initial-address compu...
Ira Rosen [Wed, 29 Dec 2004 13:11:58 +0000 (13:11 +0000)]
re PR tree-optimization/18179 (vectorizer: wrong alignment/step/initial-address computed for struct accesses)

2004-12-29  Ira Rosen  <irar@il.ibm.com>

        PR tree-optimization/18179
        * tree-vectorizer.c (vect_get_symbl_and_dr): Reorganize. Add memtag
        retrieval.
        (vect_analyze_data_refs): Remove memtag retrieval.

From-SVN: r92700

19 years agotype_traits: Add has_nothrow_constructor.
Paolo Carlini [Wed, 29 Dec 2004 12:11:27 +0000 (12:11 +0000)]
type_traits: Add has_nothrow_constructor.

2004-12-29  Paolo Carlini  <pcarlini@suse.de>

* include/tr1/type_traits: Add has_nothrow_constructor.
* testsuite/tr1/4_metaprogramming/type_properties/
has_nothrow_constructor/has_nothrow_constructor.cc: New.
* testsuite/tr1/4_metaprogramming/type_properties/
has_nothrow_constructor/typedefs.cc: Likewise.

From-SVN: r92699

19 years agogfortran.h (gfc_case): fix typo in comment.
Steven G. Kargl [Wed, 29 Dec 2004 02:48:27 +0000 (02:48 +0000)]
gfortran.h (gfc_case): fix typo in comment.

2004-12-29  Steven G. Kargl  <kargls@comcast.net>

* gfortran.h (gfc_case): fix typo in comment.

From-SVN: r92695

19 years ago* objc.dg/stabs-1.m: Disable for alpha.
Richard Henderson [Wed, 29 Dec 2004 01:43:00 +0000 (17:43 -0800)]
* objc.dg/stabs-1.m: Disable for alpha.

From-SVN: r92694

19 years agore PR inline-asm/15740 (ICE caused by a memory operand in an asm statement)
Richard Henderson [Wed, 29 Dec 2004 01:22:15 +0000 (17:22 -0800)]
re PR inline-asm/15740 (ICE caused by a memory operand in an asm statement)

PR inline-asm/15740
        * gimplify.c (gimplify_asm_expr): Move resolve asm names ...
        * c-typeck.c (build_asm_expr): ... here.  Validate input
        constraints.  Mark memory inputs addressable.

        * semantics.c (finish_asm_stmt): Resolve asm names.  Validate input
        constraints.  Mark memory inputs addressable.

From-SVN: r92693

19 years agoDaily bump.
GCC Administrator [Wed, 29 Dec 2004 00:16:14 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r92691

19 years agore PR target/18321 (mmix-knuth-mmixware testsuite failure: gcc.c-torture/compile...
Hans-Peter Nilsson [Tue, 28 Dec 2004 23:19:12 +0000 (23:19 +0000)]
re PR target/18321 (mmix-knuth-mmixware testsuite failure: gcc.c-torture/compile/20031023-4.c -O0, -O1)

PR target/18321
* config/mmix/mmix.c (mmix_expand_epilogue): Change type of
variable offset to HOST_WIDE_INT.  Remove obsolete comment.  Fix
spacing.

From-SVN: r92685

19 years agore PR bootstrap/17383 (Building in src dir fails)
Paolo Bonzini [Tue, 28 Dec 2004 17:40:40 +0000 (17:40 +0000)]
re PR bootstrap/17383 (Building in src dir fails)

2004-12-28  Paolo Bonzini  <bonzini@gnu.org>

PR bootstrap/17383

* Makefile.def (target_modules): Remove stage parameter,
it is always true now.
* Makefile.tpl (configure-build-[+module+],
configure-target-[+module+]): Always build symlink tree
for the directory and for include.  BUILD_SUBDIR and
TARGET_SUBDIR cannot be . anymore.
* Makefile.in: Regenerate.

From-SVN: r92674

19 years agoconfigure.host (aix4*|aix5*): Add atomic_word_dir.
David Edelsohn [Tue, 28 Dec 2004 16:34:16 +0000 (16:34 +0000)]
configure.host (aix4*|aix5*): Add atomic_word_dir.

* configure.host (aix4*|aix5*): Add atomic_word_dir.
* config/os/aix/atomic_word.h: New file.

From-SVN: r92673

19 years agofold-const.c (fold_build_cleanup_point_expr): For a RETURN_EXPR...
Andrew Pinski [Tue, 28 Dec 2004 15:56:51 +0000 (15:56 +0000)]
fold-const.c (fold_build_cleanup_point_expr): For a RETURN_EXPR...

2004-12-28  Andrew Pinski  <pinskia@physics.uc.edu>

        * fold-const.c (fold_build_cleanup_point_expr): For a RETURN_EXPR,
        we only need a cleanup point expression when the expression on the
        left hand side of the MODIFIY_EXPR inside the return has side
        effects.

From-SVN: r92672

19 years ago* tree-vectorizer.c (vect_mark_relevant) First argument changed from
Dorit Naishlos [Tue, 28 Dec 2004 12:44:29 +0000 (12:44 +0000)]
* tree-vectorizer.c (vect_mark_relevant) First argument changed from
        varray_type to varray_type*.
        (vect_mark_stmts_to_be_vectorized): Pass &worklist instead of worklist
        when calling vect_mark_relevant.

From-SVN: r92671

19 years agors6000.c (rs6000_legitimize_reload_address): Don't generate non-offsettable DImode...
Alan Modra [Tue, 28 Dec 2004 11:24:21 +0000 (11:24 +0000)]
rs6000.c (rs6000_legitimize_reload_address): Don't generate non-offsettable DImode lo_sum addresses.

* config/rs6000/rs6000.c (rs6000_legitimize_reload_address): Don't
generate non-offsettable DImode lo_sum addresses.

From-SVN: r92670

19 years agore PR rtl-optimization/19103 (Current CVS (2004/12/21) doesn't compile with profiledb...
Zdenek Dvorak [Tue, 28 Dec 2004 10:33:39 +0000 (11:33 +0100)]
re PR rtl-optimization/19103 (Current CVS (2004/12/21) doesn't compile with profiledbootstrap)

PR rtl-optimization/19103
* loop-iv.c (iv_number_of_iterations): Fix typo.

From-SVN: r92669

19 years ago* genrecog.c (compute_predicate_codes): Avoid warning.
Andreas Jaeger [Tue, 28 Dec 2004 07:56:09 +0000 (08:56 +0100)]
* genrecog.c (compute_predicate_codes): Avoid warning.

From-SVN: r92668

19 years agovax.c (vax_address_cost, [...]): Correct casts.
John David Anglin [Tue, 28 Dec 2004 07:51:17 +0000 (07:51 +0000)]
vax.c (vax_address_cost, [...]): Correct casts.

* vax.c (vax_address_cost, vax_rtx_cost): Correct casts.
(vax_rtx_cost): Handle small offsets for both PLUS and MINUS.

From-SVN: r92667

19 years agotree-ssa-dom.c (thread_across_edge): Remove broken code to avoid threading into a...
Jeff Law [Tue, 28 Dec 2004 06:34:55 +0000 (23:34 -0700)]
tree-ssa-dom.c (thread_across_edge): Remove broken code to avoid threading into a loop.

        * tree-ssa-dom.c (thread_across_edge): Remove broken code to
        avoid threading into a loop.

From-SVN: r92666

19 years agore PR target/17406 (ICE dwarf2out_frame_debug_expr, at dwarf2out.c:1692)
Richard Henderson [Tue, 28 Dec 2004 05:26:23 +0000 (21:26 -0800)]
re PR target/17406 (ICE dwarf2out_frame_debug_expr, at dwarf2out.c:1692)

        PR target/17406
        * config/i386/i386.c (ix86_expand_prologue): Add REG_FRAME_RELATED_EXPR
        note for allocate_stack_worker insn.

From-SVN: r92662

19 years agoAdd memory barriers to the double-checked locking used for static initialization.
Jason Merrill [Tue, 28 Dec 2004 04:36:54 +0000 (23:36 -0500)]
Add memory barriers to the double-checked locking used for static initialization.

libstdc++:
        Add memory barriers to the double-checked locking used for static
        initialization.
        * libsupc++/guard.cc (__test_and_acquire): Define default.
        (_GLIBCXX_GUARD_TEST_AND_ACQUIRE, __set_and_release)
        (_GLIBCXX_GUARD_SET_AND_RELEASE): Likewise.
        (recursion_push, recursion_pop): New abstraction functions.
        (__cxa_guard_acquire): Use _GLIBCXX_GUARD_TEST_AND_ACQUIRE.
        (__cxa_guard_release): Use _GLIBCXX_GUARD_SET_AND_RELEASE.
        * config/cpu/generic/cxxabi_tweaks.h (_GLIBCXX_GUARD_TEST): Rename
        from _GLIBCXX_GUARD_ACQUIRE and reverse sense.
        (_GLIBCXX_GUARD_SET): Rename from _GLIBCXX_GUARD_RELEASE.
        * config/cpu/arm/cxxabi_tweaks.h: Likewise.
        * config/cpu/alpha/atomic_word.h (_GLIBCXX_READ_MEM_BARRIER)
        (_GLIBCXX_WRITE_MEM_BARRIER): Define.
        * config/cpu/powerpc/atomic_word.h: Likewise.
        * config/cpu/sparc/atomic_word.h: Likewise.
        * config/cpu/generic/atomic_word.h: Define them, commented out.
        * include/bits/atomicity.h: Define defaults.
        * config/cpu/ia64/atomic_word.h (__test_and_acquire)
        (__set_and_release): New inlines.
        (_GLIBCXX_GUARD_TEST_AND_ACQUIRE): Define.
        (_GLIBCXX_GUARD_SET_AND_RELEASE): Define.

        * libsupc++/guard.cc (acquire_1): Use __builtin_trap instead of
        abort();

gcc:
        * doc/tm.texi (TARGET_RELAXED_ORDERING): Document.
        * target.h (struct gcc_target): Add relaxed_ordering field.
        * target-def.h (TARGET_RELAXED_ORDERING): Define default.
        (TARGET_INITIALIZER): Add it.
        * config/alpha/alpha.c (TARGET_RELAXED_ORDERING): Define.
        * config/ia64/ia64.c (TARGET_RELAXED_ORDERING): Define.
        * config/rs6000/rs6000.c (TARGET_RELAXED_ORDERING): Define.
        * config/sparc/sparc.c (TARGET_RELAXED_ORDERING): Define.
        * cp/decl.c (expand_static_init): Don't use shortcut if
        targetm.relaxed_ordering.

From-SVN: r92659

19 years agore PR driver/16118 (Preprocessed source error with -xf77-cpp-input)
Roger Sayle [Tue, 28 Dec 2004 04:24:30 +0000 (04:24 +0000)]
re PR driver/16118 (Preprocessed source error with -xf77-cpp-input)

PR driver/16118
* doc/invoke.texi: Document the interaction between -save-temps
and -x.

From-SVN: r92658

19 years agors6000.c (rs6000_eliminate_indexed_memrefs): Do not break apart constant pool addresses.
David Edelsohn [Tue, 28 Dec 2004 00:39:18 +0000 (00:39 +0000)]
rs6000.c (rs6000_eliminate_indexed_memrefs): Do not break apart constant pool addresses.

        * config/rs6000/rs6000.c (rs6000_eliminate_indexed_memrefs):
        Do not break apart constant pool addresses.
        (rs6000_emit_move): Only force source into REG if target is MEM.

From-SVN: r92657

19 years agoDaily bump.
GCC Administrator [Tue, 28 Dec 2004 00:16:20 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r92655

19 years agoMakefile.in: Undo to 2004-12-17.
H.J. Lu [Mon, 27 Dec 2004 21:00:12 +0000 (21:00 +0000)]
Makefile.in: Undo to 2004-12-17.

2004-12-27  H.J. Lu  <hongjiu.lu@intel.com>

* Makefile.in: Undo to 2004-12-17.
* aclocal.m4: Likewise.
* config.table: Likewise.
* configure.ac: Likewise.
* maint-tool: Likewise.
* configure: Likewise.

From-SVN: r92651

19 years agore PR c++/19149 (seg fault on invalid code)
Mark Mitchell [Mon, 27 Dec 2004 19:03:16 +0000 (19:03 +0000)]
re PR c++/19149 (seg fault on invalid code)

PR c++/19149
* decl.c (check_tag_decl): Robustify.

PR c++/19149
* g++.dg/parse/error23.C: New test.

From-SVN: r92648

19 years agotype_traits: Rework the _DEFINE_SPEC* macros.
Paolo Carlini [Mon, 27 Dec 2004 18:51:12 +0000 (18:51 +0000)]
type_traits: Rework the _DEFINE_SPEC* macros.

2004-12-27  Paolo Carlini  <pcarlini@suse.de>

* include/tr1/type_traits: Rework the _DEFINE_SPEC* macros.

From-SVN: r92647

19 years ago* g++.dg/opt/temp1.C (memcpy): Return a value.
Mark Mitchell [Mon, 27 Dec 2004 18:01:58 +0000 (18:01 +0000)]
* g++.dg/opt/temp1.C (memcpy): Return a value.

From-SVN: r92646

19 years agore PR libfortran/19032 (modulo generates wrong result for divisor 1 and -1)
Tobias Schlüter [Mon, 27 Dec 2004 17:13:07 +0000 (18:13 +0100)]
re PR libfortran/19032 (modulo generates wrong result for divisor 1 and -1)

fortran/
PR fortran/19032
* trans-intrinsic.c (gfc_conv_intrinsic_mod): Update comment
in front of function to match the standard.  Correct handling
of MODULO.

testsuite/
PR fortran/19032
* gfortran.dg/intrinsic_modulo_1.f90: New.
* gfortran.fortran-torture/execute/intrinsic_mod_ulo.f90: Add
tests with divisor -1.

From-SVN: r92645

19 years agotrans-expr.c (gfc_conv_cst_int_power): Only check for flag_unsafe_math_optimizations...
Andrew Pinski [Mon, 27 Dec 2004 16:56:38 +0000 (16:56 +0000)]
trans-expr.c (gfc_conv_cst_int_power): Only check for flag_unsafe_math_optimizations if we have a float type.

2004-12-27  Andrew Pinski  <pinskia@physics.uc.edu>

        * trans-expr.c (gfc_conv_cst_int_power): Only check for
        flag_unsafe_math_optimizations if we have a float type.

From-SVN: r92644

19 years agoFix typo in ChangeLog
Tobias Schlüter [Mon, 27 Dec 2004 16:43:47 +0000 (17:43 +0100)]
Fix typo in ChangeLog

From-SVN: r92643

19 years agotrans-intrinsic.c (gfc_conv_intrinsic_ishft): Change to logicalshift.
Tobias Schlüter [Mon, 27 Dec 2004 16:43:25 +0000 (17:43 +0100)]
trans-intrinsic.c (gfc_conv_intrinsic_ishft): Change to logicalshift.

gcc/fortran/
* trans-intrinsic.c (gfc_conv_intrinsic_ishft): Change to
logicalshift.  Call fold.  Remove 0-bit shift shortcut.
(gfc_conv_intrinsic_ishftc): Convert first argument to at least
4 bytes bits.  Convert 2nd and 3rd argument to 4 bytes.  Convert
result if width(arg 1) < 4 bytes.  Call fold.

libgfortran/
* libgfortran/libgfortran.h (GFC_UINTEGER_1, GFC_UINTEGER_2):
Define.
* intrinsics/ishftc.c: Update copyright years.
(ishftc8): Change 'shift' and 'size' to GFC_INTEGER_4.
* intrinsics/mvbits.c: Correcty non-ASCII character in my name.
Add implementations for GFC_INTEGER_1 and GFC_INTEGER_2.

gcc/testsuite/
* gfortran.dg/g77/f90-intrinsic-bit.f: New.

From-SVN: r92642

19 years agore PR c++/19148 (ICE: gimplification failed)
Mark Mitchell [Mon, 27 Dec 2004 16:13:45 +0000 (16:13 +0000)]
re PR c++/19148 (ICE: gimplification failed)

PR c++/19148
* g++.dg/expr/cond7.C: New test.

From-SVN: r92641

19 years agore PR c++/19148 (ICE: gimplification failed)
Mark Mitchell [Mon, 27 Dec 2004 16:06:13 +0000 (16:06 +0000)]
re PR c++/19148 (ICE: gimplification failed)

PR c++/19148
* gimplify.c (gimplify_cond_expr): Add post_p parameter.
(gimplify_modify_expr_rhs): Adjust call to gimplify_cond_expr.
(gimplify_expr): Likewise.

From-SVN: r92640

19 years ago* gfortran.dg/g77/select_no_compile.f: Remove.
Paul Brook [Mon, 27 Dec 2004 15:29:14 +0000 (15:29 +0000)]
* gfortran.dg/g77/select_no_compile.f: Remove.

From-SVN: r92639

19 years agoi386.h (UNITS_PER_SIMD_WORD): Don't use MMX/3DNOW.
Richard Henderson [Mon, 27 Dec 2004 09:35:54 +0000 (01:35 -0800)]
i386.h (UNITS_PER_SIMD_WORD): Don't use MMX/3DNOW.

        * config/i386/i386.h (UNITS_PER_SIMD_WORD): Don't use MMX/3DNOW.

        * gcc.dg/vect/vect-27a.c, gcc.dg/vect/vect-29a.c,
        gcc.dg/vect/vect-48a.c, gcc.dg/vect/vect-56a.c,
        gcc.dg/vect/vect-72a.c, gcc.dg/vect/vect-77a.c: Remove.

From-SVN: r92637

19 years ago* src/x86/unix64.S: Fix typo in unwind info.
Richard Henderson [Mon, 27 Dec 2004 09:20:10 +0000 (01:20 -0800)]
* src/x86/unix64.S: Fix typo in unwind info.

From-SVN: r92636

19 years agocompat-common.h (CINT, CDBL): Use multiplication by 1i instead of token pasting.
Richard Henderson [Mon, 27 Dec 2004 04:27:09 +0000 (20:27 -0800)]
compat-common.h (CINT, CDBL): Use multiplication by 1i instead of token pasting.

        * gcc.dg/compat/compat-common.h (CINT, CDBL): Use multiplication
        by 1i instead of token pasting.

From-SVN: r92635

19 years agoi386.md (mov<MMXMODEI>_internal_rex64): New.
Richard Henderson [Mon, 27 Dec 2004 03:50:51 +0000 (19:50 -0800)]
i386.md (mov<MMXMODEI>_internal_rex64): New.

        * config/i386/i386.md (mov<MMXMODEI>_internal_rex64): New.
        (movv2sf_internal_rex64): New.
        (mov<MMXMODEI>_internal): Use no register preferences at all.
        (movv2sf_internal): Likewise.

From-SVN: r92634

19 years agoi386.c (ix86_gimplify_va_arg): Also pass the result of type_natural_mode to examine_a...
Richard Henderson [Mon, 27 Dec 2004 03:50:27 +0000 (19:50 -0800)]
i386.c (ix86_gimplify_va_arg): Also pass the result of type_natural_mode to examine_argument.

        * config/i386/i386.c (ix86_gimplify_va_arg): Also pass the result
        of type_natural_mode to examine_argument.

From-SVN: r92633

19 years agosimplify-rtx.c (simplify_relational_operation_1): Don't simplify plus/minus across...
Richard Henderson [Mon, 27 Dec 2004 03:31:49 +0000 (19:31 -0800)]
simplify-rtx.c (simplify_relational_operation_1): Don't simplify plus/minus across EQ for floating-point.

        * simplify-rtx.c (simplify_relational_operation_1): Don't simplify
        plus/minus across EQ for floating-point.

From-SVN: r92631

19 years agore PR target/17643 (ICE in propagate_one_insn, at flow.c:1582)
John David Anglin [Mon, 27 Dec 2004 01:08:09 +0000 (01:08 +0000)]
re PR target/17643 (ICE in propagate_one_insn, at flow.c:1582)

PR target/17643
* pa.c (pa_function_ok_for_sibcall): Sibcalls are not ok when
generating code for the portable runtime.

From-SVN: r92629

19 years agoDaily bump.
GCC Administrator [Mon, 27 Dec 2004 00:16:18 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r92626

19 years agore PR tree-optimization/17578 (Missed optimization--failure of gcc.c-torture/execute...
John David Anglin [Sun, 26 Dec 2004 20:49:14 +0000 (20:49 +0000)]
re PR tree-optimization/17578 (Missed optimization--failure of gcc.c-torture/execute/ieee/compare-fp-3.c at -O1 and above)

PR tree-optimization/17578
* gcc.c-torture/execute/ieee/compare-fp-3.x: Append -fno-trapping-math
to additional_flags.
* gcc.c-torture/execute/ieee/compare-fp-4.x: Likewise.

From-SVN: r92623

19 years agotype_traits (__is_enum_helper): Slightly simplify, make __convert non template.
Paolo Carlini [Sun, 26 Dec 2004 19:05:47 +0000 (19:05 +0000)]
type_traits (__is_enum_helper): Slightly simplify, make __convert non template.

2004-12-26  Paolo Carlini  <pcarlini@suse.de>

* include/tr1/type_traits (__is_enum_helper): Slightly simplify,
make __convert non template.

From-SVN: r92622

19 years agotype_traits: Implement is_pod, has_trivial_constructor, and has_trivial_destructor.
Paolo Carlini [Sun, 26 Dec 2004 11:08:47 +0000 (11:08 +0000)]
type_traits: Implement is_pod, has_trivial_constructor, and has_trivial_destructor.

2004-12-26  Paolo Carlini  <pcarlini@suse.de>

* include/tr1/type_traits: Implement is_pod, has_trivial_constructor,
and has_trivial_destructor.
* testsuite/tr1/4_metaprogramming/type_properties/
has_trivial_constructor/has_trivial_constructor.cc: New.
* testsuite/tr1/4_metaprogramming/type_properties/
has_trivial_constructor/typedefs.cc: Likewise.
* testsuite/tr1/4_metaprogramming/type_properties/
has_trivial_destructor/has_trivial_destructor.cc: Likewise.
* testsuite/tr1/4_metaprogramming/type_properties/
has_trivial_destructor/typedefs.cc: Likewise.
* testsuite/tr1/4_metaprogramming/type_properties/
is_pod/is_pod.cc: Likewise.
* testsuite/tr1/4_metaprogramming/type_properties/
is_pod/typedefs.cc: Likewise.

From-SVN: r92618

19 years agoexpr.c (clear_storage): Validate CONST0_RTX extant.
Richard Henderson [Sun, 26 Dec 2004 03:59:28 +0000 (19:59 -0800)]
expr.c (clear_storage): Validate CONST0_RTX extant.

        * expr.c (clear_storage): Validate CONST0_RTX extant.  Special case
        complex modes.

From-SVN: r92615

19 years agotarget-supports.exp (check_effective_target_vect_no_bitwise): Remove Alpha.
Richard Henderson [Sun, 26 Dec 2004 03:57:04 +0000 (19:57 -0800)]
target-supports.exp (check_effective_target_vect_no_bitwise): Remove Alpha.

        * lib/target-supports.exp (check_effective_target_vect_no_bitwise):
Remove Alpha.

From-SVN: r92614

19 years agoDaily bump.
GCC Administrator [Sun, 26 Dec 2004 00:16:13 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r92612

19 years agoRevert 2004-12-08 Makefile changes.
David Edelsohn [Sun, 26 Dec 2004 00:07:54 +0000 (00:07 +0000)]
Revert 2004-12-08 Makefile changes.

From-SVN: r92609

19 years agore PR rtl-optimization/19078 (Poor quality code after loop unrolling.)
Zdenek Dvorak [Sat, 25 Dec 2004 22:53:54 +0000 (23:53 +0100)]
re PR rtl-optimization/19078 (Poor quality code after loop unrolling.)

PR rtl-optimization/19078
* tree-ssa-loop-ivopts.c (determine_use_iv_cost_generic,
determine_use_iv_cost_outer): Fix computing of cost for the original
bivs.
(dump_use): Handle case related_cands == NULL.

From-SVN: r92608

19 years agore PR target/19059 (Atmel AVR Tiny13 and Tiny2313 support corrupted)
Marek Michalkiewicz [Sat, 25 Dec 2004 22:20:04 +0000 (23:20 +0100)]
re PR target/19059 (Atmel AVR Tiny13 and Tiny2313 support corrupted)

PR target/19059
* config/avr/avr.c (avr_mcu_types): Move attiny{13,2313} from avr4
to avr2.
* config/avr/avr.h (LINK_SPEC): Ditto.
* config/avr/t-avr (MULTILIB_MATCHES): Ditto.

From-SVN: r92607

19 years agopr17055-1.c (dg-options): Add -fno-common to options on hppa*-*-hpux*.
John David Anglin [Sat, 25 Dec 2004 17:01:52 +0000 (17:01 +0000)]
pr17055-1.c (dg-options): Add -fno-common to options on hppa*-*-hpux*.

* gcc.dg/pr17055-1.c (dg-options): Add -fno-common to options on
hppa*-*-hpux*.
* gcc.dg/pr17957.c (dg-options): Likewise.
* gcc.dg/struct-ret-1.c: Add prototype for abort.
* gcc.dg/tree-ssa/asm-2.c, gcc.dg/tree-ssa/asm-3.c: Use register 1
instead of 0 on __hppa__.
* gcc.dg/tree-ssa/loop-1.c (dg-final): Check for five instances of
"foo,%r" on hppa*-*-*.

From-SVN: r92606

19 years agotype_traits (is_enum): Minor tweak.
Paolo Carlini [Sat, 25 Dec 2004 15:39:43 +0000 (15:39 +0000)]
type_traits (is_enum): Minor tweak.

2004-12-25  Paolo Carlini  <pcarlini@suse.de>

* include/tr1/type_traits (is_enum): Minor tweak.

From-SVN: r92605

19 years agotype_traits: Implement is_enum (usual caveats about the nasty consequences of c+...
Paolo Carlini [Sat, 25 Dec 2004 15:24:36 +0000 (15:24 +0000)]
type_traits: Implement is_enum (usual caveats about the nasty consequences of c++/19076...).

2004-12-25  Paolo Carlini  <pcarlini@suse.de>

* include/tr1/type_traits: Implement is_enum (usual caveats about
the nasty consequences of c++/19076...).
* testsuite/testsuite_tr1.h: Add ConvType.
* testsuite/tr1/4_metaprogramming/composite_type_traits/
is_scalar/is_scalar.cc: New.
* testsuite/tr1/4_metaprogramming/composite_type_traits/
is_scalar/typedefs.cc: Likewise.
* testsuite/tr1/4_metaprogramming/primary_type_categories/
is_enum/is_enum.cc: Likewise.
* testsuite/tr1/4_metaprogramming/primary_type_categories/
is_enum/typedefs.cc: Likewise.

From-SVN: r92604

19 years agore PR target/19137 (ICE with load of TImode constant)
Alan Modra [Sat, 25 Dec 2004 12:41:02 +0000 (12:41 +0000)]
re PR target/19137 (ICE with load of TImode constant)

PR target/19137
* config/rs6000/rs6000.md (movti_power, movti_string): Relax
operand[1] predicate to input_operand, and add r<-n alternative.
Move TImode const_double_operand splitter to where it belongs.

From-SVN: r92603

19 years agoffi64.c (struct register_args): Rename from stackLayout.
Richard Henderson [Sat, 25 Dec 2004 09:54:40 +0000 (01:54 -0800)]
ffi64.c (struct register_args): Rename from stackLayout.

        * src/x86/ffi64.c (struct register_args): Rename from stackLayout.
        (enum x86_64_reg_class): Add X86_64_COMPLEX_X87_CLASS.
        (merge_classes): Check for it.
        (SSE_CLASS_P): New.
        (classify_argument): Pass byte_offset by value; perform all updates
        inside struct case.
        (examine_argument): Add classes argument; handle
        X86_64_COMPLEX_X87_CLASS.
        (ffi_prep_args): Merge into ...
        (ffi_call): ... here.  Share stack frame with ffi_call_unix64.
        (ffi_prep_cif_machdep): Setup cif->flags for proper structure return.
        (ffi_fill_return_value): Remove.
        (ffi_prep_closure): Remove dead assert.
        (ffi_closure_unix64_inner): Rename from ffi_closure_UNIX64_inner.
        Rewrite to use struct register_args instead of va_list.  Create
        flags for handling structure returns.
        * src/x86/unix64.S: Remove dead strings.
        (ffi_call_unix64): Rename from ffi_call_UNIX64.  Rewrite to share
        stack frame with ffi_call.  Handle structure returns properly.
        (float2sse, floatfloat2sse, double2sse): Remove.
        (sse2float, sse2double, sse2floatfloat): Remove.
        (ffi_closure_unix64): Rename from ffi_closure_UNIX64.  Rewrite
        to handle structure returns properly.

From-SVN: r92602

19 years agoDaily bump.
GCC Administrator [Sat, 25 Dec 2004 00:16:31 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r92600

19 years agotype_traits: Add missing undef.
Paolo Carlini [Fri, 24 Dec 2004 23:38:27 +0000 (23:38 +0000)]
type_traits: Add missing undef.

2004-12-24  Paolo Carlini  <pcarlini@suse.de>

* include/tr1/type_traits: Add missing undef.

From-SVN: r92597

19 years agore PR target/19147 (invalid rlwinm patterns)
Alan Modra [Fri, 24 Dec 2004 23:00:08 +0000 (23:00 +0000)]
re PR target/19147 (invalid rlwinm patterns)

PR target/19147
* config/rs6000/rs6000.md (andsi3_internal7, andsi3_internal8): Delete.

From-SVN: r92594

19 years agotype_traits: Implement is_member_object_pointer, is_member_function_pointer.
Paolo Carlini [Fri, 24 Dec 2004 20:33:56 +0000 (20:33 +0000)]
type_traits: Implement is_member_object_pointer, is_member_function_pointer.

2004-12-24  Paolo Carlini  <pcarlini@suse.de>

* include/tr1/type_traits: Implement is_member_object_pointer,
is_member_function_pointer. N.B. Due to c++/19076, the latter
doesn't really work at the moment (a rather ugly work around
will be provided in case the front-end bug doesn't get fixed
soon); generalize and extend the _DEFINE_SPEC macros.
* testsuite/tr1/4_metaprogramming/composite_type_traits/
is_member_pointer/is_member_pointer.cc: New.
* testsuite/tr1/4_metaprogramming/composite_type_traits/
is_member_pointer/typedefs.cc: Likewise.
* testsuite/tr1/4_metaprogramming/primary_type_categories/
is_member_function_pointer/is_member_function_pointer.cc: Likewise.
* testsuite/tr1/4_metaprogramming/primary_type_categories/
is_member_function_pointer/typedefs.cc: Likewise.
* testsuite/tr1/4_metaprogramming/primary_type_categories/
is_member_object_pointer/is_member_object_pointer.cc: Likewise.
* testsuite/tr1/4_metaprogramming/primary_type_categories/
is_member_object_pointer/typedefs.cc: Likewise.

From-SVN: r92593

19 years agoi386.md (*fix_trunc{d,s,h}i_1): Rename to *fix_trunc{d,s,h}i_i387.
Uros Bizjak [Fri, 24 Dec 2004 06:49:34 +0000 (07:49 +0100)]
i386.md (*fix_trunc{d,s,h}i_1): Rename to *fix_trunc{d,s,h}i_i387.

* config/i386/i386.md (*fix_trunc{d,s,h}i_1):
Rename to *fix_trunc{d,s,h}i_i387.
(fix_trunc{d,s}fdi2): Reorder tests.

From-SVN: r92586

19 years agore PR tree-optimization/14638 (Variables disappear from debug info at -O1)
Daniel Berlin [Fri, 24 Dec 2004 05:23:10 +0000 (05:23 +0000)]
re PR tree-optimization/14638 (Variables disappear from debug info at -O1)

2004-12-24  Daniel Berlin  <dberlin@dberlin.org>

Fix PR debug/14638

* tree.h (DECL_DEBUG_ALIAS_OF): New macro.
* var-tracking.c (track_expr_p): Don't disqualify tracking of variables
that are aliases of variables we want to track, unless the
original variable is also ignored for debugging purposes.
(VARIABLE_HASH_VAL): Use DECL_UID, so that this is deterministic.
  * tree-outof-ssa.c (create_temp): Note who we are a debug alias of.
* dwarf2out.c (dwarf2out_var_location): Add us to the location of
the decl we are an alias of.

From-SVN: r92585

19 years agocomplex_write.f90: removed extraneous comma.
Bud Davis [Fri, 24 Dec 2004 03:17:13 +0000 (03:17 +0000)]
complex_write.f90: removed extraneous comma.

2004-12-23  Bud Davis  <bdavis9659@comcast.net>

* gfortran.dg/complex_write.f90: removed extraneous comma.

From-SVN: r92584

19 years agore PR target/19142 (ppc-darwin no longer builds)
Alan Modra [Fri, 24 Dec 2004 01:51:04 +0000 (01:51 +0000)]
re PR target/19142 (ppc-darwin no longer builds)

PR target/19142
* config/rs6000/rs6000.c (legitimate_lo_sum_address_p): Allow
DFmode for 32-bit again.

From-SVN: r92583

19 years agore PR libfortran/19071 (complex formatted output has too many items)
Bud Davis [Fri, 24 Dec 2004 00:29:07 +0000 (00:29 +0000)]
re PR libfortran/19071 (complex formatted output has too many items)

2004-12-23  Bud Davis  <bdavis9659@comcast.net>

        PR fortran/19071
        * io/tranfer.c (formatted_transfer): moved check for
        format reversion inside the processing loop.

        * gfortran.dg/complex_write.f90: New test.

From-SVN: r92582

19 years agoDaily bump.
GCC Administrator [Fri, 24 Dec 2004 00:16:14 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r92580

19 years agogfortran.texi: Fix typo.
Steven G. Kargl [Thu, 23 Dec 2004 23:14:23 +0000 (23:14 +0000)]
gfortran.texi: Fix typo.

2004-12-23  Steven G. Kargl  <kargls@comcast.net>

     * gfortran.texi: Fix typo.

From-SVN: r92575

19 years agoreload.c (regno_clobbered_p): Add a gcc_assert that regno refers to a hard register.
Roger Sayle [Thu, 23 Dec 2004 22:48:51 +0000 (22:48 +0000)]
reload.c (regno_clobbered_p): Add a gcc_assert that regno refers to a hard register.

* reload.c (regno_clobbered_p): Add a gcc_assert that regno
refers to a hard register.

From-SVN: r92574

19 years agore PR c++/17595 (Unfriendly error message/rejects legal #pragmas in the middle of...
Mark Mitchell [Thu, 23 Dec 2004 22:19:54 +0000 (22:19 +0000)]
re PR c++/17595 (Unfriendly error message/rejects legal #pragmas in the middle of a parameter list)

PR c++/17595
* parser.c (cp_parser_error): Issue better messages about
#pragma in locations where it is not permitted.

PR c++/17595
* g++.dg/parse/pragma2.C: New test.

From-SVN: r92573

19 years agore PR c++/17595 (Unfriendly error message/rejects legal #pragmas in the middle of...
Mark Mitchell [Thu, 23 Dec 2004 22:07:01 +0000 (22:07 +0000)]
re PR c++/17595 (Unfriendly error message/rejects legal #pragmas in the middle of a parameter list)

PR c++/17595
* parser.c (cp_parser_error): Issue better messages about
#pragma in locations where it is not permitted.

From-SVN: r92572

19 years agogimplify.c (gimplify_modify_expr_rhs): Use types_compatible_p.
Mark Mitchell [Thu, 23 Dec 2004 21:55:12 +0000 (21:55 +0000)]
gimplify.c (gimplify_modify_expr_rhs): Use types_compatible_p.

* gimplify.c (gimplify_modify_expr_rhs): Use types_compatible_p.

* g++.dg/opt/temp1.C: Make memcpy actually copy bytes.

From-SVN: r92571

19 years agoFixed incorrect PR number.
Alexandre Oliva [Thu, 23 Dec 2004 21:39:25 +0000 (21:39 +0000)]
Fixed incorrect PR number.

From-SVN: r92569

19 years ago* gcc.dg/empty2.c: Add missing dg-warning.
Alexandre Oliva [Thu, 23 Dec 2004 21:31:55 +0000 (21:31 +0000)]
* gcc.dg/empty2.c: Add missing dg-warning.

From-SVN: r92566

19 years agogenrecog.c (did_you_mean_codes): New.
DJ Delorie [Thu, 23 Dec 2004 20:21:08 +0000 (15:21 -0500)]
genrecog.c (did_you_mean_codes): New.

* genrecog.c (did_you_mean_codes): New.
(compute_predicate_codes): Fail unmatched codes.

From-SVN: r92565

19 years agore PR c++/17413 (local classes as template argument)
Mark Mitchell [Thu, 23 Dec 2004 19:54:09 +0000 (19:54 +0000)]
re PR c++/17413 (local classes as template argument)

PR c++/17413
* pt.c (check_instantiated_args): Remove bogus SFINAE code.

PR c++/17413
* g++.dg/template/local4.C: New test.
* g++.dg/template/crash19.C: Add dg-error marker.

From-SVN: r92562

19 years agomips.h (TARGET_CPU_CPP_BUILTINS): Add assert for machine=mips for !TARGET_IRIX.
Eric Christopher [Thu, 23 Dec 2004 19:39:31 +0000 (19:39 +0000)]
mips.h (TARGET_CPU_CPP_BUILTINS): Add assert for machine=mips for !TARGET_IRIX.

2004-12-23  Eric Christopher  <echristo@redhat.com>

* config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Add
assert for machine=mips for !TARGET_IRIX.
* config/mips/linux.h: Remove machine=mips assert.
* config/mips/netbsd.h: Ditto.
* config/mips/openbsd.h: Ditto.

From-SVN: r92561

19 years agoFix ChangeLog entry from 2004-12-22 from 'dg-xfail-if' to 'dg-skip-if'
Janis Johnson [Thu, 23 Dec 2004 16:55:34 +0000 (16:55 +0000)]
Fix ChangeLog entry from 2004-12-22 from 'dg-xfail-if' to 'dg-skip-if'

From-SVN: r92558

19 years ago* g++.dg/template/crash31.C: Correct embedded PR number.
Mark Mitchell [Thu, 23 Dec 2004 16:47:19 +0000 (16:47 +0000)]
* g++.dg/template/crash31.C: Correct embedded PR number.

From-SVN: r92557

19 years ago* cvt.c (convert_to_void): Fix typo in comment.
Mark Mitchell [Thu, 23 Dec 2004 16:31:16 +0000 (16:31 +0000)]
* cvt.c (convert_to_void): Fix typo in comment.

From-SVN: r92556

19 years agore PR c++/16405 (Temporary aggregate copy not elided)
Mark Mitchell [Thu, 23 Dec 2004 16:27:11 +0000 (16:27 +0000)]
re PR c++/16405 (Temporary aggregate copy not elided)

PR c++/16405
* gimplify.c (gimplify_modify_expr_rhs): Handle
INDIRECT_REF/ADDR_EXPR combinations.

From-SVN: r92555

19 years agotree.c (iterative_hash_expr): Canonicalize builtins.
Dale Johannesen [Thu, 23 Dec 2004 16:21:31 +0000 (16:21 +0000)]
tree.c (iterative_hash_expr): Canonicalize builtins.

2004-12-23  Dale Johannesen  <dalej@apple.com>

        * tree.c (iterative_hash_expr):  Canonicalize builtins.

From-SVN: r92553

19 years agore PR c++/18962 (specialization of template class with inner template members and...
Alexandre Oliva [Thu, 23 Dec 2004 16:12:57 +0000 (16:12 +0000)]
re PR c++/18962 (specialization of template class with inner template members and parameter)

gcc/cp/ChangeLog:
PR c++/18962
* pt.c (check_explicit_specialization): Use the argument list from
the definition in a template function specialization definition.
gcc/testsuite/ChangeLog:
* g++.dg/template/spec19.C: New.

From-SVN: r92552

19 years agore PR target/16819 (ICE with empty struct as arg)
Alexandre Oliva [Thu, 23 Dec 2004 16:09:01 +0000 (16:09 +0000)]
re PR target/16819 (ICE with empty struct as arg)

gcc/ChangeLog:
PR target/16819
* calls.c (load_register_parameters): Don't call use_regs when
nregs is zero.
gcc/testsuite/ChangeLog:
PR target/16891
* gcc.dg/empty2.c: New.

From-SVN: r92551

19 years agore PR middle-end/17746 (ICE when building the Ada RTS)
Eric Botcazou [Thu, 23 Dec 2004 13:05:50 +0000 (14:05 +0100)]
re PR middle-end/17746 (ICE when building the Ada RTS)

PR middle-end/17746
* expr.c (get_inner_reference): Add 'keep_aligning' parameter.
Break on aligning VIEW_CONVERT_EXPR nodes on STRICT_ALIGNMENT
platforms only if keep_aligning is true.
(expand_assignment): Adjust call to get_inner_reference.
(expand_expr_addr_expr_1): Likewise.
(expand_expr_real_1): Likewise.
* dojump.c (do_jump): Likewise.
* dwarf2out.c (loc_descriptor_from_tree_1): Likewise.
* fold-const.c (optimize_bit_field_compare): Likewise.
(decode_field_reference): Likewise.
(split_address_to_core_and_offset): Likewise.
* tree-ssa-loop-ivopts.c (split_address_cost): Likewise.
* tree.h (get_inner_reference): Adjust prototype.

ada/
* trans.c (Attribute_to_gnu): Adjust call to get_inner_reference.
* utils2.c (build_unary_op): Likewise.

From-SVN: r92550

19 years agore PR middle-end/17746 (ICE when building the Ada RTS)
Eric Botcazou [Thu, 23 Dec 2004 13:02:33 +0000 (14:02 +0100)]
re PR middle-end/17746 (ICE when building the Ada RTS)

PR middle-end/17746
* expr.c (get_inner_reference): Add 'keep_aligning' parameter.
Break on aligning VIEW_CONVERT_EXPR nodes on STRICT_ALIGNMENT
platforms only if keep_aligning is true.
(expand_assignment): Adjust call to get_inner_reference.
(expand_expr_addr_expr_1): Likewise.
(expand_expr_real_1): Likewise.
* dojump.c (do_jump): Likewise.
* dwarf2out.c (loc_descriptor_from_tree_1): Likewise.
* fold-const.c (optimize_bit_field_compare): Likewise.
(decode_field_reference): Likewise.
(split_address_to_core_and_offset): Likewise.
* tree-ssa-loop-ivopts.c (split_address_cost): Likewise.
* expr.h (get_inner_reference): Adjust prototype.

ada/
* trans.c (Attribute_to_gnu): Adjust call to get_inner_reference.
* utils2.c (build_unary_op): Likewise.

From-SVN: r92549

19 years agoi386.c (override_options): Revert last change wrt fancy 387 math.
Richard Henderson [Thu, 23 Dec 2004 10:38:14 +0000 (02:38 -0800)]
i386.c (override_options): Revert last change wrt fancy 387 math.

        * config/i386/i386.c (override_options): Revert last change
        wrt fancy 387 math.

From-SVN: r92547

19 years agoalpha.md (one_cmpl<mode>2, [...]): New macroized vector operate patterns.
Richard Henderson [Thu, 23 Dec 2004 10:32:42 +0000 (02:32 -0800)]
alpha.md (one_cmpl<mode>2, [...]): New macroized vector operate patterns.

        * config/alpha/alpha.md (one_cmpl<mode>2, and<mode>3, andnot<mode>3,
        ior<mode>3, iornot<mode>3, xor<mode>3, xornot<mode>3): New macroized
        vector operate patterns.

From-SVN: r92545

19 years agotarget-supports.exp (check_effective_target_vect_no_align): Remove i?86 and x86-64.
Richard Henderson [Thu, 23 Dec 2004 10:25:45 +0000 (02:25 -0800)]
target-supports.exp (check_effective_target_vect_no_align): Remove i?86 and x86-64.

        * lib/target-supports.exp (check_effective_target_vect_no_align):
        Remove i?86 and x86-64.

From-SVN: r92544

19 years agoi386.c (ix86_expand_vector_move): Tidy.
Richard Henderson [Thu, 23 Dec 2004 10:20:04 +0000 (02:20 -0800)]
i386.c (ix86_expand_vector_move): Tidy.

        * config/i386/i386.c (ix86_expand_vector_move): Tidy.
        (ix86_expand_vector_move_misalign): New.
        (ix86_misaligned_mem_ok): Remove.
        (TARGET_VECTORIZE_MISALIGNED_MEM_OK): Remove.
        * config/i386/i386-protos.h: Update.
        * config/i386/i386.md (SSEMODEI): Rename from SSEINT16.
        (MMXMODEI): Rename from MMXINT8.
        (SSEMODE, MMXMODE, movmisalign<mode>): New.

From-SVN: r92543

19 years agore PR c++/16405 (Temporary aggregate copy not elided)
Mark Mitchell [Thu, 23 Dec 2004 08:14:33 +0000 (08:14 +0000)]
re PR c++/16405 (Temporary aggregate copy not elided)

PR c++/16405
* gimplify.c (gimplify_modify_expr_rhs): Handle
INDIRECT_REF/ADDR_EXPR combinations.

PR c++/16405
* g++.dg/opt/temp1.C: New test.

From-SVN: r92539

19 years agoalpha.c (alpha_expand_mov): Split out ...
Richard Henderson [Thu, 23 Dec 2004 08:08:59 +0000 (00:08 -0800)]
alpha.c (alpha_expand_mov): Split out ...

        * config/alpha/alpha.c (alpha_expand_mov): Split out ...
        (alpha_expand_movmisalign): ... misaligned vector support.
        (TARGET_VECTORIZE_MISALIGNED_MEM_OK): Remove.
        * config/alpha/alpha-protos.h: Update.
        * config/alpha/alpha.md (VEC): New macro.
        (movv8qi, movv4hi, movv2si): Compress with VEC.
        (movv8qi_fix, movv4hi_fix, movv2si_fix): Likewise.
        (movv8qi_nofix, movv4hi_nofix, movv2si_nofix): Likewise.
        (movmisalign<mode>): New.

From-SVN: r92538

19 years agooptabs.h (OTI_movmisalign, [...]): New.
Richard Henderson [Thu, 23 Dec 2004 07:58:41 +0000 (23:58 -0800)]
optabs.h (OTI_movmisalign, [...]): New.

        * optabs.h (OTI_movmisalign, movmisalign_optab): New.
        * optabs.c (init_optabs): Create it.
        * genopinit.c (optabs): Initialize it.
        * expr.c (expand_expr_real_1) <MISALIGNED_INDIRECT_REF>: Use it.
        * tree-vectorizer.c (vect_supportable_dr_alignment): Likewise.
        * target-def.h (TARGET_VECTORIZE_MISALIGNED_MEM_OK): Remove.
        * target.h (vectorize.misaligned_mem_ok): Remove.
        * targhooks.c (default_vect_misaligned_mem_ok): Remove.
        * doc/md.texi (movmisalign): New.
        * doc/tm.texi (TARGET_VECTORIZE_MISALIGNED_MEM_OK): Remove.

From-SVN: r92537

19 years agoemmintrin.h (_mm_loadh_pd): Don't cast pointer arg to __v2si.
Richard Henderson [Thu, 23 Dec 2004 07:49:24 +0000 (23:49 -0800)]
emmintrin.h (_mm_loadh_pd): Don't cast pointer arg to __v2si.

        * config/i386/emmintrin.h (_mm_loadh_pd): Don't cast pointer arg
        to __v2si.
        (_mm_storeh_pd, _mm_loadl_pd, _mm_storel_pd): Likewise.
        * config/i386/i386.c (ix86_init_mmx_sse_builtins): Use double* or
        const double* for __builtin_ia32_loadhpd, __builtin_ia32_loadlpd,
        __builtin_ia32_storehpd, __builtin_ia32_storelpd.
        (ix86_expand_builtin): Update to match.
        (ix86_expand_vector_init): Use sse2_loadlpd.
        * config/i386/i386.md (vec_setv2df): Use sse2_loadlpd, sse2_loadhpd.
        (vec_extractv2df): Use sse2_storelpd, sse2_storehpd.
        (sse2_storehpd, sse2_loadhpd, sse2_storelpd, sse2_loadlpd): New.
        (sse2_movhpd): Remove.

From-SVN: r92536

19 years agore PR target/18751 (ICE in expr.c:5083, profiledbootstrap)
Alan Modra [Thu, 23 Dec 2004 07:34:45 +0000 (07:34 +0000)]
re PR target/18751 (ICE in expr.c:5083, profiledbootstrap)

PR target/18751
* config/rs6000/rs6000.c (legitimate_lo_sum_address_p): Return
false for anything larger than 32 bits in 32-bit code.

From-SVN: r92535

19 years agoi386.md (btsq, btrq, btcq): Fix modes.
Richard Henderson [Thu, 23 Dec 2004 07:23:31 +0000 (23:23 -0800)]
i386.md (btsq, btrq, btcq): Fix modes.

        * config/i386/i386.md (btsq, btrq, btcq): Fix modes.
        (bt peepholes): Likewise.

From-SVN: r92534

19 years ago* varasm.c (force_const_mem): Call set_mem_align.
Richard Henderson [Thu, 23 Dec 2004 07:13:05 +0000 (23:13 -0800)]
* varasm.c (force_const_mem): Call set_mem_align.

From-SVN: r92533

19 years agopredicates.md (sse_comparison_operator): Fix typo in ieee test.
Richard Henderson [Thu, 23 Dec 2004 06:18:22 +0000 (22:18 -0800)]
predicates.md (sse_comparison_operator): Fix typo in ieee test.

        * config/i386/predicates.md (sse_comparison_operator): Fix
        typo in ieee test.
        (arith_or_logical_operator): Downcase codes.

From-SVN: r92532

19 years agore PR target/18511 (cc1plus segfaults when compiling libstdc++-v3/src/localename.cc)
Kaz Kojima [Thu, 23 Dec 2004 04:53:48 +0000 (04:53 +0000)]
re PR target/18511 (cc1plus segfaults when compiling libstdc++-v3/src/localename.cc)

PR target/18511
* reload1.c (emit_output_reload_insns): Check if OLD is a hard
register before calling regno_clobbered_p.
* reload.c: Update comment for regno_clobbered_p.

From-SVN: r92531

19 years agoi386.c (override_options): Respect user disable of fancy 387 math, sse, mmx.
Richard Henderson [Thu, 23 Dec 2004 03:49:04 +0000 (19:49 -0800)]
i386.c (override_options): Respect user disable of fancy 387 math, sse, mmx.

        * config/i386/i386.c (override_options): Respect user disable of
        fancy 387 math, sse, mmx.
        (construct_container): Generate error if we need an sse regster
        and sse has been disabled.
        * config/i386/i386.h (TARGET_SWITCHES): Disabling sse also disables
        later sse generations.  Disabling mmx also disables 3dnow.

From-SVN: r92530

19 years agotree-inline.c (struct inline_data): Remove inlined_fns.
Daniel Berlin [Thu, 23 Dec 2004 02:50:24 +0000 (02:50 +0000)]
tree-inline.c (struct inline_data): Remove inlined_fns.

2004-12-22  Daniel Berlin  <dberlin@dberlin.org>

* tree-inline.c (struct inline_data): Remove inlined_fns.
(expand_call_inline): Remove dead code setting
inlined_fns.
(optimize_inline_calls): Remove dead code setting DECL_INLINED_FNS.
* tree.h (struct tree_decl): Remove inlined_fns.

From-SVN: r92529

19 years agore PR c++/18733 (friend rejected)
Giovanni Bajo [Thu, 23 Dec 2004 01:49:39 +0000 (01:49 +0000)]
re PR c++/18733 (friend rejected)

PR c++/18733
* pt.c (check_explicit_specialization): Use special logic to validate
befriended specializations.

PR c++/18733
* g++.dg/template/friend33.C: New testcase.

From-SVN: r92527