Paolo Carlini
e133ace8d9
re PR libstdc++/31426 (TR1 includes do not work with -std=c++0x)
...
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
2007-05-31 23:37:56 +00:00
Rask Ingemann Lambertsen
9cbff7e7d9
limits-caselabels.c: Fix for targets where int is 16 bits.
...
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
2007-05-31 22:56:32 +00:00
Richard Guenther
ac816b0280
trans-expr.c (gfc_conv_expr_op): Use zero constant that matches the lse type.
...
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
2007-05-31 21:14:52 +00:00
Paul Thomas
ac5753b796
re PR fortran/32156 (ICE with characters)
...
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
2007-05-31 21:12:10 +00:00
Paul Thomas
cba83c6f79
re PR fortran/32156 (ICE with characters)
...
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
2007-05-31 21:11:31 +00:00
Daniel Berlin
2c751309df
in gcc/ 2007-05-31 Daniel Berlin <dberlin@dberlin.org>
...
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
2007-05-31 20:58:29 +00:00
H.J. Lu
6847c43d73
i386.c: Correct coments on -mno-sse4.
...
2007-05-31 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c: Correct coments on -mno-sse4.
From-SVN: r125238
2007-05-31 13:50:51 -07:00
Frank Ch. Eigler
3b088eb09a
2007-05-31 Frank Ch. Eigler <fche@redhat.com>
...
From Andi Kleen <ak@suse.de>:
* mf-runtime.c (options): Rename structure for compatibility with
glibc getopt_long.
From-SVN: r125237
2007-05-31 20:04:53 +00:00
H.J. Lu
3b8dd0716f
config.gcc (i[34567]86-*-*): Add nmmintrin.h to extra_headers.
...
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
2007-05-31 12:52:24 -07:00
Dorit Nuzman
ccb4d26be0
MAINTAINERS (Various Maintainers): Add myself as auto-vectorizer maintainer.
...
* MAINTAINERS (Various Maintainers): Add myself as
auto-vectorizer maintainer.
From-SVN: r125230
2007-05-31 17:05:23 +00:00
Jakub Jelinek
3273551821
re PR c++/31806 (miscompilation with -fschedule-insns2 -fno-threadsafe-statics)
...
PR c++/31806
* decl.c (cp_finish_decl): Also clear was_readonly if a static var
needs runtime initialization.
From-SVN: r125229
2007-05-31 18:40:12 +02:00
Zdenek Dvorak
2664efb66b
re PR tree-optimization/32160 (ICE with -O3 in verify_ssa)
...
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
2007-05-31 16:27:05 +00:00
Kazu Hirata
01e4dd0dad
gcc.c (main): Don't consider linker options when issuing the warning about a linker input...
...
* gcc.c (main): Don't consider linker options when issuing the
warning about a linker input file not being used.
From-SVN: r125226
2007-05-31 14:48:06 +00:00
Andreas Schwab
4fcc994447
Fix line endianess.
...
From-SVN: r125225
2007-05-31 14:25:40 +00:00
Paolo Carlini
f4c5578ffb
PR c++/32158 (libstdc++ bits)
...
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
2007-05-31 11:13:57 +00:00
Richard Guenther
b1ae209ca9
str_empty.C: Move...
...
2007-05-31 Richard Guenther <rguenther@suse.de>
* g++.dg/other/str_empty.C: Move...
* g++.dg/other/pr30567.C: Move...
* g++.dg/tree-ssa/pr27218.C: Move...
* g++.dg/torture: ...here and remove dg-options.
From-SVN: r125220
2007-05-31 09:37:40 +00:00
Andrew Haley
3e69b919de
natClassLoader.cc (_Jv_NewClassFromInitializer): Clear INTERPRETED access modifier.
...
2007-05-31 Andrew Haley <aph@redhat.com>
* java/lang/natClassLoader.cc (_Jv_NewClassFromInitializer): Clear
INTERPRETED access modifier.
From-SVN: r125218
2007-05-31 09:30:39 +00:00
Paolo Carlini
10c1d4af2f
re PR c++/32158 (uninitialized_fill compile failure if no default assignment operator)
...
gcc/cp
2007-05-31 Paolo Carlini <pcarlini@suse.de>
PR c++/32158
* semantics.c (finish_trait_expr): Complete the types.
gcc/testsuite
2007-05-31 Paolo Carlini <pcarlini@suse.de>
PR c++/32158
* g++.dg/ext/is_pod_incomplete.C: New.
From-SVN: r125217
2007-05-31 08:58:47 +00:00
Paul Thomas
fdecbf8070
re PR fortran/32103 (Module with equivalence draws "unsatisfied reference")
...
2007-05-31 Paul Thomas <pault@gcc.gnu.org>
PR fortran/32103
* module.c (mio_symtree_ref): If an equivalence group member
is not used, give it a hidden symbol and set the pointer_info.
(load_equiv): Only free the equivalence if none of the members
are used.
2007-05-31 Paul Thomas <pault@gcc.gnu.org>
PR fortran/32103
* gfortran.dg/module_equivalence_3.f90: New test.
From-SVN: r125216
2007-05-31 07:45:50 +00:00
Paolo Bonzini
eecb746156
[multiple changes]
...
2003-05-31 Paolo Bonzini <bonzini@gnu.org>
PR libjava/32098
* libtool.m4: Revert previous change.
* ltgcc.m4: Put it here.
libjava:
2007-05-31 Paolo Bonzini <bonzini@gnu.org>
PR libjava/32098
* configure: Regenerated.
* aclocal.m4: Regenerated.
From-SVN: r125215
2007-05-31 06:40:42 +00:00
Dave Korn
ed0e74e0a6
re PR preprocessor/14331 (please add option to suppress warning message "no newline at end of file")
...
2007-05-31 Dave Korn <dave.korn@artimi.com>
PR preprocessor/14331
* lex.c (_cpp_get_fresh_line): Don't warn if no newline at EOF.
From-SVN: r125212
2007-05-31 02:06:48 +00:00
Russell Yanofsky
8af2fec40b
re PR c++/7412 ([DR 106] References to references)
...
2007-05-30 Russell Yanofsky <russ@yanofsky.org>
Douglas Gregor <doug.gregor@gmail.com>
Pedro Lamarao <pedro.lamarao@mndfck.org>
Howard Hinnant <howard.hinnant@gmail.com>
PR c++/7412
PR c++/29939
* g++.dg/cpp0x/rv8p.C: New.
* g++.dg/cpp0x/temp-constructor-bug.C: New.
* g++.dg/cpp0x/cast-bug.C: New.
* g++.dg/cpp0x/elision_weak.C: New.
* g++.dg/cpp0x/collapse-bug.C: New.
* g++.dg/cpp0x/rv3p.C: New.
* g++.dg/cpp0x/rv7n.C: New.
* g++.dg/cpp0x/overload-conv-1.C: New.
* g++.dg/cpp0x/rv2n.C: New.
* g++.dg/cpp0x/deduce.C: New.
* g++.dg/cpp0x/temp-va-arg-bug.C: New.
* g++.dg/cpp0x/rv6p.C: New.
* g++.dg/cpp0x/template_deduction.C: New.
* g++.dg/cpp0x/implicit-copy.C: New.
* g++.dg/cpp0x/rv1p.C: New.
* g++.dg/cpp0x/cast.C: New.
* g++.dg/cpp0x/rv5n.C: New.
* g++.dg/cpp0x/collapse.C: New.
* g++.dg/cpp0x/overload-conv-2.C: New.
* g++.dg/cpp0x/rv4p.C: New.
* g++.dg/cpp0x/rvo.C: New.
* g++.dg/cpp0x/iop.C: New.
* g++.dg/cpp0x/rv3n.C: New.
* g++.dg/cpp0x/rv7p.C: New.
* g++.dg/cpp0x/reference_collapsing.C: New.
* g++.dg/cpp0x/overload.C: New.
* g++.dg/cpp0x/named.C: New.
* g++.dg/cpp0x/rv2p.C: New.
* g++.dg/cpp0x/rv6n.C: New.
* g++.dg/cpp0x/not_special.C: New.
* g++.dg/cpp0x/bind.C: New.
* g++.dg/cpp0x/rv1n.C: New.
* g++.dg/cpp0x/rv5p.C: New.
* g++.dg/cpp0x/elision.C: New.
* g++.dg/cpp0x/named_refs.C: New.
* g++.dg/cpp0x/unnamed_refs.C: New.
* g++.dg/cpp0x/rv4n.C: New.
* g++.dg/cpp0x/elision_neg.C: New.
* g++.dg/init/copy7.C: Run in C++98 mode.
* g++.dg/overload/arg1.C: Ditto.
* g++.dg/overload/arg4.C: Ditto.
2007-05-30 Russell Yanofsky <russ@yanofsky.org>
Douglas Gregor <doug.gregor@gmail.com>
Pedro Lamarao <pedro.lamarao@mndfck.org>
Howard Hinnant <howard.hinnant@gmail.com>
PR c++/7412
PR c++/29939
* typeck.c (comptypes): Don't consider rvalue and lvalue
reference types to be equivalent.
(check_return_expr): Move from certain lvalues when returning
them.
* decl.c (grokdeclarator): Implement reference collapsing.
(copy_fn_p): Don't consider constructors taking rvalue references
to be copy constructors.
(move_fn_p): New.
* call.c (conversion): New "rvaluedness_matches_p" member.
(convert_class_to_reference): Require reference type as first
parameter instead of base type.
(reference_binding): Add logic to handle rvalue references.
(implicit_conversion): Update inaccurate comment.
(convert_like_real): Disable creation of temporaries that are
impossible to initialize for types with move constructors.
(build_over_call): Elide move constructors when possible.
(maybe_handle_implicit_object): Set "rvaluedness_matches_p".
(maybe_handle_ref_bind): Return conversion instead of type node.
(compare_ics): Add logic to use "rvaluedness_matches_p" values to
determine preferred conversion sequences.
* cp-tree.h (TYPE_REF_IS_RVALUE): New.
(LOOKUP_PREFER_RVALUE): New.
(DECL_MOVE_CONSTRUCTOR_P): New.
(struct cp_declarator): Add "reference" member for reference
types, with new "rvalue_ref" flag.
(cp_build_reference_type): Declare.
(move_fn_p): Declare.
* error.c (dump_type_prefix): Format rvalue reference types
correctly in error messages.
* except.c (build_throw): Move from certain lvalues when
throwing.
* mangle.c (write_type): Mangle rvalue references differently
than regular references.
* parser.c (make_reference_declarator): Add boolean parameter for
rvalue references.
(cp_parser_make_indirect_declarator): New.
(cp_parser_new_declarator_opt): Call
cp_parser_make_indirect_declarator.
(cp_parser_conversion_declarator_opt): Ditto.
(cp_parser_declarator): Ditto.
(cp_parser_ptr_operator): Parse "&&" tokens into rvalue reference
declarators.
* pt.c (tsubst): Implement reference collapsing.
(maybe_adjust_types_for_deduction): Implement special template
parameter deduction rule for rvalue references.
(type_unification_real): Update calls to
maybe_adjust_types_for_deduction.
(try_one_overload): Ditto.
(unify_pack_expansion): Ditto.
* tree.c (lvalue_p_1): Handle rvalue reference types.
(cp_build_reference_type): New.
From-SVN: r125211
2007-05-31 01:18:22 +00:00
GCC Administrator
0ae581acf1
Daily bump.
...
From-SVN: r125208
2007-05-31 00:16:52 +00:00
Zdenek Dvorak
89d28202fb
MAINTAINERS (Various Maintainers): Add myself as auto-vectorizer maintainer.
...
* MAINTAINERS (Various Maintainers): Add myself as
auto-vectorizer maintainer.
From-SVN: r125205
2007-05-30 23:25:30 +00:00
Ralf Wildenhues
3b7bab4d68
* tree-vrp.c (compare_names): Initialize sop.
...
From-SVN: r125203
2007-05-30 22:51:22 +00:00
Dirk Mueller
62090afbfb
cgraphunit.c (cgraph_analyze_function): Remove computation of inline parameters.
...
* cgraphunit.c (cgraph_analyze_function): Remove
computation of inline parameters.
From-SVN: r125202
2007-05-30 22:22:43 +00:00
Jakub Jelinek
27edb5482d
re PR c++/31809 (sometimes TREE_READONLY is still set for non read only variables causing wrong code)
...
PR c++/31809
* decl.c (cp_finish_decl): Clear TREE_READONLY flag on TREE_STATIC
variables that need runtime initialization.
* g++.dg/opt/static5.C: New test.
From-SVN: r125201
2007-05-30 23:24:24 +02:00
Richard Guenther
859fa3b874
dg.exp: Prune torture/.
...
2007-05-30 Richard Guenther <rguenther@suse.de>
* g++.dg/dg.exp: Prune torture/.
* g++.dg/torture/dg-torture.exp: New testsuite.
From-SVN: r125200
2007-05-30 21:17:32 +00:00
Uros Bizjak
b42f4d620b
* config/i386/darwin.h (TARGET_SUBTARGET_DEFAULT): Undef before define.
...
From-SVN: r125198
2007-05-30 22:07:06 +02:00
Kazu Hirata
f078230d96
pr27387.C: Move and rename to ...
...
* gcc.target/arm/pr27387.C: Move and rename to ...
* g++.dg/inherit/thunk8.C: ... here.
From-SVN: r125197
2007-05-30 19:24:28 +00:00
Richard Sandiford
9403b7f7ca
config.gcc (arm-wrs-vxworks): Remove dbxelf.h from tm_file.
...
gcc/
* config.gcc (arm-wrs-vxworks): Remove dbxelf.h from tm_file.
Add vx-common.h. Include vxworks.h between vx-common.h and
arm/vxworks.h.
* config/vx-common.h (DWARF2_UNWIND_INFO): Undefine before
redefining.
* config/vxworks.h (TARGET_ASM_CONSTRUCTOR): Likewise.
(TARGET_ASM_DESTRUCTOR): Likewise.
* config/arm/vxworks.h (TARGET_OS_CPP_BUILTINS): Check arm_arch_xscale
instead of arm_is_xscale. Use VXWORKS_OS_CPP_BUILTINS.
(OVERRIDE_OPTIONS, SUBTARGET_CPP_SPEC): Define.
(CC1_SPEC): Add -tstrongarm. Line up backslashes.
(VXWORKS_ENDIAN_SPEC): Define.
(ASM_SPEC): Add VXWORKS_ENDIAN_SPEC.
(LIB_SPEC, STARTFILE_SPEC, ENDFILE_SPEC): Redefine to their
VXWORKS_* equivalents.
(LINK_SPEC): Likewise, but add VXWORKS_ENDIAN_SPEC.
(ASM_FILE_START): Delete.
(TARGET_VERSION): Reformat.
(FPUTYPE_DEFAULT, FUNCTION_PROFILER): Define.
(DEFAULT_STRUCTURE_SIZE_BOUNDARY): Define.
* config/arm/t-vxworks (LIB1ASMSRC, LIB1ASMFUNCS): Define.
(FPBIT, DPBIT): Define.
(fp-bit.c, dp-bit.c): New rules.
(MULTILIB_OPTIONS): Add strongarm, -mrtp and -mrtp/-fPIC multilibs.
(MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Define.
* config/arm/arm-protos.h (arm_emit_call_insn): Declare.
* config/arm/arm.h: Include vxworks-dummy.h.
* config/arm/arm.c (arm_elf_asm_constructor, arm_elf_asm_destructor):
Mark with ATTRIBUTE_UNUSED.
(arm_override_options): Do not allow VxWorks RTP PIC to be used
for Thumb. Force r9 to be the PIC register for VxWorks RTPs and
make it incompatible with -msingle-pic-base.
(arm_function_ok_for_sibcall): Return false for calls that might
go through a VxWorks PIC PLT entry.
(require_pic_register): New function, split out from...
(legitimize_pic_address): ...here. Do not use GOTOFF accesses
for VxWorks RTPs.
(arm_load_pic_register): Handle the VxWorks RTP initialization
sequence. Use pic_reg as a shorthand for cfun->machine->pic_reg.
(arm_emit_call_insn): New function.
(arm_assemble_integer): Do not use GOTOFF accesses for VxWorks RTP.
* config/arm/arm.md (UNSPEC_PIC_OFFSET): New unspec number.
(pic_offset_arm): New pattern.
(call, call_value): Use arm_emit_call_insn.
(call_internal, call_value_internal): New expanders.
* config/arm/lib1funcs.asm (__PLT__): Define to empty for
VxWorks unless __PIC__.
From-SVN: r125196
2007-05-30 19:04:09 +00:00
H.J. Lu
f52ae0770f
re PR java/32098 (New libtool doesn't support libjava)
...
2007-05-30 H.J. Lu <hongjiu.lu@intel.com>
PR libjava/32098
* configure: Regenerated.
From-SVN: r125195
2007-05-30 10:54:48 -07:00
H.J. Lu
86e44bd7f6
re PR java/32098 (New libtool doesn't support libjava)
...
2007-05-30 H.J. Lu <hongjiu.lu@intel.com>
PR libjava/32098
* configure.ac: Add AC_CONFIG_AUX_DIR(../..).
* aclocal.m4: Regenerated.
* configure: Likewise.
* Makefile.in: Likewise.
From-SVN: r125194
2007-05-30 10:52:05 -07:00
H.J. Lu
60c7a11a30
re PR java/32098 (New libtool doesn't support libjava)
...
2007-05-30 H.J. Lu <hongjiu.lu@intel.com>
PR libjava/32098
* libtool.m4 (_LT_LANG_GCJ_CONFIG): Use gcc to test gcj features.
From-SVN: r125193
2007-05-30 10:48:10 -07:00
Eric Christopher
5abc5de971
genrecog.c: Include regs.h in generated file.
...
2007-05-30 Eric Christopher <echristo@gmail.com>
* genrecog.c: Include regs.h in generated file.
* genemit.c: Ditto. Fix up formatting.
* config/mn10300/constraints.md: New.
* config/mn10300/mn10300.md: Include.
* config/mn10300/mn10300.c(mn10300_secondary_reload_class):
Fix up for removed macro.
* config/mn10300/predicates.md (call_address_operand): Ditto.
* config/mn10300/mn10300.h (REG_CLASS_FROM_LETTER): Delete.
(CONST_OK_FOR_I): Ditto.
(CONST_OK_FOR_J): Ditto.
(CONST_OK_FOR_K): Ditto.
(CONST_OK_FOR_L): Ditto.
(CONST_OK_FOR_M): Ditto.
(CONST_OK_FOR_N): Ditto.
(CONST_DOUBLE_OK_FOR_LETTER_P): Ditto.
(OK_FOR_Q): Ditto.
(OK_FOR_R): Ditto.
(OK_FOR_T): Ditto.
(EXTRA_CONSTRAINT): Ditto.
From-SVN: r125192
2007-05-30 17:07:58 +00:00
Richard Guenther
9dd3cc811b
MAINTAINERS (Various Maintainers): Add myself as auto-vectorizer maintainer.
...
2007-05-30 Richard Guenther <rguenther@suse.de>
* MAINTAINERS (Various Maintainers): Add myself as
auto-vectorizer maintainer.
From-SVN: r125191
2007-05-30 15:41:03 +00:00
Uros Bizjak
853a33f384
i386.h (MASK_64BIT, [...]): Remove defines.
...
* config/i386/i386.h (MASK_64BIT, MASK_MMX, MASK_3DNOW*, MASK_SSE*):
Remove defines.
* config/i386/biarch.h (TARGET_64BIT_DEFAULT): Define to
OPTION_MASK_ISA_64BIT.
* config/i386/i386.c: Rename MASK_* macros to OPTION_MASK_ISA_*.
From-SVN: r125189
2007-05-30 16:44:35 +02:00
Richard Guenther
fa13976560
re PR middle-end/32152 (omp lowering creates mismatched types)
...
2007-05-30 Richard Guenther <rguenther@suse.de>
PR middle-end/32152
* gimplify.c (gimplify_omp_atomic_pipeline): Use correct
types for comparison.
* fold-const.c (fold_comparison): Call maybe_canonicalize_comparison
with original typed arguments.
* config/i386/i386.c (ix86_gimplify_va_arg): Fix type mismatches.
From-SVN: r125187
2007-05-30 14:11:06 +00:00
Jakub Jelinek
722ba5eeac
re PR tree-optimization/31769 (ICE with OpenMP and exceptions)
...
PR tree-optimization/31769
* except.c (duplicate_eh_regions): Clear prev_try if
ERT_MUST_NOT_THROW region is inside of ERT_TRY region.
* g++.dg/gomp/pr31769.C: New test.
From-SVN: r125183
2007-05-30 15:46:25 +02:00
Jakub Jelinek
9cc1244e76
re PR bootstrap/29382 (Bootstrap comparison failure!)
...
PR bootstrap/29382
* configure.in: Don't use -fkeep-inline-functions for GCC < 3.3.1.
* configure: Rebuilt.
From-SVN: r125182
2007-05-30 15:32:34 +02:00
Zdenek Dvorak
1896570321
tree-scalar-evolution.c (scev_const_prop): Do not create labels.
...
* tree-scalar-evolution.c (scev_const_prop): Do not create labels.
* tree-ssa-sink.c (statement_sink_location): Return basic block and
bsi of the location where statements should be inserted.
(sink_code_in_bb): Take bsi from statement_sink_location.
* lambda-code.c (lambda_loopnest_to_gcc_loopnest): Use bsi_after_labels
instead of bsi_start.
* tree-profile.c (tree_gen_ic_func_profiler): Pass BSI_NEW_STMT to
bsi_insert_after.
* tree-cfg.c (bsi_move_after): Pass BSI_NEW_STMT to bsi_insert_after.
(bsi_move_before): Document inconsistency with bsi_move_after.
(tree_redirect_edge_and_branch): Do not create labels if not necessary.
From-SVN: r125181
2007-05-30 13:29:51 +00:00
Uros Bizjak
0a1c5e5520
i386.h (TARGET_ABM): New define.
...
* config/i386/i386.h (TARGET_ABM): New define.
(TARGET_POPCNT): Ditto.
(TARGET_64BIT, TARGET_MMX, TARGET_3DNOW, TARGET_3DNOW_A, TARGET_SSE*):
New temporary defines to redefine from OPTION_ISA_* defines.
(MASK_64BIT, MASK_MMX, MASK_3DNOW, MASK_3DNOW_A, MASK_SSE*):
New temporary defines to redefine from OPTION_MASK_ISA_* defines.
(ix86_isa_flags): New extern int declaration.
(TARGET_SUBTARGET_DEFAULT): New define.
(TARGET_SUBTARGET_ISA_DEFAULT): Ditto.
(TARGET_SUBTARGET32_DEFAULT): Ditto.
(TARGET_SUBTARGET32_ISA_DEFAULT): Ditto.
(TARGET_SUBTARGET64_ISA_DEFAULT): Ditto.
* config/i386/unix.h: Undef TARGET_SUBTARGET_DEFAULT before define.
* config/i386/darwin.h: Change TARGET_64BIT define to
OPTION_ISA_64BIT.
* config/i386/i386.opt (m3dnowa): Define as undocumented option
using existing "ix86_isa_flags" varible.
(m32, m64): Use existing "ix86_isa_flags" variable.
(mmmx, m3dnow): Ditto.
(msse, msse2, msse3, mssse3, msse4.1, msse4a): Ditto.
(mabm): Define as non-negative option using "x86_abm" variable.
(mpopcnt): Define as non-negative option using "x86_popcnt" variable.
* config/i386/i386.c (ix86_arch_features) [X86_ARCH_CMOVE]:
Rewrite feature test bitmap.
(ix86_isa_flags): New initialized global int varible.
(ix86_isa_flags_explicit): New static int variable.
(ix86_handle_option): Set "ix86_isa_flags_explicit" when mmmx, m3dnow,
msse, msse2, msse3, msse4.1 and msse4a option is processed. Change
i86_isa_flags and ix86_isa_flags_explicit, not target_flags and
target_flags_explicit.
(override_options): Remove "target_enable" and "target_disable" fields
from "struct ptt". Update processor_target_table accordingly. Remove
PTA_PREFETCH_SSE from processor_alias_table entry if PTE_SSE is
defined and rearrange PTA_* bits. Use "ix86_isa_flags" instead of
"target_flags" and "ix86_isa_flags_explicit" instead of
"target_flags_explicit" when masked with MASK_64BIT, MASK_MMX,
MASK_3DNOW, MASK_3DNOW_A or MASK_SSE*. Set "x86_abm" to true when
PTA_ABM is set in processor_alias_table flags entry. Set "x86_popcnt"
to true when either of PTA_POPCNT or PTA_ABM is set in
processor_alias_table flags entry. Set "x86_prefetch_sse" to true
when either of PTA_PREFETCH_SSE or PTA_SSE is set in
processor_alias_table flags entry. Remove handling of
"target_enable" and "target_disable" fields of processor_target_table.
Mask "target_flags" with TARGET_SUBTARGET32_DEFAULT for 32-bit
targets or with TARGET_SUBTARGET64_DEFAULT for 64-bit targets.
Mask "ix86_isa_flags" with TARGET_SUBTARGET32_ISA_DEFAULT for 32-bit
targets or with TARGET_SUBTARGET64_ISA_DEFAULT for 64-bit targets.
(def_builtin): Mask "mask" variable with "ix86_isa_flags", not
"target_flags".
(TARGET_DEFAULT_TARGET_FLAGS): Do not include TARGET_64BIT_DEFAULT.
From-SVN: r125180
2007-05-30 13:24:32 +02:00
Razya Ladelsky
a7c835467a
matrix: New directory.
...
2007-05-28 Razya Ladelsky <razya@il.ibm.com>
* gcc.dg/matrix: New directory.
From-SVN: r125179
2007-05-30 07:17:55 +00:00
David Daney
e440de0e40
re PR target/31975 (segfault in try_split on mips during bootstrap)
...
PR gcc/31975
* config/mips/mips.c (mips_output_mi_thunk): Emit
NOTE_INSN_PROLOGUE_END at beginning of the thunk.
From-SVN: r125178
2007-05-30 04:21:24 +00:00
GCC Administrator
9231eaaccb
Daily bump.
...
From-SVN: r125176
2007-05-30 00:17:03 +00:00
Hui-May Chang
f2f0a9602a
i386.c (ix86_function_regparm): Added checking of ix86_force_align_arg_pointer to determine the number of...
...
* config/i386/i386.c (ix86_function_regparm): Added checking of
ix86_force_align_arg_pointer to determine the number of
register parameters.
* gcc.target/i386/stack-realign.c: New.
From-SVN: r125173
2007-05-29 22:49:42 +00:00
Zdenek Dvorak
5417e0224b
tree-vectorizer.h (DR_MISALIGNMENT): Cast aux to integer.
...
* tree-vectorizer.h (DR_MISALIGNMENT): Cast aux to integer.
(SET_DR_MISALIGNMENT): New.
* tree-vect-analyze.c (vect_compute_data_ref_alignment,
vect_update_misalignment_for_peel, vect_enhance_data_refs_alignment):
Use SET_DR_MISALIGNMENT.
* tree-predcom.c (split_data_refs_to_components): Cast dr->aux from
pointer.
* tree-data-ref.c (create_data_ref, compute_all_dependences,
find_loop_nest): Export.
* tree-data-ref.h (struct data_reference): Change aux field to pointer.
(create_data_ref, compute_all_dependences, find_loop_nest): Declare.
* tree-ssa-loop-prefetch.c: Include tree-data-ref.h.
(L1_CACHE_SIZE_BYTES, L2_CACHE_SIZE_BYTES, NONTEMPORAL_FRACTION):
New macros.
(struct mem_ref): Add field reuse_distance.
(find_or_create_group, record_ref): Use XNEW instead of xcalloc.
Initialize reuse_distance field.
(issue_prefetch_ref): Select temporality of prefetch according to
reuse_distance.
(volume_of_references, volume_of_dist_vector, add_subscript_strides,
self_reuse_distance, determine_loop_nest_reuse): New functions.
(loop_prefetch_arrays): Call determine_loop_nest_reuse.
(tree_ssa_prefetch_arrays): Dump L2 cache size.
* Makefile.in (tree-ssa-loop-prefetch.o): Add TREE_DATA_REF_H
dependency.
* gcc.dg/tree-ssa/prefetch-6.c: New test.
From-SVN: r125172
2007-05-29 21:55:47 +00:00
Daniel Franke
cd5ecab6a7
gfortran.h: Renamed 'enum gfc_generic_isym_id' to 'enum gfc_isym_id'...
...
2007-05-29 Daniel Franke <franke.daniel@gmail.com>
* gfortran.h: Renamed 'enum gfc_generic_isym_id' to 'enum gfc_isym_id',
added missing GFC_ISYM_* enumerators, ordered alphabetically.
(struct gfc_intrinsic_sym): Renamed 'generic_id' to 'id'.
(gfc_find_subroutine): New prototype.
* intrinsic.c (add_sym, add_sym_*): Added argument 'id' and changed all callers.
(find_subroutine): Renamed to 'gfc_find_subroutine', removed static.
* dependency.c: Changed usage of isym->generic_id to isym->id.
* openmp.c: Likewise.
* resolve.c: Likewise.
* trans-array.c: Likewise.
* trans-expr.c: Likewise.
* trans-intrinsic.c: Likewise.
* trans-openmp.c: Likewise.
From-SVN: r125168
2007-05-29 17:10:48 -04:00
H.J. Lu
b7616c4045
configure.ac: Don't include ../config/confsubdir.m4.
...
2007-05-29 H.J. Lu <hongjiu.lu@intel.com>
* configure.ac: Don't include ../config/confsubdir.m4.
* aclocal.m4: Regenerated.
* configure: Likewise.
From-SVN: r125164
2007-05-29 07:30:42 -07:00
Paolo Carlini
f5062a66be
aclocal.m4: Regenerate.
...
2007-05-29 Paolo Carlini <pcarlini@suse.de>
* aclocal.m4: Regenerate.
* testsuite/17_intro/headers/c++1998/c++_for_c.tar: Remove.
* testsuite/17_intro/headers/c++1998/c++.tar: Likewise.
From-SVN: r125163
2007-05-29 14:22:40 +00:00