1. 18 Feb, 2006 16 commits
    • re PR tree-optimization/25680 (Store CCP does not understand REALPART_EXPR < COMPLEX_CST >) · add9e6d3
      2006-02-18  Andrew Pinski  <pinskia@physics.uc.edu>
      
              PR tree-opt/25680
              * tree-ssa-ccp.c (ccp_fold): Handle store CCP of REALPART_EXPR and
              IMAGPART_EXPR.
      2006-02-18  Andrew Pinski  <pinskia@physics.uc.edu>
      
              PR tree-opt/25680
              * testsuite/gcc.dg/tree-ssa/complex-3.c: New test.
      
      From-SVN: r111251
      Andrew Pinski committed
    • 20031106-1.c: Fix the final scan of the variable to take into account the variable name in... · c8ca29f1
      2006-02-18  Andrew Pinski  <pinskia@physics.uc.edu>
      
              * gcc.dg/tree-ssa/20031106-1.c: Fix the final scan of the
              variable to take into account the variable name in the
              function header.
              * gcc.dg/tree-ssa/20031106-2.c: Likewise.
      
      From-SVN: r111250
      Andrew Pinski committed
    • tree-flow.h (struct var_ann_d): Rename field is_alias_tag to is_aliased. · faf7c678
      
      	* tree-flow.h (struct var_ann_d): Rename field is_alias_tag to
      	is_aliased.
      	Update all users.
      
      From-SVN: r111249
      Diego Novillo committed
    • re PR middle-end/26334 (ICE in lhd_set_decl_assembler_name) · 3f2de3dc
      	PR middle-end/26334
      	* stmt.c (decl_overlaps_hard_reg_set_p): Use DECL_HARD_REGISTER
      	instead of DECL_REGISTER.
      
      	* gcc.c-torture/compile/20060217-1.c: New test.
      	* gcc.dg/20060218-1.c: New test.
      
      From-SVN: r111247
      Jakub Jelinek committed
    • trans-stmt.c (struct temporary_list): Delete. · 3891cee2
      
      	* trans-stmt.c (struct temporary_list): Delete.
      	(gfc_trans_where_2): Major reorganization.  Remove no longer needed
      	TEMP argument.  Allocate and deallocate the control mask and
      	pending control mask locally.
      	(gfc_trans_forall_1): Delete TEMP local variable, and update
      	call to gfc_trans_where_2.  No need to deallocate arrays after.
      	(gfc_evaluate_where_mask): Major reorganization.  Change return
      	type to void.  Pass in parent execution mask, MASK, and two
      	already allocated mask arrays CMASK and PMASK.  On return
      	CMASK := MASK & COND, PMASK := MASK & !COND.  MASK, CMASK and
      	CMASK may all be NULL, or refer to the same temporary arrays.
      	(gfc_trans_where): Update call to gfc_trans_where_2.  We no
      	longer need a TEMP variable or to deallocate temporary arrays
      	allocated by gfc_trans_where_2.
      
      From-SVN: r111245
      Roger Sayle committed
    • re PR ada/13408 (acats numeric tests cxg* fail on pa/hpux) · 4ea42eba
      	PR ada/13408
      	* pa.h (WIDEST_HARDWARE_FP_SIZE): Define.
      
      From-SVN: r111241
      Olivier Hainque committed
    • gfortran.h (gfc_add_attribute): Change uint to unsigned int. · ef6a0629
      2006-02-18   Danny Smith  <dannysmith@users.sourceforeg.net>
      
          * gfortran.h (gfc_add_attribute): Change uint to unsigned int.
          * symbol.c (gfc_add_attribute): Likewise for definition.
          * resolve.c (resolve_global_procedure): Likewise for variable 'type'.
      
      From-SVN: r111239
      Danny Smith committed
    • re PR target/26189 (Bug in vendor /usr/include/net/if.h needs fixincluding on HPUX) · e084430d
      	PR target/26189
      	* inclhack.def (hpux_spu_info): New.
      	* fixincl.x: Regenerate
      
      From-SVN: r111237
      Steve Ellcey committed
    • re PR target/24837 (move dynamic linker names out of LINK_SPEC and into new DYNAMIC_LINKER) · 7bd85ce0
      	PR target/24837
      	* config.gcc: Define UCLIBC_DEFAULT to 0 or 1.
      	* opth-gen.awk: Handle Var and InverseMask together.
      	* config/linux.opt (muclibc, mglibc): Use Var(linux_uclibc).
      	* config/linux.h: Use #if not #ifdef for testing UCLIBC_DEFAULT.
      	(TARGET_C99_FUNCTIONS): Test OPTION_GLIBC not TARGET_GLIBC.
      	(CHOOSE_DYNAMIC_LINKER): Give an error for -mglibc and -muclibc
      	used together.
      	(UCLIBC_DYNAMIC_LINKER32, UCLIBC_DYNAMIC_LINKER64,
      	LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64): Define.
      	* config/alpha/linux-elf.h (GLIBC_DYNAMIC_LINKER,
      	UCLIBC_DYNAMIC_LINKER, CHOOSE_DYNAMIC_LINKER,
      	LINUX_DYNAMIC_LINKER): Define.
      	(ELF_DYNAMIC_LINKER): Define to LINUX_DYNAMIC_LINKER.
      	* config/alpha/linux.h (TARGET_C99_FUNCTIONS): Define to
      	TARGET_GLIBC.
      	* config/cris/linux.h (GLIBC_DYNAMIC_LINKER): Define.
      	(CRIS_LINK_SUBTARGET_SPEC): Pass a -dynamic-linker option.
      	* config/frv/linux.h (GLIBC_DYNAMIC_LINKER): Define.
      	(LINK_SPEC): Use LINUX_DYNAMIC_LINKER.
      	(TARGET_C99_FUNCTIONS): Don't define.
      	* config/i386/linux.h (DYNAMIC_LINKER): Rename to
      	GLIBC_DYNAMIC_LINKER.
      	(SUBTARGET_EXTRA_SPECS): Use LINUX_DYNAMIC_LINKER.
      	* config/i386/linux64.h (GLIBC_DYNAMIC_LINKER32,
      	GLIBC_DYNAMIC_LINKER64): Define.
      	(LINK_SPEC): Use LINUX_DYNAMIC_LINKER32 and
      	LINUX_DYNAMIC_LINKER64.
      	* config/ia64/linux.h (GLIBC_DYNAMIC_LINKER): Define.
      	(LINK_SPEC): Use LINUX_DYNAMIC_LINKER.
      	* config/m32r/linux.h (GLIBC_DYNAMIC_LINKE): Define.
      	(LINK_SPEC): Use LINUX_DYNAMIC_LINKER.
      	* config/m68k/linux.h (GLIBC_DYNAMIC_LINKER): Define.
      	(LINK_SPEC): Use LINUX_DYNAMIC_LINKER.
      	* config/mips/linux64.h (GLIBC_DYNAMIC_LINKER32,
      	GLIBC_DYNAMIC_LINKER64, GLIBC_DYNAMIC_LINKERN32,
      	UCLIBC_DYNAMIC_LINKERN32, LINUX_DYNAMIC_LINKERN32): Define.
      	(LINK_SPEC): Use LINUX_DYNAMIC_LINKERN32, LINUX_DYNAMIC_LINKER64
      	and LINUX_DYNAMIC_LINKER32.
      	* config/mn10300/linux.h (GLIBC_DYNAMIC_LINKER): Define.
      	(LINK_SPEC): Use LINUX_DYNAMIC_LINKER.
      	* config/pa/pa-linux.h (GLIBC_DYNAMIC_LINKER): Define.
      	(LINK_SPEC): Use LINUX_DYNAMIC_LINKER.
      	* config/rs6000/linux.h (TARGET_C99_FUNCTIONS): Define to
      	TARGET_GLIBC.
      	* config/rs6000/linux64.h (TARGET_C99_FUNCTIONS): Likewise.
      	(GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64,
      	UCLIBC_DYNAMIC_LINKER32, UCLIBC_DYNAMIC_LINKER64,
      	CHOOSE_DYNAMIC_LINKER, CHOOSE_DYNAMIC_LINKER,
      	LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64): Define.
      	(LINK_OS_LINUX_SPEC32): Use LINUX_DYNAMIC_LINKER32.
      	(LINK_OS_LINUX_SPEC64): Use LINUX_DYNAMIC_LINKER64.
      	* config/rs6000/sysv4.h (GLIBC_DYNAMIC_LINKER,
      	UCLIBC_DYNAMIC_LINKER, CHOOSE_DYNAMIC_LINKER,
      	LINUX_DYNAMIC_LINKER): Define.
      	(LINK_OS_LINUX_SPEC): Use LINUX_DYNAMIC_LINKE.
      	* config/s390/linux.h (GLIBC_DYNAMIC_LINKER32,
      	GLIBC_DYNAMIC_LINKER64): Define.
      	(LINK_SPEC): Use LINUX_DYNAMIC_LINKER32 and
      	LINUX_DYNAMIC_LINKER64.
      	* config/sh/linux.h (GLIBC_DYNAMIC_LINKER): Define.
      	(SUBTARGET_LINK_SPEC): Use LINUX_DYNAMIC_LINKER.
      	* config/sparc/linux.h (GLIBC_DYNAMIC_LINKER,
      	UCLIBC_DYNAMIC_LINKER, CHOOSE_DYNAMIC_LINKER,
      	LINUX_DYNAMIC_LINKER): Define.
      	(LINK_SPEC): Use LINUX_DYNAMIC_LINKER.
      	(TARGET_C99_FUNCTIONS): Define to TARGET_GLIBC.
      	* config/sparc/linux64.h (GLIBC_DYNAMIC_LINKER32,
      	GLIBC_DYNAMIC_LINKER64, UCLIBC_DYNAMIC_LINKER32,
      	UCLIBC_DYNAMIC_LINKER64, CHOOSE_DYNAMIC_LINKER,
      	LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64): Define.
      	(LINK_ARCH32_SPEC): Use LINUX_DYNAMIC_LINKER32.
      	(LINK_ARCH64_SPEC, LINK_SPEC): Use LINUX_DYNAMIC_LINKER64.
      	(TARGET_C99_FUNCTIONS): Define to TARGET_GLIBC.
      	* config/xtensa/linux.h (GLIBC_DYNAMIC_LINKER): Define.
      	(LINK_SPEC): Use LINUX_DYNAMIC_LINKER.
      	* doc/invoke.texi (-muclibc): Remove caveat about supported
      	targets.
      
      testsuite:
      	* gcc.dg/glibc-uclibc-1.c, gcc.dg/glibc-uclibc-2.c: New tests.
      
      From-SVN: r111235
      Joseph Myers committed
    • cpp.texi (__TIMESTAMP__): Document. · be8ac3e2
      2006-02-17  Grigory Zagorodnev <grigory_zagorodnev@linux.intel.com>
      
      gcc/ChangeLog:
           * doc/cpp.texi (__TIMESTAMP__): Document.
      
      libcpp/ChangeLog:
           * macro.c (_cpp_builtin_macro_text): Handle BT_TIMESTAMP.
           * files.c (_cpp_get_file_stat): New function.
           * include/cpplib.h (builtin_type): Add BT_TIMESTAMP.
           * init.c (builtin_array): Add support for __TIMESTAMP__/BT_TIMESTAMP.
           * internal.h (_cpp_get_file_stat): Prototype.
           (struct cpp_buffer): Add timestamp.
      
      gcc/testsuite/ChangeLog:
           * gcc.dg/cpp/undef3.c: New test.
           * gcc.dg/cpp/trad/builtins2.c: New test.
      
      From-SVN: r111232
      Grigory Zagorodnev committed
    • re PR c++/26266 (Trouble with static const data members in template classes) · 8d08b2d7
      	PR c++/26266
      	* g++.dg/template/static22.C: New test.
      	* g++.dg/template/static23.C: New test.
      	* g++.dg/template/static24.C: New test.
      	* g++.dg/template/non-dependent13.C: New test.
      	* g++.dg/init/member1.C: Tweak error markers.
      
      From-SVN: r111230
      Mark Mitchell committed
    • re PR c++/26266 (Trouble with static const data members in template classes) · d174af6c
      	PR c++/26266
      	* cp-tree.h (cp_finish_decl): Adjust declaration.
      	(grokbitfield): Likewise.
      	(finish_static_data_member_decl): Likewise.
      	* init.c (constant_value_1): Ensure processing_template_decl when
      	folding non-dependent initializers for static data members of
      	dependent types.  Return error_mark_node for erroneous
      	initailizers.
      	* class.c (get_vtable_decl): Use finish_decl, not cp_finish_decl.
      	* decl.c (cp_make_fname_decl): Adjust call to cp_finish_decl.
      	(cp_finish_decl): Add init_const_expr_p parameter.  Set
      	DECL_INITIALIZED_BY_CONSTANT_EXPRESSION_P here.
      	(finish_decl): Adjust call to cp_finish_decl.
      	(compute_array_index_type): Robustify.
      	(start_method): Use finish_decl, not cp_finish_decl.
      	* rtti.c (emit_tinfo_decl): Likewise.
      	* except.c (initialize_handler_parm): Adjust call to
      	cp_finish_decl.
      	(expand_start_catch_block): Likewise.
      	* cvt.c (build_up_reference): Adjust call to cp_finish_decl.
      	* pt.c (instantiate_class_template): Adjust call to
      	finish_static_data_member_decl.
      	(tsubst_expr): Use finish_decl, not cp_finish_decl.
      	(instantiate_decl): Adjust call to cp_finish_decl.
      	* name-lookup.c (pushdecl_top_level_1): Use finish_decl, not
      	cp_finish_decl.
      	* decl2.c (finish_static_data_member_decl): Add init_const_expr_p
      	parameter.
      	(grokfield): Likewise.
      	* parser.c (cp_parser_condition): Check for constant initializers.
      	(cp_parser_init_declarator): Adjust calls to grokfield and
      	cp_finish_decl.  Don't set
      	DECL_INITIALIZED_BY_CONSTANT_EXPRESSION_P here.
      	(cp_parser_member_declaration): Likewise.
      	(cp_parser_objc_class_ivars): Likewise.
      	PR c++/26266
      	* g++.dg/template/static22.C: New test.
      	* g++.dg/template/static23.C: New test.
      	* g++.dg/template/static24.C: New test.
      	* g++.dg/template/non-dependent13.C: New test.
      
      From-SVN: r111229
      Mark Mitchell committed
    • re PR rtl-optimization/25600 (unsigned>>31?-1:0 should be optimized to int>>31) · 8305d786
      
      	PR middle-end/25600
      	* fold-const.c (fold_binary): Fold (X >> C) != 0 into X < 0 when
      	C is one less than the width of X (and related transformations).
      	* simplify_rtx.c (simplify_unary_operation_1): Transform 
      	(neg (lt x 0)) into either (ashiftrt X C) or (lshiftrt X C)
      	depending on STORE_FLAG_VALUE, were C is one less then the
      	width of X.
      
      From-SVN: r111226
      Roger Sayle committed
    • ffi.c (ffi_closure_helper_SYSV): Remove unused variable and cast integer to void * if needed. · e097f887
      	* src/sh/ffi.c (ffi_closure_helper_SYSV): Remove unused variable
      	and cast integer to void * if needed.  Update the pointer to
      	the FP register saved area correctly.
      
      From-SVN: r111225
      Kaz Kojima committed
    • Daily bump. · a3042501
      From-SVN: r111223
      GCC Administrator committed
    • re PR tree-optimization/26341 (930217-1.c and 931013-3.c ICE at -O2 and above in… · dd7b13d8
      re PR tree-optimization/26341 (930217-1.c and 931013-3.c ICE at -O2 and above in add_virtual_operand)
      
      2006-02-17  Daniel Berlin  <dberlin@dberlin.org>
      
      	Fix PR tree-optimization/26341
      	* tree-ssa-operands.c (add_virtual_operand): Remove assert 
      	about NAME_MEMORY_TAG's.
      
      From-SVN: r111217
      Daniel Berlin committed
  2. 17 Feb, 2006 24 commits