gcc.git
13 years agostreambuf_iterator.h: Use noexcept per the FDIS.
Paolo Carlini [Mon, 23 May 2011 23:03:42 +0000 (23:03 +0000)]
streambuf_iterator.h: Use noexcept per the FDIS.

2011-05-23  Paolo Carlini  <paolo.carlini@oracle.com>

* include/bits/streambuf_iterator.h: Use noexcept per the FDIS.
(istreambuf_iterator<>::istreambuf_iterator(const
istreambuf_iterator&),  ~istreambuf_iterator()): Add defaulted
in C++0x mode.

From-SVN: r174094

13 years agore PR c++/49105 ([C++0x][SFINAE] ICE during list-initialization of rvalue-references...
Jason Merrill [Mon, 23 May 2011 22:56:04 +0000 (18:56 -0400)]
re PR c++/49105 ([C++0x][SFINAE] ICE during list-initialization of rvalue-references to const)

PR c++/49105
* typeck.c (cp_build_c_cast): Don't strip cv-quals when
converting to reference.
(build_static_cast_1): Update for glvalues.

From-SVN: r174093

13 years agore PR c++/49105 ([C++0x][SFINAE] ICE during list-initialization of rvalue-references...
Jason Merrill [Mon, 23 May 2011 22:55:56 +0000 (18:55 -0400)]
re PR c++/49105 ([C++0x][SFINAE] ICE during list-initialization of rvalue-references to const)

PR c++/49105
* typeck.c (build_const_cast_1): Handle rvalue references.

From-SVN: r174092

13 years agore PR c++/48106 ([C++0x] ICE with scoped enum with fixed underlying type)
Jason Merrill [Mon, 23 May 2011 22:55:46 +0000 (18:55 -0400)]
re PR c++/48106 ([C++0x] ICE with scoped enum with fixed underlying type)

PR c++/48106
* c-common.c (c_common_get_narrower): New.
(shorten_binary_op, shorten_compare, warn_for_sign_compare): Use it.

From-SVN: r174091

13 years agore PR lto/49123 (FAIL: gcc.c-torture/execute/pr48973-[12].c)
Jakub Jelinek [Mon, 23 May 2011 20:38:17 +0000 (22:38 +0200)]
re PR lto/49123 (FAIL: gcc.c-torture/execute/pr48973-[12].c)

PR lto/49123
* gcc.c-torture/execute/pr49123.c: New test.

From-SVN: r174088

13 years agooptc-save-gen.awk: New.
Joseph Myers [Mon, 23 May 2011 19:06:48 +0000 (20:06 +0100)]
optc-save-gen.awk: New.

* optc-save-gen.awk: New.  Based on optc-gen.awk.  Don't generate
parts of output shared with the driver.
* optc-gen.awk: Don't generate parts of output not shared with the
driver.
* opth-gen.awk: Remove GCC_DRIVER conditionals.
* doc/options.texi (SourcerInclude): Mention options-save.c.
* Makefile.in (GCC_OBJS): Use options.o instead of gcc-options.o.
(OBJS): Add options-save.o.
(options-save.c, options-save.o): New.
(options.o): Update dependencies.
(gcc-options.o): Remove.
(mostlyclean): Remove options-save.c.

From-SVN: r174085

13 years agore PR debug/49032 (-gstabs generates reference to deleted static variable)
Jakub Jelinek [Mon, 23 May 2011 18:07:43 +0000 (20:07 +0200)]
re PR debug/49032 (-gstabs generates reference to deleted static variable)

PR debug/49032
* dbxout.c: Include cgraph.h.
(dbxout_expand_expr): If a VAR_DECL is TREE_STATIC, not written
and without value expr, return NULL if no varpool node exists for
it or if it is not needed.
* Makefile.in (dbxout.o): Depend on $(CGRAPH_H).

* gcc.dg/debug/pr49032.c: New test.

From-SVN: r174083

13 years agore PR c/49120 (bogus "value computed is not used" warning (variable-length array...
Jakub Jelinek [Mon, 23 May 2011 18:02:03 +0000 (20:02 +0200)]
re PR c/49120 (bogus "value computed is not used" warning (variable-length array in compound statement))

PR c/49120
* c-decl.c (start_decl): Convert expr to void_type_node.

* gcc.dg/pr49120.c: New test.

From-SVN: r174081

13 years agore PR rtl-optimization/48826 (ICE in dwarf2out_var_location, at dwarf2out.c:22013)
Richard Sandiford [Mon, 23 May 2011 17:57:35 +0000 (17:57 +0000)]
re PR rtl-optimization/48826 (ICE in dwarf2out_var_location, at dwarf2out.c:22013)

gcc/
PR rtl-optimization/48826
* emit-rtl.c (try_split): When splitting a call that is followed
by a NOTE_INSN_CALL_ARG_LOCATION, move the note after the new call.

From-SVN: r174080

13 years agocfgexpand.c (expand_debug_expr): For unused non-addressable parameters passed in...
Jakub Jelinek [Mon, 23 May 2011 17:02:07 +0000 (19:02 +0200)]
cfgexpand.c (expand_debug_expr): For unused non-addressable parameters passed in memory prefer using...

* cfgexpand.c (expand_debug_expr): For unused non-addressable
parameters passed in memory prefer using DECL_INCOMING_RTL over
the pseudos it will be copied into.

From-SVN: r174079

13 years agoSave the initial options after checking vzeroupper.
H.J. Lu [Mon, 23 May 2011 16:51:42 +0000 (16:51 +0000)]
Save the initial options after checking vzeroupper.

gcc/

2011-05-23  H.J. Lu  <hongjiu.lu@intel.com>

PR target/47315
* config/i386/i386.c (ix86_option_override_internal): Save the
initial options after checking vzeroupper.

gcc/testsuite/

2011-05-23  H.J. Lu  <hongjiu.lu@intel.com>

PR target/47315
* gcc.target/i386/pr47315.c: New test.

From-SVN: r174078

13 years agofix pr48988
David Li [Mon, 23 May 2011 16:17:28 +0000 (16:17 +0000)]
fix pr48988

From-SVN: r174077

13 years agore PR c++/47263 ([C++0x] lambda + dynamic-exception-specification std::unexpected...
Jason Merrill [Mon, 23 May 2011 15:48:37 +0000 (11:48 -0400)]
re PR c++/47263 ([C++0x] lambda + dynamic-exception-specification std::unexpected() is not called.)

PR c++/47263
* decl.c (use_eh_spec_block): Do use an EH spec block for a
lambda op().

From-SVN: r174076

13 years ago* libsupc++/exception_ptr.h: Fix compilation in C++0x mode.
Jason Merrill [Mon, 23 May 2011 15:39:48 +0000 (11:39 -0400)]
* libsupc++/exception_ptr.h: Fix compilation in C++0x mode.

From-SVN: r174075

13 years agogimple.c (gimple_types_compatible_p_1): Always compare type names.
Richard Guenther [Mon, 23 May 2011 15:36:32 +0000 (15:36 +0000)]
gimple.c (gimple_types_compatible_p_1): Always compare type names.

2011-05-23  Richard Guenther  <rguenther@suse.de>

* gimple.c (gimple_types_compatible_p_1): Always compare type names.
(iterative_hash_gimple_type): Always hash type names.

From-SVN: r174074

13 years agore PR libstdc++/49058 ([C++0x] Bind no-arguments functor failed using std::bind with...
Jason Merrill [Mon, 23 May 2011 15:32:39 +0000 (11:32 -0400)]
re PR libstdc++/49058 ([C++0x] Bind no-arguments functor failed using std::bind with -pedantic option.)

PR c++/49058
* call.c (splice_viable): Be strict in templates.

From-SVN: r174073

13 years agore PR c++/47336 ([C++0x] ICE: "Error reporting routines re-entered")
Jason Merrill [Mon, 23 May 2011 15:32:29 +0000 (11:32 -0400)]
re PR c++/47336 ([C++0x] ICE: "Error reporting routines re-entered")

PR c++/47336
* error.c (dump_template_bindings): Suppress access control.

From-SVN: r174072

13 years agore PR c++/47544 ([C++0x] linker does not find =default constructor for explicitly...
Jason Merrill [Mon, 23 May 2011 15:32:19 +0000 (11:32 -0400)]
re PR c++/47544 ([C++0x] linker does not find =default constructor for explicitly instantiated template)

PR c++/47544
* pt.c (instantiate_decl): Handle =default.

From-SVN: r174071

13 years agore PR c++/48617 ([C++0x] Problem with non-type template parameters and decltype)
Jason Merrill [Mon, 23 May 2011 15:32:10 +0000 (11:32 -0400)]
re PR c++/48617 ([C++0x] Problem with non-type template parameters and decltype)

PR c++/48617
* pt.c (invalid_nontype_parm_type_p): Allow DECLTYPE_TYPE.

From-SVN: r174070

13 years agoforwprop-11.c: Adjust and un-XFAIL.
Richard Guenther [Mon, 23 May 2011 14:52:31 +0000 (14:52 +0000)]
forwprop-11.c: Adjust and un-XFAIL.

2011-05-23  Richard Guenther  <rguenther@suse.de>

* gcc.dg/tree-ssa/forwprop-11.c: Adjust and un-XFAIL.

From-SVN: r174069

13 years agore PR tree-optimization/40874 (Function object abstraction penalty with inline functi...
Richard Guenther [Mon, 23 May 2011 14:36:28 +0000 (14:36 +0000)]
re PR tree-optimization/40874 (Function object abstraction penalty with inline functions.)

2011-05-23  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/40874
* g++.dg/tree-ssa/pr40874.C: New testcase.

From-SVN: r174068

13 years agodon't use TYPE_ARG_TYPES when calling c-family:check_function_arguments
Nathan Froyd [Mon, 23 May 2011 14:20:49 +0000 (14:20 +0000)]
don't use TYPE_ARG_TYPES when calling c-family:check_function_arguments

don't use TYPE_ARG_TYPES when calling c-family:check_function_arguments
gcc/
* c-typeck.c (build_function_call_vec): Tweak call to
check_function_arguments.

gcc/c-family/
* c-common.h (check_function_arguments): Tweak prototype of
check_function_arguments.
* c-common.c (check_function_arguments): Likewise.  Adjust
calls to check_function_nonnull, check_function_format, and
check_function_sentinel.
(check_function_sentinel): Take a FUNCTION_TYPE rather than
separate attributes and typelist arguments.  Use
FOREACH_FUNCTION_ARGS to iterate over argument types.

gcc/cp/
* call.c (build_over_call): Tweak call to check_function_arguments.
* typeck.c (cp_build_function_call_vec): Likewise.

From-SVN: r174067

13 years agore PR tree-optimization/49115 (invalid return value optimization (?) when exception...
Richard Guenther [Mon, 23 May 2011 12:08:41 +0000 (12:08 +0000)]
re PR tree-optimization/49115 (invalid return value optimization (?) when exception is thrown and caught)

2011-05-23  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/49115
* tree-ssa-alias.c (stmt_kills_ref_p_1): If the assignment
is not necessarily carried out, do not claim it kills the ref.
* tree-ssa-dce.c (mark_aliased_reaching_defs_necessary_1): Likewise.

* g++.dg/torture/pr49115.C: New testcase.

From-SVN: r174066

13 years agore PR tree-optimization/15419 (memcpy pessimization)
Richard Guenther [Mon, 23 May 2011 12:03:19 +0000 (12:03 +0000)]
re PR tree-optimization/15419 (memcpy pessimization)

2011-05-23  Richard Guenther  <rguenther@suse.de>

PR middle-end/15419
* builtins.c (fold_builtin_memory_op): Be less restrictive about
what pointer types we accept for folding.

* gcc.dg/memcpy-3.c: New testcase.

From-SVN: r174065

13 years agogthr-gnat.c: Remove.
Rainer Orth [Mon, 23 May 2011 11:12:25 +0000 (11:12 +0000)]
gthr-gnat.c: Remove.

gcc:
* gthr-gnat.c: Remove.
* gthr-gnat.h: Remove.
* Makefile.in (LIB2ADDEH): Remove $(srcdir)/gthr-gnat.c.
* config/t-freebsd (LIB2ADDEH): Likewise.
* config/t-linux (LIB2ADDEH): Likewise.
* config/t-sol2 (LIB2ADDEH): Likewise.
* config/ia64/t-vms (LIB2ADDEH): Likewise.
* configure.ac (target_thread_file): Remove gnat handling.
* configure: Regenerate.
* doc/install.texi (Configuration, --enable-threads): Remove gnat.

gcc/po:
* EXCLUDES: Remove gthr-gnat.c, gthr-gnat.h.

libgcc:
* config/s390/t-tpf (LIB2ADDEH): Remove $(gcc_srcdir)/gthr-gnat.c.

From-SVN: r174064

13 years agogcov.c (create_file_names): If no object directory is specified, keep the directory...
Tristan Gingold [Mon, 23 May 2011 10:20:01 +0000 (10:20 +0000)]
gcov.c (create_file_names): If no object directory is specified, keep the directory of the file.

* gcov.c (create_file_names): If no object directory is specified,
keep the directory of the file.

Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>
From-SVN: r174062

13 years agoconfigure.ac (enable_threads): Remove irix; add lynx, tpf; sort list.
Rainer Orth [Mon, 23 May 2011 10:00:39 +0000 (10:00 +0000)]
configure.ac (enable_threads): Remove irix; add lynx, tpf; sort list.

* configure.ac (enable_threads): Remove irix; add lynx, tpf; sort list.
* configure: Regenerate.

From-SVN: r174061

13 years agore PR middle-end/48973 (Inliner bug with one-bit (1-bit) bitfield)
Jakub Jelinek [Mon, 23 May 2011 09:36:05 +0000 (11:36 +0200)]
re PR middle-end/48973 (Inliner bug with one-bit (1-bit) bitfield)

PR middle-end/48973
* expr.c (expand_expr_real_2) <case LT_EXPR>: If do_store_flag
failed and the comparison has a single bit signed type, use
constm1_rtx instead of const1_rtx for true value.
(do_store_flag): If ops->type is single bit signed type, disable
signel bit test optimization and pass -1 instead of 1 as last
parameter to emit_store_flag_force.

* gcc.c-torture/execute/pr48973-1.c: New test.
* gcc.c-torture/execute/pr48973-2.c: New test.

From-SVN: r174060

13 years agore PR c++/18016 (Warn about member variables initialized with itself)
Jonathan Wakely [Mon, 23 May 2011 08:15:16 +0000 (08:15 +0000)]
re PR c++/18016 (Warn about member variables initialized with itself)

2011-05-23  Jonathan Wakely  <jwakely.gcc@gmail.com>

PR c++/18016
* init.c (perform_member_init): Check for self-initialization.

From-SVN: r174058

13 years agore PR middle-end/45098 (Missed induction variable optimization)
Tom de Vries [Mon, 23 May 2011 07:27:59 +0000 (07:27 +0000)]
re PR middle-end/45098 (Missed induction variable optimization)

2011-05-23  Tom de Vries  <tom@codesourcery.com>

PR target/45098
* tree-ssa-loop-niter.c (infer_loop_bounds_from_pointer_arith): New
function.
(infer_loop_bounds_from_undefined): Use new function.

From-SVN: r174056

13 years agore PR middle-end/45098 (Missed induction variable optimization)
Tom de Vries [Mon, 23 May 2011 07:00:02 +0000 (07:00 +0000)]
re PR middle-end/45098 (Missed induction variable optimization)

2011-05-23  Tom de Vries  <tom@codesourcery.com>

PR target/45098
* gcc.target/arm/ivopts-6.c: New test.

From-SVN: r174055

13 years agoDaily bump.
GCC Administrator [Mon, 23 May 2011 00:19:31 +0000 (00:19 +0000)]
Daily bump.

From-SVN: r174054

13 years ago[multiple changes]
Paolo Carlini [Mon, 23 May 2011 00:05:24 +0000 (00:05 +0000)]
[multiple changes]

2011-05-22  Jonathan Wakely  <jwakely.gcc@gmail.com>

* testsuite/20_util/bind/cv_quals_2.cc: New.

2011-05-22  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/49058
* include/std/functional (_Bind<_Functor(_Bound_args...)>::
operator()(_Args&&...)): Don't cv qualify _Functor directly
in the default template argument, SFINAE doesn't apply when
the functor has no arguments.
* testsuite/20_util/bind/49058_1.cc: New.
* testsuite/20_util/bind/49058_2.cc: Likewise.

From-SVN: r174048

13 years agomips.h (SUBTARGET_ASM_OPTIMIZING_SPEC): Delete.
Richard Sandiford [Sun, 22 May 2011 21:32:32 +0000 (21:32 +0000)]
mips.h (SUBTARGET_ASM_OPTIMIZING_SPEC): Delete.

gcc/
* config/mips/mips.h (SUBTARGET_ASM_OPTIMIZING_SPEC): Delete.
(ASM_SPEC): Add a -O* option here.  Pass -O0 for -noasmopt,
-O1 for -fno-delayed-branch, -O2 if optimization is enabled,
and -O0 otherwise.
(EXTRA_SPECS): Remove subtarget_asm_optimizing_spec.

From-SVN: r174047

13 years agocfgcleanup.c (try_forward_edges): Do not update BB_FORWARDER_BLOCK.
Eric Botcazou [Sun, 22 May 2011 21:29:20 +0000 (21:29 +0000)]
cfgcleanup.c (try_forward_edges): Do not update BB_FORWARDER_BLOCK.

* cfgcleanup.c (try_forward_edges): Do not update BB_FORWARDER_BLOCK.
(try_optimize_cfg): Update BB_FORWARDER_BLOCK if try_forward_edges
returns true.

From-SVN: r174046

13 years agomips.c (mips_default_arch): Honor MIPS_ISA_DEFAULT.
Richard Sandiford [Sun, 22 May 2011 21:21:21 +0000 (21:21 +0000)]
mips.c (mips_default_arch): Honor MIPS_ISA_DEFAULT.

gcc/
* config/mips/mips.c (mips_default_arch): Honor MIPS_ISA_DEFAULT.

From-SVN: r174045

13 years agosparc.c (sparc_delegitimize_address): Handle UNSPEC_MOVE_PIC pattern.
Eric Botcazou [Sun, 22 May 2011 20:10:54 +0000 (20:10 +0000)]
sparc.c (sparc_delegitimize_address): Handle UNSPEC_MOVE_PIC pattern.

* config/sparc/sparc.c (sparc_delegitimize_address): Handle
UNSPEC_MOVE_PIC pattern.

From-SVN: r174043

13 years agoconfig.gcc (sparc-*-elf*): Add sparc/t-crtin.
Eric Botcazou [Sun, 22 May 2011 20:01:01 +0000 (20:01 +0000)]
config.gcc (sparc-*-elf*): Add sparc/t-crtin.

* config.gcc (sparc-*-elf*): Add sparc/t-crtin.
(sparc-*-rtems*): Likewise.
(sparc64-*-elf*): Likewise.
(sparc64-*-rtems*): Likewise.
(sparc*-*-solaris2*): Likewise.  Remove crti.o crtn.o extra parts.
* config/sparc/t-crtin: New file.
* config/sparc/t-sol2 (crti.o): Delete rule.
(crtn.o): Likewise.
* config/sparc/t-linux64 (EXTRA_MULTILIB_PARTS): Delete.
* config/sparc/t-sol2-64 (EXTRA_MULTILIB_PARTS): Likewise.
* config/sparc/sp64-elf.h (STARTFILE_SPEC): Tidy and add crti.o.
(ENDFILE_SPEC): Add crtn.o.

From-SVN: r174041

13 years agoFix formulation
Tom de Vries [Sun, 22 May 2011 19:59:17 +0000 (19:59 +0000)]
Fix formulation

From-SVN: r174040

13 years agostop.c (stop_string,error_stop_string): Minor cleanup.
Tobias Burnus [Sun, 22 May 2011 19:34:16 +0000 (21:34 +0200)]
stop.c (stop_string,error_stop_string): Minor cleanup.

2011-05-22  Tobias Burnus  <burnus@net-b.de>

        * runtime/stop.c (stop_string,error_stop_string): Minor cleanup.

From-SVN: r174039

13 years ago* lex.c (init_vectorized_lexer): Fix comparison of masked value.
Uros Bizjak [Sun, 22 May 2011 19:04:54 +0000 (21:04 +0200)]
* lex.c (init_vectorized_lexer): Fix comparison of masked value.

From-SVN: r174037

13 years agore PR middle-end/48689 (ICE in fold-const.c:13798 with fold checking)
Tom de Vries [Sun, 22 May 2011 19:00:33 +0000 (19:00 +0000)]
re PR middle-end/48689 (ICE in fold-const.c:13798 with fold checking)

2011-05-22  Tom de Vries  <tom@codesourcery.com>

PR middle-end/48689
* fold-const.c (fold_checksum_tree): Guard TREE_CHAIN use with
CODE_CONTAINS_STRUCT (TS_COMMON).

From-SVN: r174035

13 years agore PR middle-end/49029 (ICE in simplify_subreg, at simplify-rtx.c:5266)
Jakub Jelinek [Sun, 22 May 2011 19:00:00 +0000 (21:00 +0200)]
re PR middle-end/49029 (ICE in simplify_subreg, at simplify-rtx.c:5266)

PR middle-end/49029
* expmed.c (extract_fixed_bit_field): Test whether target can be used
only after deciding which mode to use.

* gcc.c-torture/compile/pr49029.c: New test.

From-SVN: r174034

13 years agore PR middle-end/45098 (Missed induction variable optimization)
Tom de Vries [Sun, 22 May 2011 18:57:19 +0000 (18:57 +0000)]
re PR middle-end/45098 (Missed induction variable optimization)

2011-05-22  Tom de Vries  <tom@codesourcery.com>

PR target/45098
* tree-ssa-loop-ivopts.c (force_expr_to_var_cost): Fix const test
for call to get_shiftadd_cost.

From-SVN: r174033

13 years agore PR bootstrap/49104 (bootstrap failure on AMD K6-2 with illegal instruction (cmove...
Uros Bizjak [Sun, 22 May 2011 18:53:32 +0000 (20:53 +0200)]
re PR bootstrap/49104 (bootstrap failure on AMD K6-2 with illegal instruction (cmove) in stage2)

PR target/49104
* config/i386/cpuid.h (bit_MMXEXT): New define.

libcpp/ChangeLog:

2011-05-22  Uros Bizjak  <ubizjak@gmail.com>

PR target/49104
* lex.c (init_vectorized_lexer): Do not set "minimum" when __3dNOW_A__
is defined.  Check bit_MMXEXT and bit_CMOV to use search_line_mmx.

From-SVN: r174032

13 years agore PR c++/48647 ([C++0x] SFINAE does not handle incompatible pointer types well in...
Jason Merrill [Sun, 22 May 2011 18:48:39 +0000 (14:48 -0400)]
re PR c++/48647 ([C++0x] SFINAE does not handle incompatible pointer types well in conditional operator)

PR c++/48647
* typeck.c (composite_pointer_type_r): Return error_mark_node
on error in SFINAE context.

From-SVN: r174031

13 years agoPR 48931 Make backtrace async-signal-safe, reformat output
Janne Blomqvist [Sun, 22 May 2011 16:38:05 +0000 (19:38 +0300)]
PR 48931 Make backtrace async-signal-safe, reformat output

From-SVN: r174030

13 years agostormy16.c (xstormy16_init_builtins): prevent initialisation of non-existant args...
Nick Clifton [Sun, 22 May 2011 14:51:34 +0000 (14:51 +0000)]
stormy16.c (xstormy16_init_builtins): prevent initialisation of non-existant args[2] element.

* config/stormy16/stormy16.c (xstormy16_init_builtins): prevent
initialisation of non-existant args[2] element.  Use args[] array
not arg[] array to pass arguments to build_function_type_list.

From-SVN: r174029

13 years agogcc_release (adjust_dirs, [...]): Remove.
Joseph Myers [Sun, 22 May 2011 14:20:12 +0000 (15:20 +0100)]
gcc_release (adjust_dirs, [...]): Remove.

* gcc_release (adjust_dirs, maybe_build_tarfile): Remove.
(build_tarfiles): Don't build separate files for languages and
core.
(build_diffs): Only build one set of diffs.
(announce_snapshot): Only announce one tar file.
(ADA_DIRS, CPLUSPLUS_DIRS, FORTRAN95_DIRS, GO_DIRS, JAVA_DIRS,
OBJECTIVEC_DIRS, TESTSUITE_DIRS): Remove.  Don't adjust names
relative to WORKING_DIRECTORY.

From-SVN: r174028

13 years agofrontend-passes.c (cfe_register_funcs): Also register character functions if their...
Thomas Koenig [Sun, 22 May 2011 10:38:09 +0000 (10:38 +0000)]
frontend-passes.c (cfe_register_funcs): Also register character functions if their charlens are known and constant.

2011-05-22  Thomas Koenig  <tkoenig@gcc.gnu.org>

* frontend-passes.c (cfe_register_funcs):  Also register
character functions if their charlens are known and constant.
Also register allocatable functions.

2011-05-22  Thomas Koenig  <tkoenig@gcc.gnu.org>

* gfortran.dg/function_optimize_8.f90:  New test case.

From-SVN: r174027

13 years agore PR tree-optimization/49087 (crash in vect_is_slp_reduction)
Ira Rosen [Sun, 22 May 2011 08:04:43 +0000 (08:04 +0000)]
re PR tree-optimization/49087 (crash in vect_is_slp_reduction)

        PR tree-optimization/49087
        * tree-vect-loop.c (vect_is_slp_reduction): Fail if
        LHS has no uses.

From-SVN: r174026

13 years agore PR c++/49092 (ice in tree_add_const_value_attribute)
Jason Merrill [Sun, 22 May 2011 04:40:55 +0000 (00:40 -0400)]
re PR c++/49092 (ice in tree_add_const_value_attribute)

PR c++/49092
* dwarf2out.c (tree_add_const_value_attribute_for_decl): Check for
static storage duration.

From-SVN: r174024

13 years agoDaily bump.
GCC Administrator [Sun, 22 May 2011 00:18:45 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r174021

13 years agosparc.md (setjmp): Handle PIC mode and use the hard frame pointer.
Eric Botcazou [Sat, 21 May 2011 22:49:05 +0000 (22:49 +0000)]
sparc.md (setjmp): Handle PIC mode and use the hard frame pointer.

* config/sparc/sparc.md (setjmp): Handle PIC mode and use the hard
frame pointer.

From-SVN: r174013

13 years agosparc.c (eligible_for_return_delay): Do not return false if there are call-saved...
Eric Botcazou [Sat, 21 May 2011 22:03:37 +0000 (22:03 +0000)]
sparc.c (eligible_for_return_delay): Do not return false if there are call-saved registers here...

* config/sparc/sparc.c (eligible_for_return_delay): Do not return
false if there are call-saved registers here...
(sparc_can_use_return_insn_p): ...but here instead.
(save_or_restore_regs): Fix thinko.
(sparc_expand_prologue): Use current_function_is_leaf.
(sparc_frame_pointer_required): Likewise.

From-SVN: r174010

13 years agosparc.c (eligible_for_return_delay): Do not return false if there are call-saved...
Eric Botcazou [Sat, 21 May 2011 22:02:25 +0000 (22:02 +0000)]
sparc.c (eligible_for_return_delay): Do not return false if there are call-saved registers here...

* config/sparc/sparc.c (eligible_for_return_delay): Do not return
false if there are call-saved registers here...
(sparc_can_use_return_insn_p): ...but here instead.
(save_or_restore_regs): Fix thinko.
(sparc_expand_prologue): Use current_function_is_leaf.
(sparc_frame_pointer_required): Likewise.

From-SVN: r174008

13 years agore PR c++/48945 ([C++0x] static constexpr member function cannot be defined out-of...
Jason Merrill [Sat, 21 May 2011 22:01:45 +0000 (18:01 -0400)]
re PR c++/48945 ([C++0x] static constexpr member function cannot be defined out-of class)

PR c++/48945
* decl.c (grokdeclarator): Don't add set const function-cv-qual
for constexpr fns to memfn_quals, just add it to the type.
(revert_static_member_fn): Don't complain about quals.
(check_static_quals): New.
(grokfndecl): Call it.
(start_preparsed_function): Don't call revert_static_member_fn.

From-SVN: r174007

13 years agore PR c++/48945 ([C++0x] static constexpr member function cannot be defined out-of...
Jason Merrill [Sat, 21 May 2011 22:01:38 +0000 (18:01 -0400)]
re PR c++/48945 ([C++0x] static constexpr member function cannot be defined out-of class)

PR c++/48945
* decl.c (revert_static_member_fn): Ignore const on constexpr fn.

From-SVN: r174006

13 years agore PR c++/48780 ([C++0x] scoped enumerations and va_arg (default argument promotions))
Jason Merrill [Sat, 21 May 2011 22:01:29 +0000 (18:01 -0400)]
re PR c++/48780 ([C++0x] scoped enumerations and va_arg (default argument promotions))

PR c++/48780
* cvt.c (type_promotes_to): Don't promote scoped enums.

From-SVN: r174005

13 years agounique_ptr.h: Use noexcept per the FDIS.
Paolo Carlini [Sat, 21 May 2011 21:50:39 +0000 (21:50 +0000)]
unique_ptr.h: Use noexcept per the FDIS.

2011-05-21  Paolo Carlini  <paolo.carlini@oracle.com>

* include/bits/unique_ptr.h: Use noexcept per the FDIS.

From-SVN: r174004

13 years agore PR ada/49097 (gnatbind link fails to find version_string, potential ranlib concurr...
Joseph Myers [Sat, 21 May 2011 19:45:27 +0000 (20:45 +0100)]
re PR ada/49097 (gnatbind link fails to find version_string, potential ranlib concurrency problem)

PR ada/49097
* gcc-interface/Make-lang.in (gnatbind$(exeext)): Depend on
$(LIBDEPS).

From-SVN: r174002

13 years agore PR fortran/48699 ([OOP] MOVE_ALLOC inside SELECT TYPE)
Janus Weil [Sat, 21 May 2011 19:12:51 +0000 (21:12 +0200)]
re PR fortran/48699 ([OOP] MOVE_ALLOC inside SELECT TYPE)

2011-05-21  Janus Weil  <janus@gcc.gnu.org>

PR fortran/48699
* match.c (select_type_set_tmp): Make the temporary ALLOCATABLE if the
selector is ALLOCATABLE.

2011-05-21  Janus Weil  <janus@gcc.gnu.org>

PR fortran/48699
* gfortran.dg/select_type_23.f03: New.

From-SVN: r174001

13 years agore PR target/49098 (unused parameters in rx.c:rx_memory_move_cost)
Nick Clifton [Sat, 21 May 2011 16:35:38 +0000 (16:35 +0000)]
re PR target/49098 (unused parameters in rx.c:rx_memory_move_cost)

PR target/49098
* config/rx/rx.c (rx_memory_move_cost): Note unused parameters.

From-SVN: r173999

13 years agoIn gcc/objc/: 2011-05-21 Nicola Pero <nicola.pero@meta-innovation.com>
Nicola Pero [Sat, 21 May 2011 15:57:11 +0000 (15:57 +0000)]
In gcc/objc/: 2011-05-21 Nicola Pero <nicola.pero@meta-innovation.com>

In gcc/objc/:
2011-05-21  Nicola Pero  <nicola.pero@meta-innovation.com>

* config-lang.in (gtfiles): Updated order of files to fix building
when the gcc/cp directory is missing, as in the case of some
release tarballs.

From-SVN: r173998

13 years agoIn gcc/: 2011-05-21 Nicola Pero <nicola.pero@meta-innovation.com>
Nicola Pero [Sat, 21 May 2011 13:08:18 +0000 (13:08 +0000)]
In gcc/: 2011-05-21 Nicola Pero <nicola.pero@meta-innovation.com>

In gcc/:
2011-05-21  Nicola Pero  <nicola.pero@meta-innovation.com>

* gengtype.c (walk_type): Implemented "atomic" GTY option.
* doc/gty.texi (GTY Options): Document "atomic" GTY option.

From-SVN: r173996

13 years agoopt-read.awk: New.
Joseph Myers [Sat, 21 May 2011 11:34:29 +0000 (12:34 +0100)]
opt-read.awk: New.

* opt-read.awk: New.  Split out of optc-gen.awk and opth-gen.awk.
* optc-gen.awk: Move common code to opt-read.awk.
* opth-gen.awk: Likewise.
* Makefile.in (options.c, s-options-h): Update to use
opt-read.awk.

From-SVN: r173995

13 years agore PR c++/49066 ([C++0x] Non-defining declaration of deleted function suppresses...
Jason Merrill [Sat, 21 May 2011 03:57:12 +0000 (23:57 -0400)]
re PR c++/49066 ([C++0x] Non-defining declaration of deleted function suppresses usage validation)

PR c++/49066
* decl.c (duplicate_decls): Preserve DECL_DELETED_FN.

From-SVN: r173993

13 years agopropagation_consistent.cc: Fix vs POD-ness of value_type.
Paolo Carlini [Sat, 21 May 2011 00:30:57 +0000 (00:30 +0000)]
propagation_consistent.cc: Fix vs POD-ness of value_type.

2011-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

* testsuite/21_strings/basic_string/requirements/exception/
propagation_consistent.cc: Fix vs POD-ness of value_type.
* testsuite/21_strings/basic_string/requirements/exception/
basic.cc: Likewise.
* testsuite/ext/vstring/requirements/exception/
propagation_consistent.cc: Likewise.
* testsuite/ext/vstring/requirements/exception/basic.cc: Likewise.

From-SVN: r173992

13 years agoDaily bump.
GCC Administrator [Sat, 21 May 2011 00:18:21 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r173991

13 years agochar_traits.h: Use noexcept throughout.
Paolo Carlini [Sat, 21 May 2011 00:05:03 +0000 (00:05 +0000)]
char_traits.h: Use noexcept throughout.

2011-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

* include/bits/char_traits.h: Use noexcept throughout.
* include/std/typeindex: Likewise.

* include/std/tuple (_Tuple_impl<>_Tuple_impl(_Tuple_impl&&)): Use
noexcept; adjust callers.
* include/bits/stl_pair.h (pair<>::pair(pair<>&&)): Use noexcept.
* testsuite/20_util/tuple/cons/noexcept_move_construct.cc: New.
* testsuite/20_util/pair/cons/noexcept_move_construct.cc: Likewise.
* testsuite/20_util/pair/noexcept_swap.cc: Likewise.
* testsuite/20_util/pair/noexcept_move_assign.cc: Likewise.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
line numbers.

From-SVN: r173986

13 years ago* tree.c (stabilize_expr): Fix typo.
Jason Merrill [Fri, 20 May 2011 20:40:06 +0000 (16:40 -0400)]
* tree.c (stabilize_expr): Fix typo.

From-SVN: r173982

13 years agoDR 1073 PR c++/49082
Jason Merrill [Fri, 20 May 2011 20:39:59 +0000 (16:39 -0400)]
DR 1073 PR c++/49082

DR 1073
PR c++/49082
* typeck.c (comp_except_specs): noexcept(false) is not compatible
with throw(type-list).
* typeck2.c (merge_exception_specifiers): noexcept(false)
beats any more limited specification.

From-SVN: r173981

13 years agoremove TYPE_ARG_TYPES from godump.c
Nathan Froyd [Fri, 20 May 2011 20:01:46 +0000 (20:01 +0000)]
remove TYPE_ARG_TYPES from godump.c

remove TYPE_ARG_TYPES from godump.c
* godump.c (go_format_type): Don't use TYPE_ARG_TYPES.

From-SVN: r173980

13 years agoremove some TYPE_ARG_TYPES usage in objc/
Nathan Froyd [Fri, 20 May 2011 19:57:52 +0000 (19:57 +0000)]
remove some TYPE_ARG_TYPES usage in objc/

remove some TYPE_ARG_TYPES usage in objc/
* objc-act.c (objc_compare_types): Use function_args_iterator
instead of TYPE_ARG_TYPES to compare function argument types.

From-SVN: r173977

13 years agore PR middle-end/45098 (Missed induction variable optimization)
Tom de Vries [Fri, 20 May 2011 19:32:30 +0000 (19:32 +0000)]
re PR middle-end/45098 (Missed induction variable optimization)

2011-05-20  Tom de Vries  <tom@codesourcery.com>

PR target/45098
* tree-ssa-loop-ivopts.c: Include expmed.h.
(get_shiftadd_cost): New function.
(force_expr_to_var_cost): Declare forward.  Use get_shiftadd_cost.

From-SVN: r173976

13 years agore PR bootstrap/49086 (libgomp/task.c:79:1: internal compiler error: Segmentation...
Jakub Jelinek [Fri, 20 May 2011 18:22:49 +0000 (20:22 +0200)]
re PR bootstrap/49086 (libgomp/task.c:79:1: internal compiler error: Segmentation fault)

PR bootstrap/49086
* gimple-fold.c (and_comparisons_1, or_comparisons_1): Return NULL
for PHI args that are SSA_NAME_IS_DEFAULT_DEF.

From-SVN: r173967

13 years agore PR fortran/48706 (Type extension inside subroutine)
Janus Weil [Fri, 20 May 2011 18:05:26 +0000 (20:05 +0200)]
re PR fortran/48706 (Type extension inside subroutine)

2011-05-20  Janus Weil  <janus@gcc.gnu.org>

PR fortran/48706
* module.c (write_dt_extensions): Do not write extended types which
are local to a subroutine.

2011-05-20  Janus Weil  <janus@gcc.gnu.org>

PR fortran/48706
* gfortran.dg/extends_12.f03: New.

From-SVN: r173966

13 years agore PR c++/24163 (dependent Base class scope examined during unqualified name lookup...
Jason Merrill [Fri, 20 May 2011 18:01:22 +0000 (14:01 -0400)]
re PR c++/24163 (dependent Base class scope examined during unqualified name lookup in template)

PR c++/24163
PR c++/29131
gcc/cp/
* pt.c (tsubst_copy_and_build) [CALL_EXPR]: Avoid repeating
unqualified lookup.
* semantics.c (perform_koenig_lookup): Add complain parm.
* cp-tree.h: Adjust.
* parser.c (cp_parser_postfix_expression): Adjust.
(cp_parser_perform_range_for_lookup): Adjust.
libstdc++-v3/
* include/ext/pb_ds/assoc_container.hpp: Explicitly qualify calls to
functions from dependent bases.
* include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/rb_tree_map_/
split_join_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/splay_tree_/
split_join_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/tree_policy/
order_statistics_imp.hpp: Likewise.
* include/ext/pb_ds/detail/trie_policy/
prefix_search_node_update_imp.hpp: Likewise.
* include/ext/rc_string_base.h: Likewise.
* include/ext/rope: Likewise.
* include/ext/ropeimpl.h: Likewise.
* testsuite/util/exception/safety.h: Likewise.
* testsuite/util/native_type/native_priority_queue.hpp: Likewise.
* testsuite/util/testsuite_io.h: Likewise.
* include/std/functional: Declare mem_fn earlier.
* include/tr1/functional: Likewise.
* include/tr1/exp_integral.tcc: Declare __expint_E1 earlier.

From-SVN: r173965

13 years ago* semantics.c (finish_call_expr): SET_EXPR_LOCATION.
Jason Merrill [Fri, 20 May 2011 18:01:08 +0000 (14:01 -0400)]
* semantics.c (finish_call_expr): SET_EXPR_LOCATION.

From-SVN: r173964

13 years ago* Makefile.in: Update comment referring to $(OBJS-common).
Joseph Myers [Fri, 20 May 2011 16:38:24 +0000 (17:38 +0100)]
* Makefile.in: Update comment referring to $(OBJS-common).

From-SVN: r173963

13 years agogodump.c (go_output_typedef): Put enum constants in the macro hash table to avoid...
Ian Lance Taylor [Fri, 20 May 2011 16:21:48 +0000 (16:21 +0000)]
godump.c (go_output_typedef): Put enum constants in the macro hash table to avoid duplicate Go const definitions.

* godump.c (go_output_typedef): Put enum constants in the macro
hash table to avoid duplicate Go const definitions.

From-SVN: r173962

13 years agoMakefile.in (LIBDEPS): Add libcommon.a.
Joseph Myers [Fri, 20 May 2011 15:19:05 +0000 (16:19 +0100)]
Makefile.in (LIBDEPS): Add libcommon.a.

* Makefile.in (LIBDEPS): Add libcommon.a.
(LIBS): Likewise.
(GCC_OBJS): Remove diagnostic.o, pretty-print.o and input.o.
(OBJS-common): Remove diagnostic.o, input.o, intl.o,
pretty-print.o and version.o.
(OBJS-libcommon): New.
(ALL_HOST_BACKEND_OBJS): Add $(OBJS-libcommon).
(BACKEND): Add libcommon.a.
(MOSTLYCLEANFILES): Likewise.
(libcommon.a): New.
(xgcc$(exeext)): Don't explicitly use version.o and intl.o.
(cpp$(exeext)): Likewise.
(COLLECT2_OBJS): Remove intl.o, version.o, diagnostic.o,
pretty-print.o and input.o.
(lto-wrapper$(exeext)): Don't explicitly use intl.o.
(lto-wrapper.o): Depend on $(DIAGNOSTIC_H).
(errors.o): Remove.
(mips-tfile): Don't explicitly use version.o.
(mips-tdump): Likewise.
(gcov.o): Depend on $(DIAGNOSTIC_H).
(gcov-dump.o): Depend on intl.h and $(DIAGNOSTIC_H).
(GCOV_OBJS): Remove intl.o, version.o and errors.o.
(GCOV_DUMP_OBJS): Remove version.o and errors.o.
* gcov-dump.c: Include intl.h and diagnostic.h.
(main): Initialize diagnostics.
* gcov.c: Include diagnostic.h.
(fnotice): Remove.
(main): Initialize diagnostics.
* lto-wrapper.c: Include diagnostic.h.
(main): Initialize diagnostics.

ada:
* gcc-interface/Make-lang.in (EXTRA_GNATBIND_OBJS): Remove
version.o.
* gcc-interface/Makefile.in (EXTRA_GNATTOOLS_OBJS): Use
libcommon.a instead of version.o.

cp:
* Make-lang.in (GXX_OBJS): Remove intl.o and version.o.

fortran:
* Make-lang.in (GFORTRAN_D_OBJS): Remove version.o and intl.o.

go:
* Make-lang.in (GCCGO_OBJS): Remove intl.o and version.o.

java:
* Make-lang.in ($(XGCJ)$(exeext)): Don't explicitly use intl.o and
version.o.
(JCFDUMP_OBJS): Remove errors.o, version.o and intl.o.
(JVGENMAIN_OBJS): Remove errors.o and intl.o.
(java/jcf-dump.o, java/jvgenmain.o): Depend in $(DIAGNOSTIC_H).
* jcf-dump.c: Include diagnostic.h.
(main): Initialize diagnostics.
* jvgenmain.c: Include diagnostic.h.
(main): Initialize diagnostics.

From-SVN: r173958

13 years ago* Makefile.in (OBJS-common, OBJS-md, OBJS-archive): Merge into OBJS.
Michael Matz [Fri, 20 May 2011 15:10:14 +0000 (15:10 +0000)]
* Makefile.in (OBJS-common, OBJS-md, OBJS-archive): Merge into OBJS.

From-SVN: r173957

13 years agolto-streamer.c (lto_record_common_node): Don't track seen nodes...
Michael Matz [Fri, 20 May 2011 15:09:35 +0000 (15:09 +0000)]
lto-streamer.c (lto_record_common_node): Don't track seen nodes...

* lto-streamer.c (lto_record_common_node): Don't track seen nodes,
use lto_streamer_cache_append directly instead of returning a VEC.
(preload_common_node): Remove.
(lto_get_common_nodes): Rename to lto_preload_common_nodes, don't
track seen nodes.
(lto_streamer_cache_create): Call lto_preload_common_nodes.

Co-Authored-By: Richard Guenther <rguenther@suse.de>
From-SVN: r173956

13 years agore PR tree-optimization/49079 (Bogus constant folding)
Richard Guenther [Fri, 20 May 2011 15:02:49 +0000 (15:02 +0000)]
re PR tree-optimization/49079 (Bogus constant folding)

2011-05-20  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/49079
* tree-dfa.c (get_ref_base_and_extent): Handle view-converting
MEM_REFs correctly for the trailing array access detection.
Special case constants the same way as decls for overall size
constraining.

* gcc.dg/torture/pr49079.c: New testcase.

From-SVN: r173954

13 years agomingw32.h (OUTPUT_QUOTED_STRING): Fix macro argument expansion.
Uros Bizjak [Fri, 20 May 2011 14:49:56 +0000 (16:49 +0200)]
mingw32.h (OUTPUT_QUOTED_STRING): Fix macro argument expansion.

* config/i386/mingw32.h (OUTPUT_QUOTED_STRING): Fix macro
argument expansion.

From-SVN: r173953

13 years agoPR 48977 Denormal exception on glibc targets
Janne Blomqvist [Fri, 20 May 2011 14:45:51 +0000 (17:45 +0300)]
PR 48977 Denormal exception on glibc targets

Co-Authored-By: Uros Bizjak <ubizjak@gmail.com>
From-SVN: r173952

13 years agore PR tree-optimization/49073 (g++ optimizer breaks do-while code)
Jakub Jelinek [Fri, 20 May 2011 14:19:05 +0000 (16:19 +0200)]
re PR tree-optimization/49073 (g++ optimizer breaks do-while code)

PR tree-optimization/49073
* gimple-fold.c (and_comparisons_1, or_comparisons_1): Return
NULL if PHI argument is SSA_NAME, whose def_stmt is dominated
by the PHI.
* tree-ssa-ifcombine.c (tree_ssa_ifcombine): Calculate dominators.

* gcc.c-torture/execute/pr49073.c: New test.

From-SVN: r173948

13 years agoClarify FP exception documentation and messages
Janne Blomqvist [Fri, 20 May 2011 12:55:45 +0000 (15:55 +0300)]
Clarify FP exception documentation and messages

From-SVN: r173944

13 years agore PR middle-end/48849 (SPEC CPU 2000/2006 failed to build with LTO)
Richard Guenther [Fri, 20 May 2011 09:35:44 +0000 (09:35 +0000)]
re PR middle-end/48849 (SPEC CPU 2000/2006 failed to build with LTO)

2011-05-20  Richard Guenther  <rguenther@suse.de>

PR middle-end/48849
* gimple.c (gimple_register_canonical_type): Compute TYPE_CANONICAL
of pointer types the same way the middle-end does.

From-SVN: r173939

13 years agogimple.c (gimple_register_type_1): Do not fiddle with main-variant or pointer-to...
Richard Guenther [Fri, 20 May 2011 09:35:03 +0000 (09:35 +0000)]
gimple.c (gimple_register_type_1): Do not fiddle with main-variant or pointer-to chains.

2011-05-20  Richard Guenther  <rguenther@suse.de>

* gimple.c (gimple_register_type_1): Do not fiddle with
main-variant or pointer-to chains.  Delay all fixup to
uniquify_nodes.

lto/
* lto.c (lto_ft_common): Remove pointer-to chain teardown.
(lto_ft_type): Move main-variant and pointer-to chain building ...
(uniquify_nodes): ... here.  Compute TYPE_CANONICAL also here,
in a separate final loop.

From-SVN: r173938

13 years agoDaily bump.
GCC Administrator [Fri, 20 May 2011 00:19:26 +0000 (00:19 +0000)]
Daily bump.

From-SVN: r173935

13 years agoUpdate to current version of Go library.
Ian Lance Taylor [Fri, 20 May 2011 00:18:15 +0000 (00:18 +0000)]
Update to current version of Go library.

From-SVN: r173931

13 years agosse.md (fma4_fmsubadd): Use <ssemodesuffix>.
Quentin Neill [Thu, 19 May 2011 23:04:22 +0000 (23:04 +0000)]
sse.md (fma4_fmsubadd): Use <ssemodesuffix>.

2011-05-19  Quentin Neill  <quentin.neill@amd.com>

* config/i386/sse.md (fma4_fmsubadd): Use <ssemodesuffix>.
(fma4_fmaddsub): Likewise

From-SVN: r173929

13 years agogimple.c (gtc_visited, [...]): Remove.
Jan Hubicka [Thu, 19 May 2011 21:49:10 +0000 (23:49 +0200)]
gimple.c (gtc_visited, [...]): Remove.

* gimple.c (gtc_visited, gtc_ob, type_pair_hash, type_pair_eq): Remove.
(GIMPLE_TYPE_PAIR_SIZE): New macro.
(type_pair_cache): New static var.
(lookup_type_pair): Use fixed sized custom hash; make inline.
(gtc_visit, gimple_types_compatible_p, gimple_register_type_1): Update
calls of lookup_type_pair.
(print_gimple_types_stats): Remove cache stats.
(free_gimple_type_tables): Free type_pair_cache instead of gtc_visited
and gtc_ob.

From-SVN: r173925

13 years agoi386.c (option_override_internal): Enable TARGET_CMOVE when TARGET_RDRND is active.
Uros Bizjak [Thu, 19 May 2011 21:09:25 +0000 (23:09 +0200)]
i386.c (option_override_internal): Enable TARGET_CMOVE when TARGET_RDRND is active.

* config/i386/i386.c (option_override_internal): Enable TARGET_CMOVE
when TARGET_RDRND is active.
(ix86_expand_builtin) <case IX86_BUILTIN_RDRAND{16,32,64}_STEP>:
Generate dummy SImode target register when target is NULL.

From-SVN: r173921

13 years agore PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
Tobias Burnus [Thu, 19 May 2011 20:53:33 +0000 (22:53 +0200)]
re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])

2011-06-19  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * trans-types.c (gfc_get_element_type): Handle scalar coarrays.
        (gfc_get_nodesc_array_type): Make a variant-type copy for scalar
        coarrays.
        * trans.c (gfc_build_array_ref): Return original type not
        * variant
        copy for scalar coarrays.
        * trans-array.c (gfc_conv_array_ref): Ditto.

2011-06-19  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * gfortran.dg/coarray_21.f90: New.

From-SVN: r173920

13 years agotuple (tuple_element<__i, [...]): Add.
Paolo Carlini [Thu, 19 May 2011 20:48:39 +0000 (20:48 +0000)]
tuple (tuple_element<__i, [...]): Add.

2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>

* include/std/tuple (tuple_element<__i, const _Tp>,
tuple_element<__i, volatile _Tp>, tuple_element<__i,
const volatile _Tp>, tuple_size<const _Tp>, tuple_size<volatile _Tp>,
tuple_size<const volatile _Tp>): Add.
* include/std/utility (tuple_size<std::pair<_Tp1, _Tp2>>): Tweak.
* include/std/array (tuple_size<array<_Tp, _Nm>>): Likewise.
* testsuite/20_util/tuple/cv_tuple_size.cc: New.
* testsuite/20_util/tuple/cv_tuple_element.cc: Likewise.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-warning
line number.

From-SVN: r173919

13 years agotuple (tuple<>::operator=(tuple&&)): Specify as noexcept.
Paolo Carlini [Thu, 19 May 2011 17:20:22 +0000 (17:20 +0000)]
tuple (tuple<>::operator=(tuple&&)): Specify as noexcept.

2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>

* include/std/tuple (tuple<>::operator=(tuple&&)): Specify as
        noexcept.
(__get_helper): Likewise.
(_Head_base<>::_M_head, _Tuple_impl<>::_M_head, _M_tail): Likewise.
* include/bits/move.h (swap): Likewise.
* include/bits/algorithmfwd.h (swap): Adjust.
* include/bits/stl_pair.h (pair<>::operator=(pair&&)): Spec noexcept.
* testsuite/util/testsuite_allocator.h (uneq_allocator): In C++0x
mode, prefer delete to access control to make the type not copy
assignable.
* testsuite/util/testsuite_tr1.h: Add test classes.
* testsuite/20_util/tuple/noexcept_swap.cc: New.
* testsuite/20_util/tuple/noexcept_move_assign.cc: Likewise.
* testsuite/25_algorithms/reverse/moveable.cc: Likewise, prefer
delete to access control.
* testsuite/25_algorithms/swap_ranges/moveable.cc: Likewise.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
line numbers.

From-SVN: r173917

13 years agogcc_update (gcc/config/arm/arm-tables.opt): Also depend on gcc/config/arm/arm-fpus...
Joseph Myers [Thu, 19 May 2011 16:27:59 +0000 (17:27 +0100)]
gcc_update (gcc/config/arm/arm-tables.opt): Also depend on gcc/config/arm/arm-fpus.def.

contrib:
* gcc_update (gcc/config/arm/arm-tables.opt): Also depend on
gcc/config/arm/arm-fpus.def.

gcc:
* config/arm/arm-fpus.def: New.
* config/arm/genopt.sh: Generate Enum and EnumValue entries from
arm-fpus.def.
* config/arm/arm-tables.opt: Regenerate.
* config/arm/arm.c (all_fpus): Move contents to arm-fpus.def.
(arm_option_override): Don't decode FPU name to string here.
* config/arm/arm.opt (mfpu=): Use Enum.
* config/arm/t-arm ($(srcdir)/config/arm/arm-tables.opt, arm.o):
Update dependencies.

From-SVN: r173916