1. 23 Dec, 2004 12 commits
  2. 22 Dec, 2004 16 commits
    • tree.h (DECL_PTA_ALIASVAR): Dead. · 44075220
      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. · 93880203
      	* 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
    • * rtti.c (emit_support_tinfos): Avoid using C99 semantics. · 5e001b48
      From-SVN: r92504
      Mark Mitchell committed
    • i386.md (truncdfsf2): Don't create stack temp when using sse math only. · 5b1f1e63
              * 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
    • [multiple changes] · ad50bc8d
      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
    • type_traits_fwd.h: New, forward declarations. · 821c5063
      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
    • re PR c++/18464 (error message about "non-lvalue in unary '&'" when using ?: operator) · dfb5c523
      	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
    • Makefile.in (install-common): Remove special-case code for when SPECS is defined. · e90f1b9d
      	* Makefile.in (install-common): Remove special-case code for when
      	SPECS is defined.
      
      From-SVN: r92489
      Mark Mitchell committed
    • config.gcc: Add dbxelf.h to NetWare's tm_file. · f199d860
      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
    • t-linux64: Remove code that messed with $(SPECS). · 340beeb5
      * 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
    • re PR c++/18378 (ICE when returning a copy of a packed member) · 943e3ede
      	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. · be99edf8
      	* decl.c (define_label): Use POP_TIMEVAR_AND_RETURN.
      	* name-lookup.c (pushdecl_class_level): Likewise.
      
      From-SVN: r92485
      Volker Reichelt committed
    • Daily bump. · df35e33c
      From-SVN: r92479
      GCC Administrator committed
  3. 21 Dec, 2004 12 commits
    • re PR c++/18984 (ICE in check_pointer_types_r) · af76441f
      2004-12-21  Andrew Pinski  <pinskia@physics.uc.edu>
      
              PR c++/18984
              * pointer-set.c (pointer_set_contains): Add back.
              * pointer-set.h (pointer_set_contains): Add back.
      
      2004-12-21  Andrew Pinski  <pinskia@physics.uc.edu>
      
              PR c++/18984
              * cp-gimplify.c (cp_genericize_r): Don't insert first but instead
              check to see if contains the pointer.  Insert the statement before
              returning.
      
      2004-12-21  Andrew Pinski  <pinskia@physics.uc.edu>
      
              PR C++/18984
              * g++.dg/eh/ctor3.C: New test.
      
      From-SVN: r92470
      Andrew Pinski committed
    • stabs-1.m: Allow section name to be quoted and assembly label to begin with '.LL'. · 697290b7
      	* objc.dg/stabs-1.m: Allow section name to be quoted and
      	assembly label to begin with '.LL'.
      
      From-SVN: r92469
      Eric Botcazou committed
    • gimplify.c (eval_save_expr): New. · b4830636
              * gimplify.c (eval_save_expr): New.
              (gimplify_one_sizepos): Use it.
              * stor-layout.c (layout_type): Unshare TYPE_MIN/MAX_VALUE.
      
      From-SVN: r92468
      Richard Henderson committed
    • * gcc.dg/vect/vect.exp · 1126bfdd
      	(check_effective_target_lp64_or_vect_no_align): New.
      	* gcc.dg/vect/vect-77.c: Use it.
      	* gcc.dg/vect/vect-78.c: Use it.
      
      From-SVN: r92467
      Janis Johnson committed
    • target-supports.exp (check_effective_target_vect_no_max, [...]): New. · eeea13c2
      	* lib/target-supports.exp
      	(check_effective_target_vect_no_max,
      	check_effective_target_vect_no_bitwise,
      	check_effective_target_vect_no_align): New.
      	* gcc.dg/vect/vect-13.c: Use them.
      	* gcc.dg/vect/vect-17.c: Ditto.
      	* gcc.dg/vect/vect-18.c: Ditto.
      	* gcc.dg/vect/vect-19.c: Ditto.
      	* gcc.dg/vect/vect-20.c: Ditto.
      	* gcc.dg/vect/vect-27.c: Ditto.
      	* gcc.dg/vect/vect-29.c: Ditto.
      	* gcc.dg/vect/vect-44.c: Ditto.
      	* gcc.dg/vect/vect-48.c: Ditto.
      	* gcc.dg/vect/vect-50.c: Ditto.
      	* gcc.dg/vect/vect-52.c: Ditto.
      	* gcc.dg/vect/vect-54.c: Ditto.
      	* gcc.dg/vect/vect-56.c: Ditto.
      	* gcc.dg/vect/vect-58.c: Ditto.
      	* gcc.dg/vect/vect-60.c: Ditto.
      	* gcc.dg/vect/vect-72.c: Ditto.
      	* gcc.dg/vect/vect-80.c: Ditto.
      
      From-SVN: r92466
      Janis Johnson committed
    • re PR c++/14075 (("foo") accepted as char[] initializer) · 7a8380ae
      cp:
      	PR c++/14075
      	* decl.c (check_initializer): Check string initializer of array is
      	not parenthesized.
      	* cp-tree.h (PAREN_STRING_LITERAL_P): New.
      	* semantics.c (finish_parenthesized_expr): Mark a STRING_CST.
      	* error.c (dump_expr): <STRING_CST case> Add parens, if needed.
      testsuite:
      	PR c++/14075
      	* g++.dg/init/string1.C: New.
      
      From-SVN: r92464
      Nathan Sidwell committed
    • system.c (IN_RANGE): Use plain unsigned, not unsigned HOST_WIDE_INT. · 38b3627d
      	* system.c (IN_RANGE): Use plain unsigned, not unsigned
      	HOST_WIDE_INT.
      	* tree.def (VOID_TYPE, INTEGER_TYPE, REAL_TYPE, COMPLEX_TYPE,
      	VECTOR_TYPE, OFFSET_TYPE, ENUMERAL_TYPE, BOOLEAN_TYPE, CHAR_TYPE,
      	POINTER_TYPE, REFERENCE_TYPE, METHOD_TYPE, FUNCTION_TYPE,
      	FILE_TYPE, ARRAY_TYPE, RECORD_TYPE, UNION_TYPE,
      	QUAL_UNION_TYPE): Reorder for better code efficiency.
      	(CONST_DECL, TYPE_DECL, VAR_DECL, FIELD_DECL, PARM_DECL): Likewise.
      	(INDIRECT_REF, ALIGN_INDIRECT_REF, MISALIGNED_INDIRECT_REF): Likewise.
      	* tree.h (INDIRECT_REF_P): Reorder checks for better optimization.
      	(IS_EXPR_CODE_CLASS): Use IN_RANGE.
      	(INTEGRAL_TYPE_P, FLOAT_TYPE_P): Reorder checks for better
      	optimization.
      
      	* cp/cp-tree.def (TEMPLATE_TYPE_PARM,
      	BOUND_TEMPLATE_TEMPLATE_PARM, TYPE_OF_TYPE, TYPENAME_TYPE): Reorder
      	for better code efficiency.
      	* cp/cp-tree.h (CLASS_TYPE_P): Short circuit IS_AGGR_TYPE check.
      	(CAN_HAVE_FULL_LANG_DECL_P): Reorder for better optimization.
      	(INTEGRAL_CODE_P, CP_INTEGRAL_TYPE_P,
      	INTEGRAL_OR_ENUMERATION_TYPE_P, SCALAR_TYPE_P,
      	CP_AGGREGATE_TYPE_P, TYPE_PTROB_P, TYPE_REF_OBJ_P,
      	TYPE_PTROBV_P): Likewise.
      
      From-SVN: r92463
      Nathan Sidwell committed
    • freebsd-spec.h: Use KSE pthread lib for -pthread. · 1763d000
      2004-12-21  David O'Brien  <obrien@FreeBSD.org>
      	* config/freebsd-spec.h:  Use KSE pthread lib for -pthread.
      
      From-SVN: r92462
      David O'Brien committed
    • re PR c++/18975 (Copying objects with mutable non-static data members) · fd749a60
      cp:
      	PR c++/18975
      	* method.c (do_build_copy_constructor): Refactor. Don't const
      	qualify a mutable field.
      	(do_build_assign_ref): Likewise.
      testsuite:
      	PR c++/18975
      	* g++.dg/other/synth1.C: New.
      
      From-SVN: r92461
      Nathan Sidwell committed
    • re PR c/18963 (static and nested declarations cause an ice) · ebef4d30
      2004-12-21  James A. Morrison  <phython@gcc.gnu.org>
      
             PR c/18963
             * c-decl.c (pushdecl): Remove block trying to merge static function
             declarations at block scope to file scope declarations.
      
      testsuite:
              PR c/18963
              * gcc.dg/pr18963-1.c: New test.
      
      From-SVN: r92460
      James A. Morrison committed
    • re PR c/18596 (ICE in make_decl_rtl) · 6f17bbcf
      2004-12-19  James A. Morrison  <phython@gcc.gnu.org>
      
             PR c/18596
             * c-parse.in (initdcl): Don't process a declaration if start_decl fails.
             (notype_initdcl):  Don't process a declaration if start_decl fails.
             * c-decl.c (start_decl): Fail if grokdeclarator fails.
             (grokdeclarator): Fail if a function definition has an invalid storage
             class.
             * c-typeck.c (start_init): Treat error_mark_node the same as 0.
      
      testsuite:
              PR c/18596
              * gcc.dg/funcdef-storage-1.c (foo): Remove.
              * gcc.dg/pr18596-1.c: Use dg-error.
              (dg-options): Use -fno-unit-at-a-time.
              * gcc.dg/pr18596-2.c: New test.
              * gcc.dg/pr18596-3.c: New test.
      
      From-SVN: r92459
      James A. Morrison committed
    • i386.c (x86_sse_split_regs): Rename from x86_sse_partial_regs. · 41afe4ef
              * config/i386/i386.c (x86_sse_split_regs): Rename from
              x86_sse_partial_regs.
              * config/i386/i386.h (x86_sse_split_regs): Likewise.
              (TARGET_SSE_SPLIT_REGS): Rename from TARGET_SSE_PARTIAL_REGS.
              * config/i386/i386.md (*): Update to match.  Remove two
              floatsisf splitters that use it.
      
      From-SVN: r92458
      Richard Henderson committed