- 23 Dec, 2004 26 commits
-
-
PR c++/16405 * gimplify.c (gimplify_modify_expr_rhs): Handle INDIRECT_REF/ADDR_EXPR combinations. From-SVN: r92555
Mark Mitchell committed -
2004-12-23 Dale Johannesen <dalej@apple.com> * tree.c (iterative_hash_expr): Canonicalize builtins. From-SVN: r92553
Dale Johannesen committed -
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
Alexandre Oliva committed -
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
Alexandre Oliva committed -
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
Eric Botcazou committed -
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
Eric Botcazou committed -
* config/i386/i386.c (override_options): Revert last change wrt fancy 387 math. From-SVN: r92547
Richard Henderson committed -
* 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
Richard Henderson committed -
* lib/target-supports.exp (check_effective_target_vect_no_align): Remove i?86 and x86-64. From-SVN: r92544
Richard Henderson committed -
* 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
Richard Henderson committed -
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
Mark Mitchell committed -
* 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
Richard Henderson committed -
* 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
Richard Henderson committed -
* 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
Richard Henderson committed -
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
Alan Modra committed -
* config/i386/i386.md (btsq, btrq, btcq): Fix modes. (bt peepholes): Likewise. From-SVN: r92534
Richard Henderson committed -
From-SVN: r92533
Richard Henderson committed -
* config/i386/predicates.md (sse_comparison_operator): Fix typo in ieee test. (arith_or_logical_operator): Downcase codes. From-SVN: r92532
Richard Henderson committed -
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
Kaz Kojima committed -
* 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
Richard Henderson committed -
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
Daniel Berlin committed -
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
Giovanni Bajo committed -
From-SVN: r92525
Roger Sayle committed -
From-SVN: r92523
GCC Administrator committed -
From-SVN: r92520
Alan Modra committed -
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
Alan Modra committed
-
- 22 Dec, 2004 14 commits
-
-
2004-12-22 Daniel Berlin <dberlin@dberlin.org> * tree.h (DECL_PTA_ALIASVAR): Dead. (struct tree_decl): Remove alias_var field. From-SVN: r92515
Daniel Berlin committed -
* system.h (IN_RANGE): Restore HOST_WIDE_INT cast. * tree.h (IS_EXPR_CODE_CLASS): Do not use IN_RANGE. From-SVN: r92511
Nathan Sidwell committed -
From-SVN: r92504
Mark Mitchell committed -
* 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
Richard Henderson committed -
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
Richard Henderson committed -
From-SVN: r92494
Richard Kenner committed -
2004-12-22 Paolo Carlini <pcarlini@suse.de> * include/tr1/type_traits_fwd.h: New, forward declarations. * include/tr1/type_traits: Clean-up. * include/Makefile.am: Add. * include/Makefile.in: Regenerate. From-SVN: r92493
Paolo Carlini committed -
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
Mark Mitchell committed -
From-SVN: r92490
Janis Johnson committed -
* Makefile.in (install-common): Remove special-case code for when SPECS is defined. From-SVN: r92489
Mark Mitchell committed -
gcc/ 2004-12-22 Jan Beulich <jbeulich@novell.com> * config.gcc: Add dbxelf.h to NetWare's tm_file. * config/i386/netware-crt0.c: Prototype __init_environment and __deinit_environment prior to their definition. (__init_environment): Correct invokation of constructor function. * config/i386/netware.h (TARGET_OS_CPP_BUILTINS): Use builtin_define_std rather than builtin_define on IAPX386. * config/i386/nwld.h: Disable stabs debugging info with the linker this file supports. * config/i386/t-nwld (SHLIB_LINK): Do not use a temporary file for the output. Add -posix to the options as that is the more compatible mode. * gthr-nks.h: Formatting. (__gthread_mutex_init_function): Kill the dubious use of NX_MUTEX_RECURSIVE as it is now clear that the traditional mutexes were not meant to be recursive. (__gthread_recursive_mutex_t, __GTHREAD_RECURSIVE_MUTEX_INIT_FUNCTION, __gthread_recursive_mutex_init_function, __gthread_recursive_mutex_lock, __gthread_recursive_mutex_trylock, __gthread_recursive_mutex_unlock): New. gcc/testsuite/ 2004-12-22 Jan Beulich <jbeulich@novell.com> * gcc.dg/20040813-1.c: Skip for *-*-netware*. From-SVN: r92488
Jan Beulich committed -
* config/mips/t-linux64: Remove code that messed with $(SPECS). (MULTILIB_OPTIONS, MULTILIB_DIRNAMES, MULTILIB_OSDIRNAMES): Move n32 to the front. (MULTILIB_EXTRA_OPTS, CRTSTUFF_T_CFLAGS, CRTSTUFF_T_CFLAGS_S): Removed. * config/mips/linux64.h (DRIVER_SELF_SPECS): Don't handle -mabi-fake-default. (SUBTARGET_TARGET_SWITCHES): Likewise. From-SVN: r92487
Alexandre Oliva committed -
PR c++/18378 * call.c (convert_like_real): Do not permit the use of a copy constructor to copy a packed field. PR c++/17413 * decl.c (grokdeclarator): Return error_mark_node, not void_type_node, to indicate errors. * parser.c (cp_parser_template_parameter_list): Robustify. (cp_parser_template_parameter): Likewise. PR c++/19034 * tree.c (cp_tree_equal): Handle OVERLOAD. PR c++/18378 * g++.dg/ext/packed8.C: New test. PR c++/13268 * g++.dg/template/crash31.C: New test. PR c++/19034 * g++.dg/template/crash30.C: New test. From-SVN: r92486
Mark Mitchell committed -
* decl.c (define_label): Use POP_TIMEVAR_AND_RETURN. * name-lookup.c (pushdecl_class_level): Likewise. From-SVN: r92485
Volker Reichelt committed
-