Jakub Jelinek [Mon, 10 Mar 2014 14:55:20 +0000 (15:55 +0100)]
re PR ipa/60457 (ICE in cgraph_get_node)
PR ipa/60457
* ipa.c (symtab_remove_unreachable_nodes): Don't call
cgraph_get_create_node on VAR_DECLs.
* g++.dg/ipa/pr60457.C: New test.
From-SVN: r208454
Richard Biener [Mon, 10 Mar 2014 13:27:16 +0000 (13:27 +0000)]
re PR c++/60474 (Crash in tree_class_check)
2014-03-10 Richard Biener <rguenther@suse.de>
PR middle-end/60474
* tree.c (signed_or_unsigned_type_for): Handle OFFSET_TYPEs.
* g++.dg/torture/pr60474.C: New testcase.
From-SVN: r208451
GCC Administrator [Mon, 10 Mar 2014 00:16:26 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r208447
Andreas Schwab [Sun, 9 Mar 2014 07:52:48 +0000 (07:52 +0000)]
* g++.dg/cpp0x/alias-decl-debug-0.C: Move dg-skip after dg-do.
From-SVN: r208441
Tobias Burnus [Sun, 9 Mar 2014 07:48:48 +0000 (08:48 +0100)]
Makefile.am: Install cilk.h.
2014-03-09 Tobias Burnus <burnus@net-b.de>
* Makefile.am: Install cilk.h.
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
From-SVN: r208440
Jerry DeLisle [Sun, 9 Mar 2014 05:34:34 +0000 (05:34 +0000)]
re PR libfortran/38199 (missed optimization: I/O performance)
2014-03-08 Jerry DeLisle <jvdelisle@gcc.gnu>
PR libfortran/38199
* io/list_read.c (next_char): Mark unlikely error checks.
(eat_spaces): For character array reading, skip ahead over
spaces rather than call next_char multiple times.
From-SVN: r208439
Jerry DeLisle [Sun, 9 Mar 2014 03:17:16 +0000 (03:17 +0000)]
re PR libfortran/38199 (missed optimization: I/O performance)
2014-03-08 Jerry DeLisle <jvdelisle@gcc.gnu>
PR libfortran/38199
* io/list_read.c (next_char): Delete unuseful error checks.
(eat_spaces): For character array reading, skip ahead over
spaces rather than call next_char multiple times.
From-SVN: r208438
GCC Administrator [Sun, 9 Mar 2014 00:17:01 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r208437
Tobias Burnus [Sat, 8 Mar 2014 22:13:26 +0000 (23:13 +0100)]
libgfortran.h (unlikely, likely): Add usage comment.
2014-03-08 Tobias Burnus <burnus@net-b.de>
* libgfortran.h (unlikely, likely): Add usage comment.
From-SVN: r208434
Douglas B Rupp [Sat, 8 Mar 2014 20:57:29 +0000 (20:57 +0000)]
Fixes reported build failure.
Tested by cross compiler target ia64-hp-openvms
* config/vms/vms.opt (vms_float_format): New variable.
From-SVN: r208433
Tobias Burnus [Sat, 8 Mar 2014 20:42:34 +0000 (21:42 +0100)]
invoke.texi (-fcilkplus): Update implementation status.
2014-03-08 Tobias Burnus <burnus@net-b.de>
* doc/invoke.texi (-fcilkplus): Update implementation
status.
From-SVN: r208432
Tobias Burnus [Sat, 8 Mar 2014 18:53:18 +0000 (19:53 +0100)]
re PR fortran/60447 (Empty .s file created when using -E flag)
2014-03-08 Tobias Burnus <burnus@net-b.de>
PR fortran/60447
* f95-lang.c (gfc_init): Return false when only
preprocessing.
* options.c (gfc_post_options): Ditto.
From-SVN: r208431
Tobias Burnus [Sat, 8 Mar 2014 11:06:48 +0000 (12:06 +0100)]
gfortran.texi (Fortran 2003 Status): Mention finalization, deferred-length character support and input rounding.
2014-03-08 Tobias Burnus <burnus@net-b.de>
* gfortran.texi (Fortran 2003 Status): Mention finalization,
deferred-length character support and input rounding.
(Fortran 2008 Status): Mention that at termination
signalling exceptions are shown.
From-SVN: r208429
Paulo Matos [Sat, 8 Mar 2014 10:54:05 +0000 (11:54 +0100)]
lto-wrapper.c (merge_and_complain): Ensure -fshort-double is used consistently accross all TUs.
2014-03-08 Paulo Matos <paulo@matos-sorge.com>
Richard Biener <rguenther@suse.de>
* lto-wrapper.c (merge_and_complain): Ensure -fshort-double is used
consistently accross all TUs.
(run_gcc): Enable -fshort-double automatically at link at link-time
and disallow override.
2014-03-08 Paulo Matos <paulo@matos-sorge.com>
* c.opt: Enable LTO FE for fshort-double.
2014-03-08 Paulo Matos <paulo@matos-sorge.com>
* gcc.dg/lto/pr55113_0.c: New testcase.
2014-03-08 Paulo Matos <paulo@matos-sorge.com>
* lto-lang.c (lto_init): Pass flag_short_double to
build_common_tree_nodes.
Co-Authored-By: Richard Biener <rguenther@suse.de>
From-SVN: r208428
Adam Butcher [Sat, 8 Mar 2014 09:33:12 +0000 (09:33 +0000)]
re PR c++/60033 ([c++1y] ICE in retrieve_specialization while compiling recursive generic lambda)
Fix PR c++/60033
PR c++/60033
* pt.c (tsubst_copy): When retrieving a capture pack from a generic
lambda, remove the lambda's own template argument list prior to fetching
the specialization.
PR c++/60033
* g++.dg/cpp1y/pr60033.C: New testcase.
From-SVN: r208427
Adam Butcher [Sat, 8 Mar 2014 09:33:03 +0000 (09:33 +0000)]
re PR c++/60393 ([c++1y] ICE with with invalid functions with auto parameters)
Fix PR c++/60393
PR c++/60393
* parser.c (cp_parser_parameter_declaration_clause): Move generic
function template unwinding on error into a more general location, ...
(cp_parser_skip_to_end_of_statement): ... here.
PR c++/60393
* g++.dg/cpp1y/pr60393.C: New testcase.
From-SVN: r208426
Richard Sandiford [Sat, 8 Mar 2014 09:27:23 +0000 (09:27 +0000)]
re PR target/58271 (ICE in gcc for a MIPS target during compilation with -mpaired-single -ftree-vectorize)
gcc/
PR target/58271
* config/mips/mips.c (mips_option_override): Promote -mpaired-single
warning to an error. Disable TARGET_PAIRED_SINGLE and TARGET_MIPS3D
if they can't be used.
From-SVN: r208425
Dominique d'Humieres [Sat, 8 Mar 2014 06:04:34 +0000 (07:04 +0100)]
re PR fortran/60128 (Wrong ouput using en edit descriptor)
2014-03-08 Dominique d'Humieres <dominiq@lps.ens.fr>
PR libgfortran/60128
* io/write_float.def (output_float): Remove unused variable
nzero_real. Replace a double space with a single one.
(determine_en_precision): Fix wrong handling of the EN format.
PR libfortran/60128
* gfortran.dg/fmt_en.f90: New test.
From-SVN: r208423
GCC Administrator [Sat, 8 Mar 2014 00:16:29 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r208422
Doug Rupp [Fri, 7 Mar 2014 20:35:33 +0000 (20:35 +0000)]
re PR ada/60411 (Ada bootstrap failure on ARM)
2014-03-07 Doug Rupp <rupp@adacore.com>
PR ada/60411
* system-linux-armel.ads (Backend_Overflow_Checks): Set to True.
(Support_64_Bit_Divides): Removed, no longer used.
(ZCX_By_Default): Enabled.
From-SVN: r208419
Jason Merrill [Fri, 7 Mar 2014 20:01:27 +0000 (15:01 -0500)]
* Make-lang.in (check_g++_parallelize): Split dg.exp.
From-SVN: r208417
Jason Merrill [Fri, 7 Mar 2014 20:01:12 +0000 (15:01 -0500)]
g++-dg.exp (g++-dg-runtest): Run tests in C++1y mode, too.
* lib/g++-dg.exp (g++-dg-runtest): Run tests in C++1y mode, too.
* lib/target-supports.exp (check_effective_target_c++11): Now
means C++11 and up.
(check_effective_target_c++11_only): New.
(check_effective_target_c++11_down): New.
(check_effective_target_c++1y): New.
(check_effective_target_c++1y_only): New.
(check_effective_target_c++98_only): Rename from
check_effective_target_c++98.
* g++.dg/*: Use { target c++11 } instead of -std=c++11.
From-SVN: r208416
Jason Merrill [Fri, 7 Mar 2014 20:00:36 +0000 (15:00 -0500)]
parser.c (cp_parser_type_id_1): Only allow 'auto' in C++1y if we're in a trailing return type.
* parser.c (cp_parser_type_id_1): Only allow 'auto' in C++1y if
we're in a trailing return type.
From-SVN: r208415
Jason Merrill [Fri, 7 Mar 2014 20:00:31 +0000 (15:00 -0500)]
typeck.c (comp_template_parms_position): 'auto' and 'decltype(auto)' are different from real template parms.
* typeck.c (comp_template_parms_position): 'auto' and
'decltype(auto)' are different from real template parms.
From-SVN: r208414
Jason Merrill [Fri, 7 Mar 2014 20:00:25 +0000 (15:00 -0500)]
parser.c (cp_parser_using_declaration): Consume the semicolon after bare parameter pack error.
* parser.c (cp_parser_using_declaration): Consume the semicolon
after bare parameter pack error.
From-SVN: r208413
Jason Merrill [Fri, 7 Mar 2014 20:00:20 +0000 (15:00 -0500)]
cp-tree.h (REF_PARENTHESIZED_P): New.
* cp-tree.h (REF_PARENTHESIZED_P): New.
* semantics.c (force_paren_expr): Set it.
* pt.c (do_auto_deduction): Check it.
(tsubst) [COMPONENT_REF]: Copy it.
* typeck.c (maybe_warn_about_useless_cast): Don't strip dereference.
From-SVN: r208412
Jason Merrill [Fri, 7 Mar 2014 20:00:14 +0000 (15:00 -0500)]
decl.c (create_array_type_for_decl): Only warn about invalid C++1y VLA if flag_iso or warn_vla>0.
* decl.c (create_array_type_for_decl): Only warn about invalid
C++1y VLA if flag_iso or warn_vla>0.
(grokdeclarator): Likewise.
* pt.c (tsubst): Likewise.
* semantics.c (finish_decltype_type): Likewise.
* typeck.c (cxx_sizeof_or_alignof_type): Likewise.
(cp_build_addr_expr_1): Likewise.
* init.c (build_new_1): Improve diagnostics.
From-SVN: r208411
Paolo Carlini [Fri, 7 Mar 2014 18:33:38 +0000 (18:33 +0000)]
re PR c++/58609 ([c++11] ICE with uninitialized variable in constexpr)
/cp
2014-03-07 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58609
* decl.c (check_initializer): Return NULL_TREE after error;
consistently use inform.
/testsuite
2014-03-07 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58609
* g++.dg/cpp0x/constexpr-ice12.C: New.
From-SVN: r208410
Denis Chertykov [Fri, 7 Mar 2014 16:55:43 +0000 (20:55 +0400)]
MAINTAINERS: Remove avr maintainers: Anatoly Sokolov and Eric Weddington
* MAINTAINERS: Remove avr maintainers: Anatoly Sokolov and Eric Weddington
From-SVN: r208406
Jason Merrill [Fri, 7 Mar 2014 16:23:57 +0000 (11:23 -0500)]
* c.opt: Add -std=c++14.
From-SVN: r208404
Ian Lance Taylor [Fri, 7 Mar 2014 15:52:48 +0000 (15:52 +0000)]
* sort.c (backtrace_qsort): Use middle element as pivot.
From-SVN: r208403
Paolo Carlini [Fri, 7 Mar 2014 14:19:53 +0000 (14:19 +0000)]
decl.c (check_initializer): Remove dead code.
2014-03-07 Paolo Carlini <paolo.carlini@oracle.com>
* decl.c (check_initializer): Remove dead code.
From-SVN: r208402
Rainer Orth [Fri, 7 Mar 2014 13:55:54 +0000 (13:55 +0000)]
Handle backtrace_qsort
* libbacktrace/Makefile.am (libsanitizer_libbacktrace_la_SOURCES):
Add ../../libbacktrace/sort.c.
* libbacktrace/Makefile.in: Regenerate.
* libbacktrace/backtrace-rename.h (backtrace_qsort): Define.
From-SVN: r208401
Jakub Jelinek [Fri, 7 Mar 2014 12:58:27 +0000 (13:58 +0100)]
re PR bootstrap/58572 (make bootstrap-lean leads to installation failure (doing extra rebuilds and invoking system compiler))
PR bootstrap/58572
* Makefile.tpl (POSTSTAGE1_CXX_EXPORT): Use -isystem instead of
-I for libstdc++-v3 includes if $(LEAN).
* Makefile.in: Regenerated.
From-SVN: r208400
Rainer Orth [Fri, 7 Mar 2014 11:33:39 +0000 (11:33 +0000)]
Improve @tlsldmplt test on Solaris 11/x86
* configure.ac (HAVE_AS_IX86_TLSLDMPLT): Improve test for Solaris
11/x86 ld.
* configure: Regenerate.
From-SVN: r208399
Rainer Orth [Fri, 7 Mar 2014 11:30:40 +0000 (11:30 +0000)]
Disable local dynamic TLS model on Solaris/x86 if as/ld cannot handle it
* configure.ac (TLS_SECTION_ASM_FLAG): Save as tls_section_flag.
(LIB_TLS_SPEC): Save as ld_tls_libs.
(HAVE_AS_IX86_TLSLDMPLT): Define as 1/0.
(HAVE_AS_IX86_TLSLDM): New test.
* configure, config.in: Regenerate.
* config/i386/i386.c (legitimize_tls_address): Fall back to
TLS_MODEL_GLOBAL_DYNAMIC on 32-bit Solaris/x86 if tool chain
cannot support TLS_MODEL_LOCAL_DYNAMIC.
* config/i386/i386.md (*tls_local_dynamic_base_32_gnu): Use if
instead of #ifdef in HAVE_AS_IX86_TLSLDMPLT test.
From-SVN: r208398
Paulo Matos [Fri, 7 Mar 2014 09:34:18 +0000 (10:34 +0100)]
common.opt (fira-loop-pressure): Mark as optimization.
2014-03-07 Paulo Matos <paulo@matos-sorge.com>
* common.opt (fira-loop-pressure): Mark as optimization.
From-SVN: r208395
Thomas Schwinge [Fri, 7 Mar 2014 08:46:13 +0000 (09:46 +0100)]
The error_mark_node is not an OpenMP mappable type.
gcc/
* langhooks.c (lhd_omp_mappable_type): The error_mark_node is not
an OpenMP mappable type.
gcc/c/
* c-decl.c (c_decl_attributes): Use
lang_hooks.types.omp_mappable_type.
* c-typeck.c (c_finish_omp_clauses): Likewise.
gcc/testsuite/
* c-c++-common/gomp/map-1.c: Extend.
From-SVN: r208394
Ian Lance Taylor [Fri, 7 Mar 2014 05:07:56 +0000 (05:07 +0000)]
sort.c: New file.
* sort.c: New file.
* stest.c: New file.
* internal.h (backtrace_qsort): Declare.
* dwarf.c (read_abbrevs): Call backtrace_qsort instead of qsort.
(read_line_info, read_function_entry): Likewise.
(read_function_info, build_dwarf_data): Likewise.
* elf.c (elf_initialize_syminfo): Likewise.
* Makefile.am (libbacktrace_la_SOURCES): Add sort.c.
(stest_SOURCES, stest_LDADD): Define.
(check_PROGRAMS): Add stest.
From-SVN: r208392
Ian Lance Taylor [Fri, 7 Mar 2014 05:04:37 +0000 (05:04 +0000)]
runtime: Fix GC bug caused by Entersyscall modifying reg.
This patch fixes a rare but serious bug. The Go garbage
collector only examines Go stacks. When Go code calls a
function that is not written in Go, it first calls
syscall.Entersyscall. Entersyscall records the position of
the Go stack pointer and saves a copy of all the registers.
If the garbage collector runs while the thread is executing
the non-Go code, the garbage collector fetches the stack
pointer and registers from the saved location.
Entersyscall saves the registers using the getcontext
function. Unfortunately I didn't consider the possibility
that Entersyscall might itself change a register before
calling getcontext. This only matters for callee-saved
registers, as caller-saved registers would be visible on the
saved stack. And it only matters if Entersyscall is compiled
to save and modify a callee-saved register before it calls
getcontext. And it only matters if a garbage collection
occurs while the non-Go code is executing. And it only
matters if the only copy of a valid Go pointer happens to be
in the callee-saved register when Entersyscall is called.
When all those conditions are true, the Go pointer might get
collected incorrectly, leading to memory corruption.
This patch tries to avoid the problem by splitting
Entersyscall into two functions. The first is a simple
function that just calls getcontext and then calls the rest of
Entersyscall. This should fix the problem, provided the
simple Entersyscall function does not itself modify any
callee-saved registers before calling getcontext. That seems
to be true on the systems I checked. But since the argument
to getcontext is an offset from a TLS variable, it won't be
true on a system which needs to save callee-saved registers in
order to get the address of a TLS variable. I don't know why
any system would work that way, but I don't know how to rule
it out. I think that on any such system this will have to be
implemented in assembler. I can't put the ucontext_t
structure on the stack, because this function can not split
stacks, and the ucontext_t structure is large enough that it
could cause a stack overflow.
From-SVN: r208390
GCC Administrator [Fri, 7 Mar 2014 00:16:53 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r208389
Paul Thomas [Thu, 6 Mar 2014 21:45:31 +0000 (21:45 +0000)]
re PR fortran/51976 ([F2003] Support deferred-length character components of derived types (allocatable string length))
2014-03-06 Paul Thomas <pault@gcc.gnu.org>
Janus Weil <janus@gcc.gnu.org>
PR fortran/51976
* gfortran.h (symbol_attribute): Add deferred_parameter attribute.
* primary.c (build_actual_constructor): It is not an error if
a missing component has the deferred_parameter attribute;
equally, if one is given a value, it is an error.
* resolve.c (resolve_fl_derived0): Remove error for deferred
character length components. Add the hidden string length
field to the structure. Give it the deferred_parameter
attribute.
* trans-array.c (duplicate_allocatable): Add a strlen field
which is used as the element size if it is non-null.
(gfc_duplicate_allocatable, gfc_copy_allocatable_data): Pass a
NULL to the new argument in duplicate_allocatable.
(structure_alloc_comps): Set the hidden string length as
appropriate. Use it in calls to duplicate_allocatable.
(gfc_alloc_allocatable_for_assignment): When a deferred length
backend declaration is variable, use that; otherwise use the
string length from the expression evaluation.
* trans-expr.c (gfc_conv_component_ref): If this is a deferred
character length component, the string length should have the
value of the hidden string length field.
(gfc_trans_subcomponent_assign): Set the hidden string length
field for deferred character length components. Allocate the
necessary memory for the string.
(alloc_scalar_allocatable_for_assignment): Same change as in
gfc_alloc_allocatable_for_assignment above.
* trans-stmt.c (gfc_trans_allocate): Likewise.
* trans-intrinsic (size_of_string_in_bytes): Make non-static.
* trans-types.c (gfc_get_derived_type): Set the tree type for
a deferred character length component.
* trans.c (gfc_deferred_strlen): New function.
* trans.h (size_of_string_in_bytes,gfc_deferred_strlen): New prototypes.
2014-03-06 Paul Thomas <pault@gcc.gnu.org>
Janus Weil <janus@gcc.gnu.org>
PR fortran/51976
* gfortran.dg/deferred_type_component_1.f90 : New test.
* gfortran.dg/deferred_type_component_2.f90 : New test.
Co-Authored-By: Janus Weil <janus@gcc.gnu.org>
From-SVN: r208386
Matthias Klose [Thu, 6 Mar 2014 14:16:49 +0000 (14:16 +0000)]
Makefile.in (s-mlib): Only pass MULTIARCH_DIRNAME if MULTILIB_OSDIRNAMES is not defined.
2014-03-06 Matthias Klose <doko@ubuntu.com>
* Makefile.in (s-mlib): Only pass MULTIARCH_DIRNAME if
MULTILIB_OSDIRNAMES is not defined.
From-SVN: r208383
Marek Polacek [Thu, 6 Mar 2014 13:41:46 +0000 (13:41 +0000)]
re PR c/60197 (ICE with _Cilk_spawn in expression)
PR c/60197
c-family/
* cilk.c (contains_cilk_spawn_stmt): New function.
(contains_cilk_spawn_stmt_walker): Likewise.
(recognize_spawn): Give error on invalid use of _Cilk_spawn.
* c-common.h (contains_cilk_spawn_stmt): Add declaration.
c/
* c-typeck.c (c_finish_return): Call contains_cilk_spawn_stmt instead
of checking tree code.
cp/
* typeck.c (check_return_expr): Call contains_cilk_spawn_stmt instead
of checking tree code.
testsuite/
* c-c++-common/cilk-plus/CK/pr60197.c: New test.
* c-c++-common/cilk-plus/CK/pr60197-2.c: New test.
From-SVN: r208382
Rainer Orth [Thu, 6 Mar 2014 12:24:11 +0000 (12:24 +0000)]
Don't install vtv_*.o unless --enable-vtable-verify (PR libgcc/59339)
PR libgcc/59339
* config.host (*-*-linux*, frv-*-*linux*, *-*-kfreebsd*-gnu)
(*-*-knetbsd*-gnu, *-*-gnu*, *-*-kopensolaris*-gnu): Only add
vtv_*.o to extra_parts if enable_vtable_verify.
From-SVN: r208381
Jakub Jelinek [Thu, 6 Mar 2014 12:07:07 +0000 (13:07 +0100)]
re PR target/58595 (internal compiler error: in gen_movsi when compiling on arm some files of lttng-tools with -fPIE)
PR target/58595
* config/arm/arm.c (arm_tls_symbol_p): Remove.
(arm_legitimize_address): Call legitimize_tls_address for any
arm_tls_referenced_p expression, handle constant addend. Call it
before testing for !TARGET_ARM.
(thumb_legitimize_address): Don't handle arm_tls_symbol_p here.
* gcc.dg/tls/pr58595.c: New test.
Co-Authored-By: Meador Inge <meadori@codesourcery.com>
From-SVN: r208380
Richard Biener [Thu, 6 Mar 2014 11:19:13 +0000 (11:19 +0000)]
re PR middle-end/60445 (473.astar miscompares with -Ofast)
2014-03-06 Richard Biener <rguenther@suse.de>
PR middle-end/60445
PR lto/60424
PR lto/60427
Revert
2014-03-04 Paulo Matos <paulo@matos-sorge.com>
* tree-streamer.c (record_common_node): Assert we don't record
nodes with type double.
(preload_common_node): Skip type double, complex double and
double pointer since it is now frontend dependent due to
fshort-double option.
* gcc.dg/lto/pr55113_0.c: New testcase.
From-SVN: r208379
Paolo Carlini [Thu, 6 Mar 2014 09:40:06 +0000 (09:40 +0000)]
parser.c (cp_lexer_set_source_position): New.
2014-03-06 Paolo Carlini <paolo.carlini@oracle.com>
* parser.c (cp_lexer_set_source_position): New.
(cp_parser_mem_initializer): Use it.
(cp_parser_postfix_open_square_expression): Likewise.
(cp_parser_parenthesized_expression_list): Likewise.
(cp_parser_new_initializer): Likewise.
(cp_parser_jump_statement): Likewise.
(cp_parser_initializer): Likewise.
(cp_parser_functional_cast): Likewise.
From-SVN: r208378
Richard Biener [Thu, 6 Mar 2014 08:48:01 +0000 (08:48 +0000)]
gcc.c (PLUGIN_COND): Always enable unless -fno-use-linker-plugin or -fno-lto is specified and the...
2014-03-06 Richard Biener <rguenther@suse.de>
* gcc.c (PLUGIN_COND): Always enable unless -fno-use-linker-plugin
or -fno-lto is specified and the linker has full plugin support.
* collect2.c (lto_mode): Default to LTO_MODE_WHOPR if LTO is
enabled.
(main): Remove -flto processing, adjust lto_mode using
use_plugin late.
* lto-wrapper.c (merge_and_complain): Merge compile-time
optimization levels.
(run_gcc): And pass it through to the link options.
From-SVN: r208375
Nick Clifton [Thu, 6 Mar 2014 08:35:40 +0000 (08:35 +0000)]
t-msp430 (LIB2ADD): Add lib2hw_mul.S
* config/msp430/t-msp430 (LIB2ADD): Add lib2hw_mul.S
* config/msp430/lib2hw_mul.S: New: Hardware multiply routines.
From-SVN: r208374
Alexandre Oliva [Thu, 6 Mar 2014 07:04:47 +0000 (07:04 +0000)]
re PR debug/60381 (ICE: in vt_expand_var_loc_chain, at var-tracking.c:8245)
PR debug/60381
Revert:
2014-02-28 Alexandre Oliva <aoliva@redhat.com>
PR debug/59992
* cselib.c (remove_useless_values): Skip to avoid quadratic
behavior if the condition moved from...
(cselib_process_insn): ... here holds.
From-SVN: r208361
Ed Smith-Rowland [Thu, 6 Mar 2014 01:31:39 +0000 (01:31 +0000)]
[libstdc++,docs] After the latest batch of papers came out I updated the status docs.
From-SVN: r208358
GCC Administrator [Thu, 6 Mar 2014 00:16:40 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r208357
Jakub Jelinek [Wed, 5 Mar 2014 20:07:50 +0000 (21:07 +0100)]
re PR testsuite/59308 (gcc.dg/tree-ssa/ssa-ifcombine-ccmp-[1456] tests fail on arm cortex-a5)
PR testsuite/59308
* gcc.dg/pr46309.c: Don't compile on logical_op_short_circuit targets
other than mips/avr. Use -mbranch-cost=2 even for i?86/x86_64.
* gcc.dg/tree-ssa/reassoc-32.c: Use -mbranch-cost=2 even for
s390*/i?86/x86_64.
* gcc.dg/tree-ssa/reassoc-33.c: Likewise.
* gcc.dg/tree-ssa/reassoc-34.c: Likewise.
* gcc.dg/tree-ssa/reassoc-35.c: Likewise.
* gcc.dg/tree-ssa/reassoc-36.c: Likewise.
* gcc.dg/tree-ssa/ssa-ifcombine-ccmp-1.c: Don't compile on
logical_op_short_circuit targets other than avr. Use -mbranch-cost=2
even for mips*/s390*/i?86/x86_64.
* gcc.dg/tree-ssa/ssa-ifcombine-ccmp-2.c: Likewise.
* gcc.dg/tree-ssa/ssa-ifcombine-ccmp-3.c: Likewise.
* gcc.dg/tree-ssa/ssa-ifcombine-ccmp-4.c: Likewise.
* gcc.dg/tree-ssa/ssa-ifcombine-ccmp-5.c: Likewise.
* gcc.dg/tree-ssa/ssa-ifcombine-ccmp-6.c: Likewise.
From-SVN: r208354
Jason Merrill [Wed, 5 Mar 2014 19:25:37 +0000 (14:25 -0500)]
re PR c++/60409 ([c++1y] ICE on valid with template function)
PR c++/60409
* semantics.c (force_paren_expr): Only add a PAREN_EXPR to a
dependent expression.
From-SVN: r208352
Jason Merrill [Wed, 5 Mar 2014 17:53:28 +0000 (12:53 -0500)]
re PR c++/60361 (unexpected 'use of parameter outside function body' error)
PR c++/60361
* parser.c (cp_parser_template_id): Don't set up a CPP_TEMPLATE_ID
if re-parsing might succeed.
* semantics.c (finish_id_expression): Use of a parameter outside
the function body is a parse error.
From-SVN: r208351
Jason Merrill [Wed, 5 Mar 2014 17:53:21 +0000 (12:53 -0500)]
parser.c (cp_parser_mem_initializer): Set input_location properly for init-list warning.
* parser.c (cp_parser_mem_initializer): Set input_location
properly for init-list warning.
(cp_parser_postfix_open_square_expression): Likewise.
(cp_parser_parenthesized_expression_list): Likewise.
(cp_parser_new_initializer): Likewise.
(cp_parser_jump_statement): Likewise.
(cp_parser_initializer): Likewise.
(cp_parser_functional_cast): Likewise.
From-SVN: r208350
Jakub Jelinek [Wed, 5 Mar 2014 15:06:23 +0000 (16:06 +0100)]
re PR plugins/59335 (Plugin doesn't build on trunk)
PR plugins/59335
* Makefile.in (PLUGIN_HEADERS): Add tree-phinodes.h, stor-layout.h,
ssa-iterators.h, $(RESOURCE_H) and tree-cfgcleanup.h.
From-SVN: r208346
Jakub Jelinek [Wed, 5 Mar 2014 09:52:18 +0000 (10:52 +0100)]
re PR plugins/59335 (Plugin doesn't build on trunk)
PR plugins/59335
* config/i386/t-i386 (OPTIONS_H_EXTRA): Add stringop.def.
(TM_H): Add x86-tune.def.
From-SVN: r208344
Kyrylo Tkachov [Wed, 5 Mar 2014 09:39:09 +0000 (09:39 +0000)]
aarch64.c (generic_tunings): Use cortexa57_extra_costs.
* config/aarch64/aarch64.c (generic_tunings):
Use cortexa57_extra_costs.
From-SVN: r208343
Jakub Jelinek [Wed, 5 Mar 2014 08:46:31 +0000 (09:46 +0100)]
re PR lto/60404 (wrong code by LTO on x86_64-linux-gnu)
PR lto/60404
* cfgexpand.c (expand_used_vars): Do not assume all SSA_NAMEs
of PARM/RESULT_DECLs must be coalesced with optimize && in_lto_p.
* tree-ssa-coalesce.c (coalesce_ssa_name): Use MUST_COALESCE_COST - 1
cost for in_lto_p.
* gcc.dg/lto/pr60404_0.c: New test.
* gcc.dg/lto/pr60404_1.c: New file.
* gcc.dg/lto/pr60404_2.c: New file.
From-SVN: r208340
GCC Administrator [Wed, 5 Mar 2014 00:17:10 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r208338
Jason Merrill [Tue, 4 Mar 2014 22:16:12 +0000 (17:16 -0500)]
re PR c++/60417 ([DR 1518] Bogus error on C++03 aggregate initialization)
PR c++/60417
* typeck2.c (process_init_constructor_record): Set
CONSTRUCTOR_IS_DIRECT_INIT on {} for omitted initializers.
From-SVN: r208333
Jason Merrill [Tue, 4 Mar 2014 22:16:03 +0000 (17:16 -0500)]
re PR c++/60415 (Bogus "invalid use of qualified-name")
PR c++/60415
PR c++/54359
* parser.c (cp_parser_direct_declarator): Set declarator to
cp_error_declarator on invalid qualified-id.
From-SVN: r208332
Heiher [Tue, 4 Mar 2014 21:39:50 +0000 (04:09 +0630)]
mips-cpus.def (loongson3a): Mark as a MIPS64r2 processor.
gcc/
2014-03-04 Heiher <r@hev.cc>
* config/mips/mips-cpus.def (loongson3a): Mark as a MIPS64r2 processor.
* config/mips/mips.h (MIPS_ISA_LEVEL_SPEC): Adjust accordingly.
From-SVN: r208330
Uros Bizjak [Tue, 4 Mar 2014 18:13:12 +0000 (19:13 +0100)]
predicates.md (const2356_operand): Change to ...
* config/i386/predicates.md (const2356_operand): Change to ...
(const2367_operand): ... this.
* config/i386/sse.md (avx512pf_scatterpf<mode>sf): Use
const2367_operand.
(*avx512pf_scatterpf<mode>sf_mask): Ditto.
(*avx512pf_scatterpf<mode>sf): Ditto.
(avx512pf_scatterpf<mode>df): Ditto.
(*avx512pf_scatterpf<mode>df_mask): Ditto.
(*avx512pf_scatterpf<mode>df): Ditto.
* config/i386/i386.c (ix86_expand_builtin): Update
incorrect hint operand error message.
From-SVN: r208324
Bill Schmidt [Tue, 4 Mar 2014 17:00:21 +0000 (17:00 +0000)]
extract-vsx.c: Replace "vector long" with "vector long long" throughout.
2014-03-04 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* gcc.dg/vmx/extract-vsx.c: Replace "vector long" with "vector
long long" throughout.
* gcc.dg/vmx/extract-vsx-be-order.c: Likewise.
* gcc.dg/vmx/insert-vsx.c: Likewise.
* gcc.dg/vmx/insert-vsx-be-order.c: Likewise.
* gcc.dg/vmx/ld-vsx.c: Likewise.
* gcc.dg/vmx/ld-vsx-be-order.c: Likewise.
* gcc.dg/vmx/ldl-vsx.c: Likewise.
* gcc.dg/vmx/ldl-vsx-be-order.c: Likewise.
* gcc.dg/vmx/merge-vsx.c: Likewise.
* gcc.dg/vmx/merge-vsx-be-order.c: Likewise.
* gcc.dg/vmx/st-vsx.c: Likewise.
* gcc.dg/vmx/st-vsx-be-order.c: Likewise.
* gcc.dg/vmx/stl-vsx.c: Likewise.
* gcc.dg/vmx/stl-vsx-be-order.c: Likewise.
From-SVN: r208321
Jonathan Wakely [Tue, 4 Mar 2014 12:56:10 +0000 (12:56 +0000)]
* MAINTAINERS: Update my email address.
From-SVN: r208316
Richard Biener [Tue, 4 Mar 2014 12:52:13 +0000 (12:52 +0000)]
lto-section-in.c (lto_get_section_data): Fix const cast.
2014-03-04 Richard Biener <rguenther@suse.de>
* lto-section-in.c (lto_get_section_data): Fix const cast.
From-SVN: r208315
Paulo Matos [Tue, 4 Mar 2014 11:45:06 +0000 (12:45 +0100)]
tree-streamer.c (record_common_node): Assert we don't record nodes with type double.
2014-03-04 Paulo Matos <paulo@matos-sorge.com>
* tree-streamer.c (record_common_node): Assert we don't record
nodes with type double.
(preload_common_node): Skip type double, complex double and
double pointer since it is now frontend dependent due to
fshort-double option.
2014-03-04 Paulo Matos <paulo@matos-sorge.com>
* gcc.dg/lto/pr55113_0.c: New testcase.
From-SVN: r208312
Richard Biener [Tue, 4 Mar 2014 11:25:50 +0000 (11:25 +0000)]
re PR lto/60405 (ICE in lto1 on x86_64-linux-gnu)
2014-03-04 Richard Biener <rguenther@suse.de>
PR lto/60405
* lto-streamer-in.c (lto_read_body): Remove LTO bytecode version
check.
(lto_input_toplevel_asms): Likewise.
* lto-section-in.c (lto_get_section_data): Instead do it here
for every section.
From-SVN: r208311
Paolo Carlini [Tue, 4 Mar 2014 10:52:18 +0000 (10:52 +0000)]
re PR c++/60376 ([c++1y] ICE on invalid with using declaration in template function)
/gcc/cp
2014-03-04 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/60376
* parser.c (cp_parser_using_declaration): Early return when
cp_parser_nested_name_specifier errors out.
/gcc/testsuite
2014-03-04 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/60376
* g++.dg/cpp1y/pr60376.C: New.
/libstdc++-v3
2014-03-04 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/60376
* testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
Adjust dg-error directives.
From-SVN: r208309
Rainer Orth [Tue, 4 Mar 2014 10:02:17 +0000 (10:02 +0000)]
Fix g++.dg/abi/anon2.C with -std=c++98
* g++.dg/abi/anon2.C: Don't scan assembler for c++98.
From-SVN: r208307
Richard Biener [Tue, 4 Mar 2014 08:47:55 +0000 (08:47 +0000)]
re PR tree-optimization/60382 (ICE on valid code at -O3 on x86_64-linux-gnu (in vect_create_epilog_for_reduction, at tree-vect-loop.c:4352))
2014-03-04 Richard Biener <rguenther@suse.de>
PR tree-optimization/60382
* tree-vect-loop.c (vect_is_simple_reduction_1): Do not consider
dead PHIs a reduction.
* gcc.dg/vect/pr60382.c: New testcase.
From-SVN: r208305
Jerry DeLisle [Tue, 4 Mar 2014 05:46:06 +0000 (05:46 +0000)]
re PR fortran/60148 (strings in NAMELIST do not honor DELIM= in open statement)
2014-03-03 Jerry DeLisle <jvdelisle@gcc.gnu>
PR libfortran/60148
* gfortran.dg/namelist_84.f90: New test.
From-SVN: r208303
Jerry DeLisle [Tue, 4 Mar 2014 04:33:40 +0000 (04:33 +0000)]
re PR fortran/60148 (strings in NAMELIST do not honor DELIM= in open statement)
2014-03-03 Jerry DeLisle <jvdelisle@gcc.gnu>
PR libfortran/60148
* io/inquire.c (inquire_via_unit): In the case of
DELIM_UNSPECIFIED set inquire return string to "NONE".
* io/list_read.c (read_character): In the case of DELIM_NONE and
namelists, complete the character read using the namelist
variable length.
* io/open.c (new_unit): Don't set delim status to none if not
specified so that DELIM_UNSPECIFIED can be used later.
* io/transfer.c (data_transfer_init): For namelist I/O, if the
unit delim status is unspecified set the current status to quote.
Otherwise, set current status to the unit status.
* io/unit.c (get_internel_unit, init_unit): Remember to set
flags_delim initially to DELIM_UNSPECIFIED so defaults come out
correctly.
* io/write.c (write_character): Add a new function argument
"mode" to signify that raw output is to be used vs output with
delimiters. If the mode is set to DELIM (1) proceed with
delimiters. (list_formatted_write_scalar): Write the separator
only if a delimiter was previously specified. Update the call to
write_character with the mode argument given.
(namelist_write_newline): Use the mode argument. (nml_write_obj):
Use the mode argument. Remove use of tmp_delim. Write the
semi-colon or comma correctly only when needed with using
delimiters. Cleanup whitespace.
(namelist_write): If delim is not specified in namelist I/O,
default to using quotes. Get rid of the tmp_delim variable and
use the new mode argument in write_character.
From-SVN: r208302
Ian Lance Taylor [Tue, 4 Mar 2014 02:56:57 +0000 (02:56 +0000)]
go-gcc.cc (Gcc_backend::immutable_struct): If IS_COMMON, set DECL_WEAK.
* go-gcc.cc (Gcc_backend::immutable_struct): If IS_COMMON, set
DECL_WEAK.
(GCC_backend::immutable_struct_set_init): If IS_COMMON, clear
DECL_WEAK.
From-SVN: r208301
GCC Administrator [Tue, 4 Mar 2014 00:16:44 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r208299
Uros Bizjak [Mon, 3 Mar 2014 23:24:12 +0000 (00:24 +0100)]
xmmintrin.h (enum _mm_hint): Correct hint value.
* config/i386/xmmintrin.h (enum _mm_hint) <_MM_HINT_ET0>: Correct
hint value.
(_mm_prefetch): Move out of GCC target("sse") pragma.
* config/i386/prfchwintrin.h (_m_prefetchw): Move out of
GCC target("prfchw") pragma.
* config/i386/i386.md (prefetch): Emit prefetchwt1 only
for locality <= 2.
* config/i386/i386.c (ix86_option_override_internal): Enable
-mprfchw with -mprefetchwt1.
From-SVN: r208296
Joern Rennecke [Mon, 3 Mar 2014 22:09:02 +0000 (22:09 +0000)]
arc.md (casesi_load): Mark as varying.
* config/arc/arc.md (casesi_load) <length attribute alternative 0>:
Mark as varying.
From-SVN: r208294
Joern Rennecke [Mon, 3 Mar 2014 22:01:57 +0000 (22:01 +0000)]
* config/arc/arc.opt (misize): Add PchIgnore property.
From-SVN: r208293
Joern Rennecke [Mon, 3 Mar 2014 21:51:58 +0000 (21:51 +0000)]
opts.h (CL_PCH_IGNORE): Define.
* opts.h (CL_PCH_IGNORE): Define.
* targhooks.c (option_affects_pch_p):
Return false for options that have CL_PCH_IGNORE set.
* opt-functions.awk: Process PchIgnore.
* doc/options.texi: Document PchIgnore.
From-SVN: r208292
Bill Schmidt [Mon, 3 Mar 2014 20:36:56 +0000 (20:36 +0000)]
configure.tgt: Unsupported for little endian PowerPC for now.
2014-03-03 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* configure.tgt: Unsupported for little endian PowerPC for now.
From-SVN: r208290
Bill Schmidt [Mon, 3 Mar 2014 20:16:52 +0000 (20:16 +0000)]
rs6000.c (rs6000_preferred_reload_class): Disallow reload of PLUS rtx's outside of GENERAL_REGS or BASE_REGS...
2014-03-03 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* config/rs6000/rs6000.c (rs6000_preferred_reload_class): Disallow
reload of PLUS rtx's outside of GENERAL_REGS or BASE_REGS; relax
constraint on constants to permit them being loaded into
GENERAL_REGS or BASE_REGS.
From-SVN: r208287
Ian Lance Taylor [Mon, 3 Mar 2014 20:14:52 +0000 (20:14 +0000)]
libgo: Update to Go 1.2.1 release.
From-SVN: r208286
Joseph Myers [Mon, 3 Mar 2014 19:04:36 +0000 (19:04 +0000)]
be.po, [...]: Update.
* be.po, ca.po, da.po, de.po, el.po, eo.po, es.po, fi.po, fr.po,
id.po, ja.po, nl.po, pr_BR.po, ru.po, sr.po, sv.po, tr.po, uk.po,
vi.po, zh_CN.po, zh_TW.po: Update.
From-SVN: r208285
Joseph Myers [Mon, 3 Mar 2014 19:03:00 +0000 (19:03 +0000)]
be.po, [...]: Update.
* be.po, da.po, de.po, el.po, es.po, fi.po, fr.po, hr.po, id.po,
ja.po, nl.po, ru.po, sr.po, sv.po, tr.po, vi.po, zh_CN.po,
zh_TW.po: Update.
From-SVN: r208284
Nick Clifton [Mon, 3 Mar 2014 17:17:49 +0000 (17:17 +0000)]
rl78-real.md (cbranchsi4_real_signed): Add anti-cacnonical alternatives.
* config/rl78/rl78-real.md (cbranchsi4_real_signed): Add
anti-cacnonical alternatives.
(negandhi3_real): New pattern.
* config/rl78/rl78-virt.md (negandhi3_virt): New pattern.
From-SVN: r208282
Senthil Kumar Selvaraj [Mon, 3 Mar 2014 16:04:47 +0000 (16:04 +0000)]
avr-mcus.def: Remove atxmega16x1.
* config/avr/avr-mcus.def: Remove atxmega16x1.
* config/avr/avr-tables.opt: Regenerate.
* config/avr/t-multilib: Regenerate.
* doc/avr-mmcu.texi: Regenerate.
From-SVN: r208281
Kirill Yukhin [Mon, 3 Mar 2014 12:45:59 +0000 (12:45 +0000)]
avx512er-vexp2ps-2.c: Decrease exponent argument to avoid inf values.
gcc/testsuite/
* gcc.target/i386/avx512er-vexp2ps-2.c: Decrease exponent
argument to avoid inf values.
* gcc.target/i386/avx512f-vdivps-2.c: Compare results with
UNION_FP_CHECK machinery.
From-SVN: r208276
Renlin Li [Mon, 3 Mar 2014 12:06:56 +0000 (12:06 +0000)]
validate_memory.h: Move f32in64 and i32in128 cases outside special big-endian processing block.
2014-03-03 Renlin Li <Renlin.Li@arm.com>
* gcc.target/aarch64/aapcs64/validate_memory.h: Move f32in64 and
i32in128 cases outside special big-endian processing block.
From-SVN: r208275
Tobias Grosser [Mon, 3 Mar 2014 11:39:22 +0000 (11:39 +0000)]
re PR tree-optimization/58028 (Several failures in libgomp.graphite after revision 200946)
2014-03-03 Tobias Grosser <tobias@grosser.es>
Mircea Namolaru <mircea.namolaru@inria.fr>
PR tree-optimization/58028
* graphite-clast-to-gimple.c (set_cloog_options): Don't remove
scalar dimensions.
Co-Authored-By: Mircea Namolaru <mircea.namolaru@inria.fr>
From-SVN: r208273
Jakub Jelinek [Mon, 3 Mar 2014 11:12:22 +0000 (12:12 +0100)]
re PR preprocessor/60400 (ICE with trigraphs)
PR preprocessor/60400
* c-c++-common/cpp/pr60400.c: New test.
* c-c++-common/cpp/pr60400-1.h: New file.
* c-c++-common/cpp/pr60400-2.h: New file.
From-SVN: r208272
Jakub Jelinek [Mon, 3 Mar 2014 09:36:44 +0000 (10:36 +0100)]
re PR objc++/60398 (FAIL: obj-c++.dg/invalid-method-2.mm -fgnu-runtime (test for errors, line 10))
PR objc++/60398
* obj-c++.dg/invalid-method-2.mm: Adjust dg-error regexps.
From-SVN: r208270
Ramana Radhakrishnan [Mon, 3 Mar 2014 08:09:14 +0000 (08:09 +0000)]
[ARM] Legitimize addresses for movmisalign<mode> for Neon.
2014-03-03 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
* config/arm/neon.md (*movmisalign<mode>): Legitimize addresses
not handled by recognizers.
From-SVN: r208269
Jakub Jelinek [Mon, 3 Mar 2014 07:27:46 +0000 (08:27 +0100)]
c-pragma.c (c_pp_lookup_pragma): Handle PRAGMA_CILK_SIMD.
* c-pragma.c (c_pp_lookup_pragma): Handle PRAGMA_CILK_SIMD.
(init_pragma): Call cpp_register_deferred_pragma for PRAGMA_CILK_SIMD
even when flag_preprocess_only.
* c-c++-common/cilk-plus/PS/vectorlength-2.c: New test.
* c-c++-common/cilk-plus/PS/vectorlength-3.c: New test.
From-SVN: r208268
Jakub Jelinek [Mon, 3 Mar 2014 07:25:50 +0000 (08:25 +0100)]
re PR middle-end/60175 (ICE on gcc.dg/asan/nosanitize-and-inline.c)
PR middle-end/60175
* function.c (expand_function_end): Don't emit
clobber_return_register sequence if clobber_after is a BARRIER.
* cfgexpand.c (construct_exit_block): Append instructions before
return_label to prev_bb.
From-SVN: r208267
Bill Schmidt [Mon, 3 Mar 2014 01:33:24 +0000 (01:33 +0000)]
constraints.md: Document reserved use of "wc".
2014-03-02 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* config/rs6000/constraints.md: Document reserved use of "wc".
From-SVN: r208266
GCC Administrator [Mon, 3 Mar 2014 00:16:41 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r208265
Jan Hubicka [Sun, 2 Mar 2014 22:19:37 +0000 (23:19 +0100)]
re PR lto/60150 (ICE in function_and_variable_visibility, at ipa.c:1000)
PR ipa/60150
* ipa.c (function_and_variable_visibility): When dissolving comdat
group, also set all symbols to local.
* g++.dg/lto/pr60150.H: New testcase.
* g++.dg/lto/pr60150_0.C: New testcase.
* g++.dg/lto/pr60150_1.C: New testcase.
From-SVN: r208262