aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2004-12-24re PR target/19142 (ppc-darwin no longer builds)Alan Modra2-1/+8
PR target/19142 * config/rs6000/rs6000.c (legitimate_lo_sum_address_p): Allow DFmode for 32-bit again. From-SVN: r92583
2004-12-24re PR libfortran/19071 (complex formatted output has too many items)Bud Davis2-0/+20
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
2004-12-24Daily bump.GCC Administrator1-1/+1
From-SVN: r92580
2004-12-23gfortran.texi: Fix typo.Steven G. Kargl2-1/+5
2004-12-23 Steven G. Kargl <kargls@comcast.net> * gfortran.texi: Fix typo. From-SVN: r92575
2004-12-23reload.c (regno_clobbered_p): Add a gcc_assert that regno refers to a hard ↵Roger Sayle2-2/+12
register. * reload.c (regno_clobbered_p): Add a gcc_assert that regno refers to a hard register. From-SVN: r92574
2004-12-23re PR c++/17595 (Unfriendly error message/rejects legal #pragmas in the ↵Mark Mitchell2-0/+11
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
2004-12-23re PR c++/17595 (Unfriendly error message/rejects legal #pragmas in the ↵Mark Mitchell2-0/+10
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
2004-12-23gimplify.c (gimplify_modify_expr_rhs): Use types_compatible_p.Mark Mitchell4-2/+15
* gimplify.c (gimplify_modify_expr_rhs): Use types_compatible_p. * g++.dg/opt/temp1.C: Make memcpy actually copy bytes. From-SVN: r92571
2004-12-23Fixed incorrect PR number.Alexandre Oliva1-1/+1
From-SVN: r92569
2004-12-23* gcc.dg/empty2.c: Add missing dg-warning.Alexandre Oliva2-1/+5
From-SVN: r92566
2004-12-23genrecog.c (did_you_mean_codes): New.DJ Delorie2-0/+24
* genrecog.c (did_you_mean_codes): New. (compute_predicate_codes): Fail unmatched codes. From-SVN: r92565
2004-12-23re PR c++/17413 (local classes as template argument)Mark Mitchell5-4/+20
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
2004-12-23mips.h (TARGET_CPU_CPP_BUILTINS): Add assert for machine=mips for !TARGET_IRIX.Eric Christopher5-4/+13
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
2004-12-23Fix ChangeLog entry from 2004-12-22 from 'dg-xfail-if' to 'dg-skip-if'Janis Johnson1-1/+1
From-SVN: r92558
2004-12-23* g++.dg/template/crash31.C: Correct embedded PR number.Mark Mitchell3-2/+6
From-SVN: r92557
2004-12-23* cvt.c (convert_to_void): Fix typo in comment.Mark Mitchell2-1/+5
From-SVN: r92556
2004-12-23re PR c++/16405 (Temporary aggregate copy not elided)Mark Mitchell2-0/+6
PR c++/16405 * gimplify.c (gimplify_modify_expr_rhs): Handle INDIRECT_REF/ADDR_EXPR combinations. From-SVN: r92555
2004-12-23tree.c (iterative_hash_expr): Canonicalize builtins.Dale Johannesen2-1/+17
2004-12-23 Dale Johannesen <dalej@apple.com> * tree.c (iterative_hash_expr): Canonicalize builtins. From-SVN: r92553
2004-12-23re PR c++/18962 (specialization of template class with inner template ↵Alexandre Oliva4-0/+37
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
2004-12-23re PR target/16819 (ICE with empty struct as arg)Alexandre Oliva4-2/+28
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
2004-12-23re PR middle-end/17746 (ICE when building the Ada RTS)Eric Botcazou2-2/+3
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
2004-12-23re PR middle-end/17746 (ICE when building the Ada RTS)Eric Botcazou9-20/+58
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
2004-12-23i386.c (override_options): Revert last change wrt fancy 387 math.Richard Henderson2-2/+6
* config/i386/i386.c (override_options): Revert last change wrt fancy 387 math. From-SVN: r92547
2004-12-23alpha.md (one_cmpl<mode>2, [...]): New macroized vector operate patterns.Richard Henderson2-0/+61
* 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
2004-12-23target-supports.exp (check_effective_target_vect_no_align): Remove i?86 and ↵Richard Henderson2-3/+6
x86-64. * lib/target-supports.exp (check_effective_target_vect_no_align): Remove i?86 and x86-64. From-SVN: r92544
2004-12-23i386.c (ix86_expand_vector_move): Tidy.Richard Henderson4-33/+175
* 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
2004-12-23re PR c++/16405 (Temporary aggregate copy not elided)Mark Mitchell4-0/+77
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
2004-12-23alpha.c (alpha_expand_mov): Split out ...Richard Henderson4-119/+63
* 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
2004-12-22optabs.h (OTI_movmisalign, [...]): New.Richard Henderson11-34/+59
* 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
2004-12-22emmintrin.h (_mm_loadh_pd): Don't cast pointer arg to __v2si.Richard Henderson4-73/+165
* 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
2004-12-23re PR target/18751 (ICE in expr.c:5083, profiledbootstrap)Alan Modra2-1/+8
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
2004-12-22i386.md (btsq, btrq, btcq): Fix modes.Richard Henderson2-12/+15
* config/i386/i386.md (btsq, btrq, btcq): Fix modes. (bt peepholes): Likewise. From-SVN: r92534
2004-12-22* varasm.c (force_const_mem): Call set_mem_align.Richard Henderson2-0/+5
From-SVN: r92533
2004-12-22predicates.md (sse_comparison_operator): Fix typo in ieee test.Richard Henderson2-3/+9
* config/i386/predicates.md (sse_comparison_operator): Fix typo in ieee test. (arith_or_logical_operator): Downcase codes. From-SVN: r92532
2004-12-23re PR target/18511 (cc1plus segfaults when compiling ↵Kaz Kojima3-2/+11
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
2004-12-22i386.c (override_options): Respect user disable of fancy 387 math, sse, mmx.Richard Henderson6-27/+72
* 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
2004-12-23tree-inline.c (struct inline_data): Remove inlined_fns.Daniel Berlin3-32/+8
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
2004-12-23re PR c++/18733 (friend rejected)Giovanni Bajo4-1/+32
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
2004-12-23* tree-browser.c: Remove obsolete #ifdef HOST_EBCDIC code.Roger Sayle2-8/+4
From-SVN: r92525
2004-12-23Daily bump.GCC Administrator1-1/+1
From-SVN: r92523
2004-12-23fix overlong lineAlan Modra1-5/+5
From-SVN: r92520
2004-12-23re PR target/18896 (addressing split complex parm)Alan Modra2-3/+42
PR target/18896 * function.c (split_complex_args): Set DECL_ARTIFICIAL and DECL_IGNORED_P for real and imaginary parts if the parm is addressable. (assign_parms_unsplit_complex): If parm addressable, save real and imaginary parts to a stack temp. Pass assign_parm_data_all. (assign_parms): Adjust assign_parms_unsplit_complex call. From-SVN: r92519
2004-12-22tree.h (DECL_PTA_ALIASVAR): Dead.Daniel Berlin2-5/+5
2004-12-22 Daniel Berlin <dberlin@dberlin.org> * tree.h (DECL_PTA_ALIASVAR): Dead. (struct tree_decl): Remove alias_var field. From-SVN: r92515
2004-12-22system.h (IN_RANGE): Restore HOST_WIDE_INT cast.Nathan Sidwell3-2/+7
* system.h (IN_RANGE): Restore HOST_WIDE_INT cast. * tree.h (IS_EXPR_CODE_CLASS): Do not use IN_RANGE. From-SVN: r92511
2004-12-22* rtti.c (emit_support_tinfos): Avoid using C99 semantics.Mark Mitchell2-5/+9
From-SVN: r92504
2004-12-22i386.md (truncdfsf2): Don't create stack temp when using sse math only.Richard Henderson2-160/+204
* config/i386/i386.md (truncdfsf2): Don't create stack temp when using sse math only. Use truncdfsf2_with_temp. (truncdfsf2_with_temp): New. (truncdfsf_fast_i387): Rename from truncdfsf2_noop. Add memory output alternative. (truncdfsf_mixed): Rename from truncdfsf2_1_sse. Compress duplicate alternatives. (truncdfsf_fast_sse): Rename from truncdfsf2_2. Remove f alternative. (truncdfsf2_3, truncdfsf2_sse_only): Remove. (truncdfsf_i387): Rename from truncdfsf2_1. Compress duplicates. (truncdfsf_fast_mixed): New. (truncdfsf splitters): Remove all except the 387 load/store split. (truncxfsf2_1, truncxfdf2_1): Unify enable constraint with respect to TARGET_SSE2, TARGET_80387, TARGET_SSE_MATH and TARGET_MIX_SSE_I387. (*truncxf{s,d}f2_1): Rename to *truncxf{s,d}f2_mixed. (truncxf{s,d}f2_noop) Rename to truncxf{d,s}f2_i387_noop. (*truncxf{s,d}f2_i387): New patterns. (*truncxf{s,d}f2_2): Rename to *truncxf{s,d}f2_i387_1. (truncxf{s,d}f2, fmod{s,d}f3, drem{s,d}f3, log1p{s,d}f2, rint{s,d}f2, floor{s,d}f2, ceil{s,d}f2, btrunc{s,d}f2, nearbyint{s,d}f2): Use renamed patterns. Co-Authored-By: Uros Bizjak <uros@kss-loka.si> From-SVN: r92498
2004-12-22[multiple changes]Richard Henderson7-36/+77
2004-12-22 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> * trans.c (mark_visited): Set TYPE_SIZES_GIMPLIFIED. 2004-12-22 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> * tree.h (TYPE_SIZES_GIMPLIFIED): New. * function.c (gimplify_parm_type): Don't gimplify type if already done. * gimplify.c (gimplify_decl_expr): Likewise. (gimplify_type_sizes): Set TYPE_SIZES_GIMPLIFIED. Examine nested array types. 2004-12-22 Richard Henderson <rth@redhat.com> * gimplify.c (eval_save_expr): Remove. (gimplify_one_sizepos): Unshare expr before gimplifying. * stor-layout.c (variable_size): Revert 2004-12-19 change. (layout_decl): Revert 2004-12-18 change. (layout_type): Revert 2004-12-21 change. From-SVN: r92495
2004-12-22* tree-sra.c (type_can_be_decomposed_p): Reject variable sized types.Richard Kenner2-1/+6
From-SVN: r92494
2004-12-22re PR c++/18464 (error message about "non-lvalue in unary '&'" when using ?: ↵Mark Mitchell10-32/+181
operator) PR c++/18464 * call.c (build_this): In templates, do not bother with build_unary_op. * typeck.c (unary_complex_lvalue): In a template, always refuse simplifications. PR c++/18492 * cp-gimplify.c (cp_genericize): Relax assertion. PR c++/11224 * cvt.c (convert_to_void): Warn about unused values. PR c++/18257 * rtti.c (emit_support_tinfos): On systems without weak symbols, emit the runtime library type-info objects as non-COMDAT. PR c++/18464 * g++.dg/template/cond5.C: New test. PR c++/18492 * g++.dg/inherit/thunk3.C: New test. PR c++/11224 * g++.dg/warn/Wunused-9.C: New test. From-SVN: r92491
2004-12-22* lib/gcc-dg.exp (dg-xfail-if): Fix the flags compared against.Janis Johnson2-3/+28
From-SVN: r92490