1. 02 Jun, 2007 10 commits
    • Fix a typo in ChangeLog. · 8cdf2fb9
      From-SVN: r125284
      H.J. Lu committed
    • type_traits (is_reference, [...]): Remove. · 4a27a739
      2007-06-02  Paolo Carlini  <pcarlini@suse.de>
      
      	* include/tr1_impl/type_traits (is_reference, add_reference,
      	remove_reference): Remove.
      	* include/tr1/type_traits (is_reference, add_reference,
      	remove_reference): Add.
      	* include/std/type_traits (is_lvalue_reference, is_rvalue_reference,
      	is_reference, remove_reference, add_lvalue_reference,
      	add_rvalue_reference): Add.
      	* include/tr1_impl/boost_shared_ptr.h (operator*): Adjust.
      	* testsuite/20_util/add_lvalue_reference/requirements/
      	explicit_instantiation.cc: New.
      	* testsuite/20_util/add_lvalue_reference/value.cc: Likewise.
      	* testsuite/20_util/add_rvalue_reference/requirements/
      	explicit_instantiation.cc: Likewise.
      	* testsuite/20_util/add_rvalue_reference/value.cc: Likewise.
      	* testsuite/20_util/is_lvalue_reference/requirements/
      	explicit_instantiation.cc: Likewise.
      	* testsuite/20_util/is_lvalue_reference/requirements/
      	typedefs.cc: Likewise.
      	* testsuite/20_util/is_lvalue_reference/value.cc: Likewise.
      	* testsuite/20_util/is_rvalue_reference/requirements/
      	explicit_instantiation.cc: Likewise.
      	* testsuite/20_util/is_rvalue_reference/requirements/
      	typedefs.cc: Likewise.
      	* testsuite/20_util/is_rvalue_reference/value.cc: Likewise.
      	* testsuite/20_util/is_reference/requirements/
      	explicit_instantiation.cc: Likewise.
      	* testsuite/20_util/is_reference/requirements/typedefs.cc: Likewise.
      	* testsuite/20_util/is_reference/value.cc: Likewise.
      	* testsuite/20_util/remove_reference/requirements/
      	explicit_instantiation.cc: New.
      	* testsuite/20_util/remove_reference/value.cc: Likewise.
      
      	* testsuite/tr1/4_metaprogramming/add_const/requirements/
      	typedefs.cc: Move...
      	* testsuite/tr1/4_metaprogramming/add_const/value.cc: ... here.
      	* testsuite/tr1/4_metaprogramming/add_cv/requirements/
      	typedefs.cc: Move...
      	* testsuite/tr1/4_metaprogramming/add_cv/value.cc: ... here.
      	* testsuite/tr1/4_metaprogramming/add_pointer/requirements/
      	typedefs.cc: Move...
      	* testsuite/tr1/4_metaprogramming/add_pointer/value.cc: ... here.
      	* testsuite/tr1/4_metaprogramming/add_reference/requirements/
      	typedefs.cc: Move...
      	* testsuite/tr1/4_metaprogramming/add_reference/value.cc: ... here.
      	* testsuite/tr1/4_metaprogramming/add_volatile/requirements/
      	typedefs.cc: Move...
      	* testsuite/tr1/4_metaprogramming/add_volatile/value.cc: ... here.
      	* testsuite/tr1/4_metaprogramming/aligned_storage/requirements/
      	typedefs.cc: Move...
      	* testsuite/tr1/4_metaprogramming/aligned_storage/value.cc: ... here.
      
      From-SVN: r125283
      Paolo Carlini committed
    • configure.ac: Fix a typo. · 4620d81e
      2007-06-02  H.J. Lu  <hongjiu.lu@intel.com>
      
      	* configure.ac: Fix a typo.
      	* configure: Regenerated.
      
      From-SVN: r125282
      H.J. Lu committed
    • sse4_2-check.h: New. · 95a3261e
      2007-06-02  H.J. Lu  <hongjiu.lu@intel.com>
      
      	* gcc.target/i386/sse4_2-check.h: New.
      	* gcc.target/i386/sse4_2-crc32b.c: Likewise.
      	* gcc.target/i386/sse4_2-crc32.h: Likewise.
      	* gcc.target/i386/sse4_2-crc32l.c: Likewise.
      	* gcc.target/i386/sse4_2-crc32q.c: Likewise.
      	* gcc.target/i386/sse4_2-crc32w.c: Likewise.
      	* gcc.target/i386/sse4_2-pcmpestri-1.c: Likewise.
      	* gcc.target/i386/sse4_2-pcmpestri-2.c: Likewise.
      	* gcc.target/i386/sse4_2-pcmpestrm-1.c: Likewise.
      	* gcc.target/i386/sse4_2-pcmpestrm-2.c: Likewise.
      	* gcc.target/i386/sse4_2-pcmpgtq.c: Likewise.
      	* gcc.target/i386/sse4_2-pcmpistri-1.c: Likewise.
      	* gcc.target/i386/sse4_2-pcmpistri-2.c: Likewise.
      	* gcc.target/i386/sse4_2-pcmpistrm-1.c: Likewise.
      	* gcc.target/i386/sse4_2-pcmpistrm-2.c: Likewise.
      	* gcc.target/i386/sse4_2-pcmpstr.h: Likewise.
      	* gcc.target/i386/sse4_2-popcnt.h: Likewise.
      	* gcc.target/i386/sse4_2-popcntl.c: Likewise.
      	* gcc.target/i386/sse4_2-popcntq.c: Likewise.
      
      From-SVN: r125281
      H.J. Lu committed
    • i386.md ("sse4_1_blendvpd"): Require "z" class XMM register for operand[3]. · c7a69424
              * config/i386/i386.md ("sse4_1_blendvpd"): Require "z" class XMM
              register for operand[3].  Adjust asm template.
              ("sse4_1_blendvpd"): Ditto.
              ("sse4_1_pblendvb"): Ditto.
              * config/i386/i386.c (ix86_expand_sse_4_operands_builtin): Call
              safe_vector_operand() if input operand is VECTOR_MODE_P operand. Do not
              force operands[3] into xmm0 register for variable blend instructions.
              (ix86_expand_sse_pcmpestr): Do not check operands for
              "register_operand", when insn operand predicate is "register_operand".
              (ix86_expand_sse_pcmpistr): Ditto.
      
      From-SVN: r125280
      Uros Bizjak committed
    • i386.h (enum reg_class): New. · 06f4e35d
              * config/i386/i386.h (enum reg_class) [SSE_FIRST_REG]: New.
              (SSE_CLASS_P): Use reg_class_subset_p between SSE_REGS.
              (REG_CLASS_NAMES): Add "FIRST_SSE_REG" string.
              (REG_CLASS_CONTENTS): Add members of FIRST_SSE_REG class.
              * config/i386/constraints.md ("z"): New register constraint
              for members of SSE_FIRST_REG class.
              * config/i386/i386-modes.def (CCA, CCC, CCO, CCS): New compare modes.
              * config/i386/i386.c (regclass_map): Change class of %xmm0 to
              SSE_FIRST_REG class.
              (put_condition_code) [EQ, NE]: Output suffixes for new compare modes.
              (ix86_cc_modes_compatible): Handle CCA, CCC, CCO and CCS modes.
              (IX86_BUILTIN_PCMPESTRI128): New for SSE4.2.
              (IX86_BUILTIN_PCMPESTRM128): Likewise.
              (IX86_BUILTIN_PCMPESTRA128): Likewise.
              (IX86_BUILTIN_PCMPESTRC128): Likewise.
              (IX86_BUILTIN_PCMPESTRO128): Likewise.
              (IX86_BUILTIN_PCMPESTRS128): Likewise.
              (IX86_BUILTIN_PCMPESTRZ128): Likewise.
              (IX86_BUILTIN_PCMPISTRI128): Likewise.
              (IX86_BUILTIN_PCMPISTRM128): Likewise.
              (IX86_BUILTIN_PCMPISTRA128): Likewise.
              (IX86_BUILTIN_PCMPISTRC128): Likewise.
              (IX86_BUILTIN_PCMPISTRO128): Likewise.
              (IX86_BUILTIN_PCMPISTRS128): Likewise.
              (IX86_BUILTIN_PCMPISTRZ128): Likewise.
              (struct builtin_description): Change "flag" field to unsigned.
              (bdesc_pcmpestr): New builtin description table.
              (bdesc_pcmpistr): Likewise.
              (ix86_init_mmx_sse_builtins): Define int_ftype_v16qi_int_v16qi_int_int,
              v16qi_ftype_v16qi_int_v16qi_int_int and int_ftype_v16qi_v16qi_int.
              Initialize pcmp[ei]str[im] insns for SSE4.2.
              (ix86_expand_sse_pcmpestr): New subroutine of ix86_expand_builtin.
              (ix86_expand_sse_pcmpistr): Likewise.
              (ix86_expand_builtin): Expand pcmp[ei]str[im] builtins for SSE4.2.
              * config/i386/i386.md (UNSPEC_PCMPESTR): New for SSE4.2.
              (UNSPEC_PCMPISTR): Likewise.
              * config/i386/sse.md (sse4_2_pcmpestr): New insn patern and splitter.
              (sse4_2_pcmpestri):New isns pattern.
              (sse4_2_pcmpestrm): Likewise.
              (sse4_2_pcmpestr_cconly): Likewise.
              (sse4_2_pcmpistr): New insn patern and splitter.
              (sse4_2_pcmpistri):New isns pattern.
              (sse4_2_pcmpistrm): Likewise.
              (sse4_2_pcmpistr_cconly): Likewise.
              * config/i386/smmintrin.h: Enable pcmp[ei]str[im] intrinsics
              in SSE4.2.
      
      
      Co-Authored-By: Uros Bizjak <ubizjak@gmail.com>
      
      From-SVN: r125279
      H.J. Lu committed
    • configure: Regenerate. · 82a6cadf
      boehm-gc:
      2007-06-02  Paolo Bonzini  <bonzini@gnu.org>
      
      	* configure: Regenerate.
      
      libffi:
      2007-06-02  Paolo Bonzini  <bonzini@gnu.org>
      
      	* configure: Regenerate.
      
      libgfortran:
      2007-06-02  Paolo Bonzini  <bonzini@gnu.org>
      
      	* configure: Regenerate.
      
      libgomp:
      2007-06-02  Paolo Bonzini  <bonzini@gnu.org>
      
      	* configure: Regenerate.
      
      libjava:
      2007-06-02  Paolo Bonzini  <bonzini@gnu.org>
      
      	* configure: Regenerate.
      
      libmudflap:
      2007-06-02  Paolo Bonzini  <bonzini@gnu.org>
      
      	* configure: Regenerate.
      
      libobjc:
      2007-06-02  Paolo Bonzini  <bonzini@gnu.org>
      
      	* configure: Regenerate.
      
      libssp:
      2007-06-02  Paolo Bonzini  <bonzini@gnu.org>
      
      	* configure: Regenerate.
      
      libstdc++-v3:
      2007-06-02  Paolo Bonzini  <bonzini@gnu.org>
      
      	* configure: Regenerate.
      
      zlib:
      2007-06-02  Paolo Bonzini  <bonzini@gnu.org>
      
      	* configure: Regenerate.
      
      From-SVN: r125278
      Paolo Bonzini committed
    • mips.c (mips_output_mi_thunk): Only load gp if not LOADGP_ABSOLUTE and not binds_local_p. · adb04511
      	* config/mips/mips.c (mips_output_mi_thunk): Only load gp if not
      	LOADGP_ABSOLUTE and not binds_local_p.
      
      From-SVN: r125276
      David Daney committed
    • Makefile.in: Replace all uses of libext with libsuffix. · 45d5f86c
      2007-06-01  Andrew Pinski  <andrew_pinski@playstation.sony.com>
      
              * Makefile.in: Replace all uses of libext with libsuffix.
              * configure.ac: Likewise.
              * configure: Regenerate.
      
              Revert:
              * Makefile.in: Remove all uses of $(libext).
      
      From-SVN: r125275
      Andrew Pinski committed
    • Daily bump. · 69410585
      From-SVN: r125273
      GCC Administrator committed
  2. 01 Jun, 2007 15 commits
  3. 31 May, 2007 15 commits
    • re PR libstdc++/31426 (TR1 includes do not work with -std=c++0x) · e133ace8
      2007-05-31  Paolo Carlini  <pcarlini@suse.de>
      
      	PR libstdc++/31426
      	* include/bits/c++config: Remove namespace association bits
      	from tr1 to std.
      
      	* include/ext/type_traits.h (__promote, __promote2,
      	__promote3, __promote4): Add.
      
      	* include/bits/hashtable.h: New.
      	* include/bits/functional_hash.h: Likewise.
      	* include/tr1/hashtable.h: Likewise.
      
      	* include/tr1_impl/random: New.
      	* include/tr1_impl/cinttypes: Likewise.
      	* include/tr1_impl/cstdlib: Likewise.
      	* include/tr1_impl/unordered_map: Likewise.
      	* include/tr1_impl/cstdio: Likewise.
      	* include/tr1_impl/boost_shared_ptr.h: Likewise.
      	* include/tr1_impl/cctype: Likewise.
      	* include/tr1_impl/random.tcc: Likewise.
      	* include/tr1_impl/tuple: Likewise.
      	* include/tr1_impl/functional_hash.h: Likewise.
      	* include/tr1_impl/hashtable: Likewise.
      	* include/tr1_impl/cmath: Likewise.
      	* include/tr1_impl/type_traitsfwd.h: Likewise.
      	* include/tr1_impl/hashtable_policy.h: Likewise.
      	* include/tr1_impl/cfenv: Likewise.
      	* include/tr1_impl/unordered_set: Likewise.
      	* include/tr1_impl/functional: Likewise.
      	* include/tr1_impl/utility: Likewise.
      	* include/tr1_impl/complex: Likewise.
      	* include/tr1_impl/type_traits: Likewise.
      	* include/tr1_impl/cwchar: Likewise.
      	* include/tr1_impl/cstdint: Likewise.
      	* include/tr1_impl/regex: Likewise.
      	* include/tr1_impl/array: Likewise.
      	* include/tr1_impl/cwctype: Likewise.
      
      	* include/tr1/type_traitsfwd.h: Remove.
      	* include/tr1/boost_shared_ptr.h: Likewise.
      	* include/tr1/common.h: Likewise.
      	* include/tr1/hashtable: Likewise.
      	* include/tr1/hashtable_policy.h: Likewise.
      	* include/tr1/random.tcc: Likewise.
      
      	* include/c_global/cinttypes: Include tr1_impl/cinttypes.
      	* include/c_global/cstdlib: Likewise for cstdlib.
      	* include/c_global/cstdio: Likewise for cstdio.
      	* include/c_global/cctype: Likewise for cctype.
      	* include/c_global/cmath: Likewise for cmath.
      	* include/c_global/cfenv: Likewise for cfenv.
      	* include/c_global/cwchar: Likewise for cwchar.
      	* include/c_global/cstdint: Likewise for cstdint.
      	* include/c_global/cwctype: Likewise for cwctype.
      	* include/tr1/cinttypes: Likewise for cinttypes.
      	* include/tr1/cstdlib: Likewise for cstdlib.
      	* include/tr1/cstdio: Likewise for cstdio.
      	* include/tr1/cctype: Likewise for cctype.
      	* include/tr1/cmath: Likewise for cmath.
      	* include/tr1/cfenv: Likewise for cfenv.
      	* include/tr1/cwchar: Likewise for cwchar.
      	* include/tr1/cstdint: Likewise for cstdint.
      	* include/tr1/cwctype: Likewise for cwctype.
      	* include/tr1/functional_hash.h: Likewise for functional_hash.
      
      	* include/std/tuple: Include tr1_impl/tuple.
      	* include/std/utility: Likewise for utility.
      	* include/std/type_traits: Likewise for type_traits.
      	(is_pod): Just forward to __is_pod.
      	(has_trivial_default_constructor): Just forward to
      	__has_trivial_constructor.
      	(has_trivial_copy_constructor): Just forward to __has_trivial_copy.
      	(has_trivial_assign): Just forward to __has_trivial_assign.
      	(has_trivial_destructor): Just forward to __has_trivial_destructor.
      	(has_nothrow_default_constructor): Just forward to
      	__has_nothrow_constructor.
      	(has_nothrow_copy_constructor): Just forward to __has_nothrow_copy.
      	(has_nothrow_assign): Just forward to __has_nothrow_assign.
      	(is_base_of): Just forward to __is_base_of.
      	(is_signed, is_unsigned): Implement according to the C++0x
      	specifications.
      	* include/std/memory: Likewise for memory.
      	* include/std/regex: Likewise for regex.
      	* include/std/random: Likewise for random.
      	* include/std/unordered_map: Likewise for unordered_map.
      	* include/std/unordered_set: Likewise for unordered_set.
      	* include/std/functional: Likewise for functional.
      	* include/std/complex: Likewise for complex.
      	* include/std/array: Likewise for array.
      	* include/tr1/tuple: Likewise for tuple.
      	* include/tr1/utility: Likewise for utility.
      	* include/tr1/type_traits: Likewise for type_traits
      	* include/tr1/memory: Likewise for memory.
      	* include/tr1/regex: Likewise for regex.
      	* include/tr1/random: Likewise for random.
      	* include/tr1/unordered_map: Likewise for unordered_map.
      	* include/tr1/unordered_set: Likewise for unordered_set.
      	* include/tr1/functional: Likewise for functional.
      	* include/tr1/complex: Likewise for complex.
      	* include/tr1/array: Likewise for array.
      
      	* include/c_global/ctgmath: Tweak.
      	* include/c_global/cstdarg: Likewise.
      	* include/c_global/ctime: Likewise.
      	* include/c_global/climits: Likewise.
      	* include/c_global/cfloat: Likewise.	
      	* include/c_global/ccomplex: Likewise.
      	* include/c_global/cstdbool: Likewise.
      
      	* include/tr1/poly_laguerre.tcc: Tweak, don't use _GLIBCXX_TR1.
      	* include/tr1/riemann_zeta.tcc: Likewise.
      	* include/tr1/beta_function.tcc: Likewise.
      	* include/tr1/exp_integral.tcc: Likewise.
      	* include/tr1/hypergeometric.tcc: Likewise.
      	* include/tr1/modified_bessel_func.tcc: Likewise.
      	* include/tr1/legendre_function.tcc: Likewise.
      	* include/tr1/special_function_util.h: Likewise.
      	* include/tr1/bessel_function.tcc: Likewise.
      	* include/tr1/poly_hermite.tcc: Likewise.
      	* include/tr1/ell_integral.tcc: Likewise.
      	* include/tr1/gamma.tcc: Likewise.
      	* include/tr1/stdlib.h: Likewise.
      	* include/tr1/math.h: Likewise.
      
      	* include/tr1/complex.h: Minor tweaks.
      	* include/tr1/wctype.h: Likewise.
      	* include/tr1/wchar.h: Likewise.
      	* include/tr1/inttypes.h: Likewise.
      	* include/tr1/tgmath.h: Likewise.
      	* include/tr1/cstdbool: Likewise.
      	* include/tr1/cfloat: Likewise.
      	* include/tr1/ccomplex: Likewise.
      	* include/tr1/ctime: Likewise.
      	* include/tr1/climits: Likewise.
      	* include/tr1/ctgmath: Likewise.
      	* include/tr1/cstdarg: Likewise.
      
      	* testsuite/tr1/headers.cc: Move...
      	* testsuite/tr1/headers/all.cc: ... here.
      	* testsuite/tr1/using_namespace_std_tr1.cc: Move...
      	* testsuite/tr1/headers/c++200x/using_namespace_std_tr1.cc: ... here.
      	* testsuite/tr1/headers/using_namespace_std_tr1.cc ... here.
      	* testsuite/tr1/headers/c++200x/using_namespace_std_tr1.cc: New.
      
      	* testsuite/20_util/tuple/requirements/explicit_instantiation.cc:
      	Adjust namespace.
      	* testsuite/20_util/has_nothrow_copy_constructor/value.cc: Adjust to
      	the C++0x requirements.
      	* testsuite/20_util/has_nothrow_default_constructor/value.cc: Likewise.
      	* testsuite/20_util/has_trivial_copy_constructor/value.cc: Likewise.
      	* testsuite/20_util/has_trivial_default_constructor/value.cc: Likewise.
      
      	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
      	dg-error lines.
      	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
      	Likewise.
      	* testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc:
      	Un-xfail.
      
      	* testsuite/20_util/is_signed/value.cc: New.
      	* testsuite/20_util/is_signed/requirements/typedefs.cc: Likewise.
      	* testsuite/20_util/is_signed/requirements/explicit_instantiation.cc:
      	Likewise.
      	* testsuite/20_util/is_unsigned/value.cc: Likewise..
      	* testsuite/20_util/is_unsigned/requirements/typedefs.cc: Likewise.
      	* testsuite/20_util/is_unsigned/requirements/explicit_instantiation.cc:
      	Likewise.
      
      	* include/Makefile.am: Adjust.	
      	* include/Makefile.in: Regenerate.
      
      From-SVN: r125244
      Paolo Carlini committed
    • limits-caselabels.c: Fix for targets where int is 16 bits. · 9cbff7e7
      2007-05-31  Rask Ingemann Lambertsen  <rask@sygehus.dk>
      
      	* gcc.c-torture/compile/limits-caselabels.c: Fix for targets where
      	int is 16 bits.
      
      From-SVN: r125243
      Rask Ingemann Lambertsen committed
    • trans-expr.c (gfc_conv_expr_op): Use zero constant that matches the lse type. · ac816b02
      2007-05-31  Richard Guenther  <rguenther@suse.de>
      
      	* trans-expr.c (gfc_conv_expr_op): Use zero constant
      	that matches the lse type.
      	(gfc_trans_string_copy): Use sizetype zero constant.
      	* intrinsic.c (add_functions): The sizeof intrinsic has
      	index type result.
      	* trans-types.c (gfc_get_dtype): Convert size to index
      	type before shifting.
      	* trans-array.c (gfc_trans_array_constructor_value): Use
      	index type for offset computation.
      	* trans-intrinsic.c (gfc_conv_associated): Use correct type
      	for zero constant.
      
      From-SVN: r125242
      Richard Guenther committed
    • re PR fortran/32156 (ICE with characters) · ac5753b7
      2007-05-31  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/32156
      	* trans-array.c (gfc_trans_array_constructor): Treat the case
      	where the ss expression charlen is missing.
      
      2007-05-31  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/32156
      	* gfortran.dg/char_array_constructor_3.f90: New test.
      
      From-SVN: r125241
      Paul Thomas committed
    • re PR fortran/32156 (ICE with characters) · cba83c6f
      2007-05-31  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/32156
      	* trans-array.c (gfc_trans_array_constructor): Treat the case
      	where the ss expression charlen is missing.
      
      2007-05-31  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/32156
      	* gfortran.dg/char_array_constructor_3.f90: New test.
      
      From-SVN: r125240
      Paul Thomas committed
    • in gcc/ 2007-05-31 Daniel Berlin <dberlin@dberlin.org> · 2c751309
      in gcc/
      2007-05-31  Daniel Berlin  <dberlin@dberlin.org>
      
      	* c-typeck.c (build_indirect_ref): Include type in error message.
      	(build_binary_op): Pass types to binary_op_error.
      	* c-common.c (binary_op_error): Take two type arguments, print out
      	types with error.
      	* c-common.h (binary_op_error): Update prototype.
      In gcc/cp
      2007-05-31  Daniel Berlin  <dberlin@dberlin.org>
      
      	* typeck.c (build_binary_op): Include types in error.
      
      From-SVN: r125239
      Daniel Berlin committed
    • i386.c: Correct coments on -mno-sse4. · 6847c43d
      2007-05-31  H.J. Lu  <hongjiu.lu@intel.com>
      
      	* config/i386/i386.c: Correct coments on -mno-sse4.
      
      From-SVN: r125238
      H.J. Lu committed
    • 2007-05-31 Frank Ch. Eigler <fche@redhat.com> · 3b088eb0
      	From Andi Kleen <ak@suse.de>:
      	* mf-runtime.c (options): Rename structure for compatibility with
      	glibc getopt_long.
      
      From-SVN: r125237
      Frank Ch. Eigler committed
    • config.gcc (i[34567]86-*-*): Add nmmintrin.h to extra_headers. · 3b8dd071
      2007-05-31  H.J. Lu  <hongjiu.lu@intel.com>
      
      	* config.gcc (i[34567]86-*-*): Add nmmintrin.h to
      	extra_headers.
      	(x86_64-*-*): Likewise.
      
      	* config/i386/i386.c (OPTION_MASK_ISA_MMX_UNSET): New.
      	(OPTION_MASK_ISA_3DNOW_UNSET): Likewise.
      	(OPTION_MASK_ISA_SSE_UNSET): Likewise.
      	(OPTION_MASK_ISA_SSE2_UNSET): Likewise.
      	(OPTION_MASK_ISA_SSE3_UNSET): Likewise.
      	(OPTION_MASK_ISA_SSSE3_UNSET): Likewise.
      	(OPTION_MASK_ISA_SSE4_1_UNSET): Likewise.
      	(OPTION_MASK_ISA_SSE4_2_UNSET): Likewise.
      	(OPTION_MASK_ISA_SSE4): Likewise.
      	(OPTION_MASK_ISA_SSE4_UNSET): Likewise.
      	(OPTION_MASK_ISA_SSE4A_UNSET): Likewise.
      	(ix86_handle_option): Use OPTION_MASK_ISA_*_UNSET.  Handle
      	SSE4.2.
      	(override_options): Support SSE4.2.
      	(ix86_build_const_vector): Support SImode and DImode.
      	(ix86_build_signbit_mask): Likewise.
      	(ix86_expand_int_vcond): Support V2DImode.
      	(IX86_BUILTIN_CRC32QI): New for SSE4.2.
      	(IX86_BUILTIN_CRC32HI): Likewise.
      	(IX86_BUILTIN_CRC32SI): Likewise.
      	(IX86_BUILTIN_CRC32DI): Likewise.
      	(IX86_BUILTIN_PCMPGTQ): Likewise.
      	(bdesc_crc32): Likewise.
      	(bdesc_sse_3arg): Likewise.
      	(ix86_expand_crc32): Likewise.
      	(ix86_init_mmx_sse_builtins): Support SSE4.2.
      	(ix86_expand_builtin): Likewise.
      
      	* config/i386/i386.h (TARGET_CPU_CPP_BUILTINS): Define
      	__SSE4_2__ for -msse4.2.
      
      	* config/i386/i386.md (UNSPEC_CRC32): New for SSE4.2.
      	(CRC32MODE): Likewise.
      	(crc32modesuffix): Likewise.
      	(crc32modeconstraint): Likewise.
      	(sse4_2_crc32<mode>): Likewise.
      	(sse4_2_crc32di): Likewise.
      
      	* config/i386/i386.opt (msse4.2): New for SSE4.2.
      	(msse4): Likewise.
      
      	* config/i386/nmmintrin.h: New. The dummy SSE4.2 intrinsic header
      	file.
      
      	* config/i386/smmintrin.h: Add SSE4.2 intrinsics.
      
      	* config/i386/sse.md (sse4_2_gtv2di3): New pattern for
      	SSE4.2.
      	(vcond<mode>): Use SSEMODEI instead of SSEMODE124.
      	(vcondu<mode>): Likewise.
      
      	* doc/extend.texi: Document SSE4.2 built-in functions.
      
      	* doc/invoke.texi: Document -msse4.2/-msse4.
      
      From-SVN: r125236
      H.J. Lu committed
    • MAINTAINERS (Various Maintainers): Add myself as auto-vectorizer maintainer. · ccb4d26b
              * MAINTAINERS (Various Maintainers): Add myself as
              auto-vectorizer maintainer.
      
      From-SVN: r125230
      Dorit Nuzman committed
    • re PR c++/31806 (miscompilation with -fschedule-insns2 -fno-threadsafe-statics) · 32735518
      	PR c++/31806
      	* decl.c (cp_finish_decl): Also clear was_readonly if a static var
      	needs runtime initialization.
      
      From-SVN: r125229
      Jakub Jelinek committed
    • re PR tree-optimization/32160 (ICE with -O3 in verify_ssa) · 2664efb6
      	PR tree-optimization/32160
      	* tree-predcom.c (predcom_tmp_var): New function.  Mark created
      	variable as gimple reg.
      	(initialize_root_vars, initialize_root_vars_lm): Use predcom_tmp_var.
      
      	* gfortran.dg/predcom-1.f: New test.
      
      From-SVN: r125228
      Zdenek Dvorak committed
    • gcc.c (main): Don't consider linker options when issuing the warning about a linker input... · 01e4dd0d
      	* gcc.c (main): Don't consider linker options when issuing the
      	warning about a linker input file not being used.
      
      From-SVN: r125226
      Kazu Hirata committed
    • Fix line endianess. · 4fcc9944
      From-SVN: r125225
      Andreas Schwab committed
    • PR c++/32158 (libstdc++ bits) · f4c5578f
      2007-05-31  Paolo Carlini  <pcarlini@suse.de>
      
      	PR c++/32158 (libstdc++ bits)
      	* include/bits/stl_uninitialized.h (__uninitialized_copy_aux,
      	__uninitialized_fill_aux, __uninitialized_fill_n_aux):
      	Remove.
      	(struct __uninitialized_copy, struct __uninitialized_fill,
      	struct __uninitialized_fill_n): Add.
      	(uninitialized_copy, uninitialized_fill, uninitialized_fill_n):
      	Adjust.
      	* testsuite/20_util/specialized_algorithms/32158.cc: New.
      
      	* include/bits/stl_uninitialized.h (uninitialized_copy(_InputIterator,
      	_InputIterator, _ForwardIterator)): Robustify vs non-POD input.
      
      	* include/bits/stl_vector.h (_M_fill_initialize): New.
      	(vector(size_type, const value_type&, const allocator_type&),
      	_M_initialize_dispatch(_Integer, _Integer, __true_type)): Use it.
      	* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
      	Adjust dg-error line.
      	* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
      	Likewise.
      	* testsuite/23_containers/vector/requirements/dr438/
      	constructor_1_neg.cc: Likewise.
      	* testsuite/23_containers/vector/requirements/dr438/
      	constructor_2_neg.cc: Likewise.
      
      From-SVN: r125223
      Paolo Carlini committed