1. 10 Mar, 2008 6 commits
  2. 09 Mar, 2008 8 commits
  3. 08 Mar, 2008 18 commits
    • re PR testsuite/35350 (FAIL: gcc.target/i386/isa-10.c execution test) · 945a52ae
      2008-03-08  H.J. Lu  <hongjiu.lu@intel.com>
      
      	PR target/35350
      	* gcc.target/i386/isa-1.c: Add -march=x86-64.
      	* gcc.target/i386/isa-2.c: Likewise.
      	* gcc.target/i386/isa-3.c: Likewise.
      	* gcc.target/i386/isa-10.c: Likewise.
      	* gcc.target/i386/isa-11.c: Likewise.
      	* gcc.target/i386/isa-12.c: Likewise.
      	* gcc.target/i386/isa-13.c: Likewise.
      	* gcc.target/i386/isa-14.c: Likewise.
      
      From-SVN: r133044
      H.J. Lu committed
    • sse2-mmx.c (unsigned_add3): Use _mm_setzero_si64 to zero carry. · 8c729fb2
      	* gcc.target/i386/sse2-mmx.c (unsigned_add3): Use _mm_setzero_si64
      	to zero carry.
      
      From-SVN: r133043
      Uros Bizjak committed
    • coverage.h (tree_coverage_counter_addr): Declare. · fc9161c1
      2008-03-08  Richard Guenther  <rguenther@suse.de>
      
      	* coverage.h (tree_coverage_counter_addr): Declare.
      	* coverage.c (tree_coverage_counter_addr): New function.
      	* tree-profile.c (tree_gen_edge_profiler): Unshare counter
      	before using again.
      	(tree_gen_pow2_profiler): Use tree_coverage_counter_addr.
      	(tree_gen_one_value_profiler): Likewise.
      	(tree_gen_ic_profiler): Likewise.
      	(tree_gen_average_profiler): Likewise.
      	(tree_gen_ior_profiler): Likewise.
      
      From-SVN: r133041
      Richard Guenther committed
    • decl.c (maybe_pad_type): Use value_factor_p. · 892f6e65
      	* decl.c (maybe_pad_type): Use value_factor_p.
      
      From-SVN: r133039
      Eric Botcazou committed
    • tree-ssa-sccvn.h (vn_binary_op_lookup): Remove. · 49a1fb2d
      2008-03-08  Richard Guenther  <rguenther@suse.de>
      
      	* tree-ssa-sccvn.h (vn_binary_op_lookup): Remove.
      	(vn_binary_op_insert): Likewise.
      	(vn_unary_op_lookup): Likewise.
      	(vn_unary_op_insert): Likewise.
      	(vn_nary_op_lookup): Declare.
      	(vn_nary_op_insert): Likewise.
      	* tree-ssa-sccvn.c (struct vn_tables_s): Merge unary
      	and binary hashes, use a single obstack for unary_op_pool
      	and binary_op_pool.
      	(struct vn_binary_op_s, struct vn_unary_op_s): Replace with
      	a single struct vn_nary_op_s.  Store tree code length and
      	a variable number of operands.
      	(struct vn_reference_op_struct): Remove unused op2.
      	(vn_reference_op_eq): Do not compare op2.
      	(vn_reference_op_compute_hash): Do not compute hash of op2.
      	(vn_unary_op_hash, vn_binary_op_hash): Replace with vn_nary_op_hash.
      	(vn_unary_op_compute_hash, vn_binary_op_compute_hash): Replace
      	with vn_nary_op_compute_hash.
      	(vn_unary_op_eq, vn_binary_op_eq): Replace with vn_nary_op_eq.
      	(vn_unary_op_lookup, vn_binary_op_lookup): Replace with
      	vn_nary_op_lookup.
      	(vn_unary_op_insert, vn_binary_op_insert): Replace with
      	vn_nary_op_insert.
      	(visit_unary_op): Call nary functions.
      	(visit_binary_op): Likewise.
      	(process_scc): Adjust for struct vn_tables_s changes.
      	(allocate_vn_table): Likewise.
      	(free_vn_table): Likewise.
      	* tree-vn.c (vn_add): Call nary functions.
      	(vn_lookup): Likewise.
      
      From-SVN: r133038
      Richard Guenther committed
    • re PR fortran/34956 (-fbounds-check: bounds_check_9.f90: Use of uninitialized memory) · ba4698e1
      	PR fortran/34956
      	* trans-array.c (gfc_conv_ss_startstride): Fix the logic to avoid
      	checking bounds of absent optional arguments.
      
      From-SVN: r133037
      Francois-Xavier Coudert committed
    • Fix nits. · 9e94c78f
      From-SVN: r133036
      Eric Botcazou committed
    • lang.opt (nostdlib): Move around. · 7934d781
      	* lang.opt (nostdlib): Move around.
      	* misc.c (gnat_handle_option): Fix formatting.
      	(gnat_dwarf_name): Move around.
      	* trans.c (Case_Statement_to_gnu): Fix formatting.
      	(gnat_to_gnu): Likewise.
      	* utils.c (aggregate_type_contains_array_p): Likewise.
      	(create_subprog_decl): Likewise.
      
      From-SVN: r133035
      Eric Botcazou committed
    • re PR target/22152 (Poor loop optimization when using mmx builtins) · 904e4b8d
              PR target/22152
              * gcc.target/i386/pr22152.c: New test.
              * gcc.target/i386/sse2-mmx.c: Ditto.
      
      From-SVN: r133034
      Uros Bizjak committed
    • decl.c (gnat_to_gnu_entity): Do not bother propagating the TYPE_USER_ALIGN flag… · 8f5893ab
      decl.c (gnat_to_gnu_entity): Do not bother propagating the TYPE_USER_ALIGN flag when creating a JM type.
      
      	* decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>: Do not
      	bother propagating the TYPE_USER_ALIGN flag when creating a JM type.
      
      From-SVN: r133032
      Eric Botcazou committed
    • decl.c (gnat_to_gnu_entity): Do not force BIGGEST_ALIGNMENT when capping the… · ba436c3b
      decl.c (gnat_to_gnu_entity): Do not force BIGGEST_ALIGNMENT when capping the alignment of records with...
      
      	* decl.c (gnat_to_gnu_entity) <E_Record_Type>: Do not force
      	BIGGEST_ALIGNMENT when capping the alignment of records with
      	strict alignment and size clause.
      
      From-SVN: r133031
      Eric Botcazou committed
    • lang-specs.h: Pass -gnatwa if -Wall is passed. · 6ab36dac
      	* lang-specs.h: Pass -gnatwa if -Wall is passed.
      	* misc.c (gnat_handle_option) <OPT_Wall>: Expand into -Wunused
      	and -Wuninitialized.
      	(gnat_post_options): Clear warn_unused_parameter.
      
      From-SVN: r133030
      Eric Botcazou committed
    • utils.c (finish_record_type): Clear DECL_BIT_FIELD on sufficiently aligned bit-fields... · 8853cb0b
      	* utils.c (finish_record_type): Clear DECL_BIT_FIELD on sufficiently
      	aligned bit-fields, bumping the alignment of the record type if deemed
      	profitable.
      	(value_factor_p): Return false instead of 0.
      
      From-SVN: r133028
      Eric Botcazou committed
    • decl.c (gnat_to_gnu_entity): Add support for scalar types with small alignment. · 66abe22c
      	* decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>: Add support
      	for scalar types with small alignment.
      
      From-SVN: r133027
      Eric Botcazou committed
    • trans.c (Loop_Statement_to_gnu): Set the SLOC of the loop label from that of the… · 563569be
      trans.c (Loop_Statement_to_gnu): Set the SLOC of the loop label from that of the front-end's end label.
      
      	* trans.c (Loop_Statement_to_gnu): Set the SLOC of the loop label
      	from that of the front-end's end label.
      	(gnat_gimplify_stmt) <LOOP_STMT>: Set the SLOC of the backward goto
      	from that of the loop label.
      
      From-SVN: r133026
      Eric Botcazou committed
    • re PR target/35498 (libgomp/testsuite/libgomp.c/atomic-3.c fails on ppc-linux) · 2725b75c
      	PR target/35498
      	* config/rs6000/rs6000.c (rs6000_expand_compare_and_swapqhi): Shift
      	wdst back after sync_compare_and_swapqhi_internal.
      
      From-SVN: r133024
      Jakub Jelinek committed
    • re PR target/22152 (Poor loop optimization when using mmx builtins) · 10a97ae6
      2008-03-08  Uros Bizjak  <ubizjak@gmail.com>
      
              PR target/22152
              * config/i386/i386-modes.def (V1DI): New vector mode.
              * config/i386/i386.h (VALID_MMX_REG_MODE): Add V1DImode.
              * config/i386/mmx.md (MMXMODEI8): New mode iterator.
              (MMXMODE248): Ditto.
              (MMXMODE): Add V1DI mode.
              (mmxvecsize): Change DI mode to V1DI mode.
              ("mov<mode>): Use MMXMODEI8 mode iterator.
              ("*mov<mode>_internal_rex64"): Ditto.
              ("*mov<mode>_internal"): Ditto.
              ("mmx_add<mode>3"): Ditto.  Handle V1DImode for TARGET_SSE2.
              ("mmx_sub<mode>3"): Ditto.
              ("mmx_adddi3"): Remove insn pattern.
              ("mmx_subdi3"): Ditto.
              ("mmx_ashr<mode>3"): Use SImode and "yN" constraint for operand 2.
              ("mmx_lshr<mode>3"): Ditto. Use MMXMODE248 mode iterator.
              ("mmx_ashl<mode>3"): Ditto.
              ("mmx_lshrdi3"): Remove insn pattern.
              ("mmx_ashldi3"): Ditto.
              * config/i386/i386.c (classify_argument): Handle V1DImode.
              (function_arg_advance_32): Ditto.
              (function_arg_32): Ditto.
              (struct builtin_description) [IX86_BUILTIN_PADDQ]: Use
              mmx_addv1di3 insn pattern.
              [IX86_BUILTIN_PSUBQ]: Use mmx_subv1di3 insn pattern.
              [IX86_BUILTIN_PSLL?, IX86_BUILTIN_PSRL?, IX86_BUILTIN_PSRA?,
              IX86_BUILTIN_PSLL?I, IX86_BUILTIN_PSRL?I, IX86_BUILTIN_PSRA?I,
              IX86_BUILTIN_PSLL?I128, IX86_BUILTIN_PSRL?I128, IX86_BUILTIN_PSRA?I128]:
              Remove definitions of built-in functions.
              (V1DI_type_node): New node.
              (v1di_ftype_v1di_int): Ditto.
              (v1di_ftype_v1di_v1di): Ditto.
              (v2si_ftype_v2si_si): Ditto.
              (v4hi_ftype_v4hi_di): Remove node.
              (v2si_ftype_v2si_di): Ditto.
              (ix86_init_mmx_sse_builtins): Handle V1DImode.
              (__builtin_ia32_psll?, __builtin_ia32_psrl?, __builtin_ia32_psra?):
              Redefine builtins using def_builtin_const with *_ftype_*_int node.
              (__builtin_ia32_psll?i, __builtin_ia32_psrl?i, __builtin_ia32_psra?i):
              Add new builtins using def_builtin_const.
              (ix86_expand_builtin) [IX86_BUILTIN_PSLL?, IX86_BUILTIN_PSRL?,
              IX86_BUILTIN_PSRA?, IX86_BUILTIN_PSLL?I, IX86_BUILTIN_PSRL?I,
              IX86_BUILTIN_PSRA?I]: Handle builtin definitions.
              * config/i386/mmintrin.h (__v1di): New typedef.
              (_mm_add_si64): Cast arguments to __v1di type.
              (_mm_sub_si64): Ditto.
              (_mm_sll_pi16): Cast __count to __v4hi type.
              (_mm_sll_pi32): Cast __count to __v2si type.
              (_mm_sll_si64): Cast arguments to __v1di type.
              (_mm_srl_pi16): Cast __count to __v4hi type.
              (_mm_srl_pi32): Cast __count to __v2si type.
              (_mm_srl_si64): Cast arguments to __v1di type.
              (_mm_sra_pi16): Cast __count to __v4hi type.
              (_mm_sra_pi32): Cast __count to __v2si type.
              (_mm_slli_pi16): Use __builtin_ia32_psllwi.
              (_mm_slli_pi32): Use __builtin_ia32_pslldi.
              (_mm_slli_si64): Use __builtin_ia32_psllqi. Cast __m to __v1di type.
              (_mm_srli_pi16): Use __builtin_ia32_psrlwi.
              (_mm_srli_pi32): Use __builtin_ia32_psrldi.
              (_mm_srli_si64): Use __builtin_ia32_psrlqi. Cast __m to __v1di type.
              (_mm_srai_pi16): Use __builtin_ia32_psrawi.
              (_mm_srai_pi32): Use __builtin_ia32_psradi.
              * config/i386/i386.md (UNSPEC_NOP): Remove unspec definition.
              * doc/extend.texi (X86 Built-in Functions) [__builtin_ia32_psll?,
              __builtin_ia32_psrl?, __builtin_ia32_psra?, __builtin_ia32_psll?i,
              __builtin_ia32_psrl?i, __builtin_ia32_psra?i]: Add new builtins.
      
      From-SVN: r133023
      Uros Bizjak committed
    • Daily bump. · 5fab80a4
      From-SVN: r133021
      GCC Administrator committed
  4. 07 Mar, 2008 8 commits
    • * doc/include/texinfo.tex: Update to version 2008-03-07.10. · 08c3b5b0
      From-SVN: r133015
      Joseph Myers committed
    • decl.c (gnat_to_gnu_entity): Add comment for the packed array type case. · b49a1a1e
      	* decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Subtype>: Add
      	comment for the packed array type case.
      	* utils.c (build_template): Use a loop to strip padding or
      	containing records for justified modular types.
      
      From-SVN: r133014
      Eric Botcazou committed
    • Add missing dg marker. · 38516a1a
      From-SVN: r133013
      Eric Botcazou committed
    • decl.c (gnat_to_gnu_entity): Issue a warning on suspiciously large alignments specified for types. · fd5c81e9
      	* decl.c (gnat_to_gnu_entity): Issue a warning on suspiciously
      	large alignments specified for types.
      	(validate_alignment): Minor cleanup.
      
      From-SVN: r133012
      Eric Botcazou committed
    • decl.c (MAX_FIXED_MODE_SIZE): Define if not already defined. · 7f42aa36
      	* decl.c (MAX_FIXED_MODE_SIZE): Define if not already defined.
      	(gnat_to_gnu_entity) <E_Record_Type>: Try to get a smaller form of
      	the component for packing, if possible, as well as if a component
      	size clause is specified.
      	<E_Record_Subtype>: For an array type used to implement a packed
      	array, get the component type from the original array type.
      	Try to get a smaller form of the component for packing, if possible,
      	as well as if a component size clause is specified.
      	(round_up_to_align): New function.
      	(make_packable_type): Add in_record parameter.
      	For a padding record, preserve the size.  If not in_record and the
      	size is too large for an integral mode, attempt to shrink the size
      	by lowering the alignment.
      	Ditch the padding bits of the last component.
      	Compute sizes and mode manually, and propagate the RM size.
      	Return a BLKmode record type if its size has shrunk.
      	(maybe_pad_type): Use MAX_FIXED_MODE_SIZE instead of BIGGEST_ALIGNMENT.
      	Use Original_Array_Type to retrieve the type in case of an error.
      	Adjust call to make_packable_type.
      	(gnat_to_gnu_field): Likewise.
      	(concat_id_with_name): Minor tweak.
      	* trans.c (larger_record_type_p): New predicate.
      	(call_to_gnu): Compute the nominal type of the object only if the
      	parameter is by-reference.  Do the conversion actual type -> nominal
      	type if the nominal type is a larger record.
      	(gnat_to_gnu): Do not require integral modes on the source type to
      	avoid the conversion for types with identical names.
      	(addressable_p): Add gnu_type parameter.  If it is specified, do not
      	return true if the expression is not addressable in gnu_type.
      	Adjust recursive calls.
      	* utils.c (finish_record_type): Remove dead code.
      
      From-SVN: r133011
      Eric Botcazou committed
    • re PR target/35373 (bootstraping on powerpc with 128bit long double fails with revision 132578) · efc05e3c
      	PR target/35373
      	* config/rs6000/rs6000.c (rs6000_legitimize_address): Don't generate
      	reg+const addressing for Altivec modes.  Don't generate reg+reg
      	addressing for TFmode or TDmode quantities.
      
      From-SVN: r133008
      Peter Bergner committed
    • revert: re PR c++/35049 (g++.dg/conversion/simd3.C:12: error: invalid operands… · 96d84882
      revert: re PR c++/35049 (g++.dg/conversion/simd3.C:12: error: invalid operands to binary + (have 'float __vector__' and 'int __vector__'))
      
      cp:
      2008-03-07  Paolo Bonzini  <bonzini@gnu.org>
      
      	Revert:
      
      	2008-02-06  Douglas Gregor  <doug.gregor@gmail.com>
      
      	PR c++/35049
      	PR c++/35096
      	* typeck.c (structural_comptypes): Call cp_comptypes.
      	(comptypes): New; called from the C/C++ common bits to perform
      	strict checks.
      	(cp_comptypes): Renamed from comptypes, which is already used,
      	with a different signature, by the C++ front end.
      	(build_reinterpret_cast_1): Call cp_comptypes.
      	(ptr_reasonably_similar): Ditto.
      	* decl.c (decls_match): Ditto.
      	* cvt.c (convert_to_reference): Ditto.
      	* cp-tree.h (same_type_p): Ditto.
      	(same_or_base_type_p): Ditto.
      	(comptypes): Rename to cp_comptypes.
      	* pt.c (canonical_type_parameter): Call cp_comptypes.
      
      objcp:
      2008-03-07  Paolo Bonzini  <bonzini@gnu.org>
      
      	Revert:
      
      	2008-02-07  Andreas Tobler  <andreast-list@fgznet.ch>
      	            Douglas Gregor  <doug.gregor@gmail.com>
       
      	PR bootstrap/35115
      	* objcp-decl.c (objcp_comptypes): Call cp_comptypes, not comptypes.
      
      From-SVN: r133007
      Paolo Bonzini committed
    • gnu.ver: Move <system_error> related symbols to GLIBCXX_3.4.11 symbol version. · 31908b79
      	* config/abi/pre/gnu.ver: Move <system_error> related
      	symbols to GLIBCXX_3.4.11 symbol version.
      	* testsuite/util/testsuite_abi.cc (check_version): Allow
      	GLIBCXX_3.4.11.
      
      From-SVN: r133006
      Jakub Jelinek committed