aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2014-03-08gfortran.texi (Fortran 2003 Status): Mention finalization, deferred-length ↵Tobias Burnus2-6/+20
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
2014-03-08lto-wrapper.c (merge_and_complain): Ensure -fshort-double is used ↵Paulo Matos8-2/+39
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
2014-03-08re PR c++/60033 ([c++1y] ICE in retrieve_specialization while compiling ↵Adam Butcher4-2/+38
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
2014-03-08re PR c++/60393 ([c++1y] ICE with with invalid functions with auto parameters)Adam Butcher4-6/+26
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
2014-03-08re PR target/58271 (ICE in gcc for a MIPS target during compilation with ↵Richard Sandiford2-6/+22
-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
2014-03-08re PR fortran/60128 (Wrong ouput using en edit descriptor)Dominique d'Humieres4-22/+184
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
2014-03-08Daily bump.GCC Administrator1-1/+1
From-SVN: r208422
2014-03-07re PR ada/60411 (Ada bootstrap failure on ARM)Doug Rupp2-4/+10
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
2014-03-07* Make-lang.in (check_g++_parallelize): Split dg.exp.Jason Merrill2-1/+6
From-SVN: r208417
2014-03-07g++-dg.exp (g++-dg-runtest): Run tests in C++1y mode, too.Jason Merrill1474-2147/+1851
* 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
2014-03-07parser.c (cp_parser_type_id_1): Only allow 'auto' in C++1y if we're in a ↵Jason Merrill3-2/+7
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
2014-03-07typeck.c (comp_template_parms_position): 'auto' and 'decltype(auto)' are ↵Jason Merrill3-1/+9
different from real template parms. * typeck.c (comp_template_parms_position): 'auto' and 'decltype(auto)' are different from real template parms. From-SVN: r208414
2014-03-07parser.c (cp_parser_using_declaration): Consume the semicolon after bare ↵Jason Merrill2-2/+11
parameter pack error. * parser.c (cp_parser_using_declaration): Consume the semicolon after bare parameter pack error. From-SVN: r208413
2014-03-07cp-tree.h (REF_PARENTHESIZED_P): New.Jason Merrill5-8/+41
* 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
2014-03-07decl.c (create_array_type_for_decl): Only warn about invalid C++1y VLA if ↵Jason Merrill11-16/+44
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
2014-03-07re PR c++/58609 ([c++11] ICE with uninitialized variable in constexpr)Paolo Carlini4-1/+23
/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
2014-03-07MAINTAINERS: Remove avr maintainers: Anatoly Sokolov and Eric WeddingtonDenis Chertykov2-2/+4
* MAINTAINERS: Remove avr maintainers: Anatoly Sokolov and Eric Weddington From-SVN: r208406
2014-03-07* c.opt: Add -std=c++14.Jason Merrill3-7/+12
From-SVN: r208404
2014-03-07* sort.c (backtrace_qsort): Use middle element as pivot.Ian Lance Taylor2-0/+10
From-SVN: r208403
2014-03-07decl.c (check_initializer): Remove dead code.Paolo Carlini2-4/+4
2014-03-07 Paolo Carlini <paolo.carlini@oracle.com> * decl.c (check_initializer): Remove dead code. From-SVN: r208402
2014-03-07Handle backtrace_qsortRainer Orth4-1/+19
* 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
2014-03-07re PR bootstrap/58572 (make bootstrap-lean leads to installation failure ↵Jakub Jelinek3-6/+13
(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
2014-03-07Improve @tlsldmplt test on Solaris 11/x86Rainer Orth3-4/+18
* configure.ac (HAVE_AS_IX86_TLSLDMPLT): Improve test for Solaris 11/x86 ld. * configure: Regenerate. From-SVN: r208399
2014-03-07Disable local dynamic TLS model on Solaris/x86 if as/ld cannot handle itRainer Orth6-13/+153
* 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
2014-03-07common.opt (fira-loop-pressure): Mark as optimization.Paulo Matos2-1/+5
2014-03-07 Paulo Matos <paulo@matos-sorge.com> * common.opt (fira-loop-pressure): Mark as optimization. From-SVN: r208395
2014-03-07The error_mark_node is not an OpenMP mappable type.Thomas Schwinge7-8/+31
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
2014-03-07sort.c: New file.Ian Lance Taylor8-15/+288
* 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
2014-03-07runtime: Fix GC bug caused by Entersyscall modifying reg.Ian Lance Taylor1-4/+20
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
2014-03-07Daily bump.GCC Administrator1-1/+1
From-SVN: r208389
2014-03-06re PR fortran/51976 ([F2003] Support deferred-length character components of ↵Paul Thomas14-28/+329
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
2014-03-06Makefile.in (s-mlib): Only pass MULTIARCH_DIRNAME if MULTILIB_OSDIRNAMES is ↵Matthias Klose2-1/+6
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
2014-03-06re PR c/60197 (ICE with _Cilk_spawn in expression)Marek Polacek10-2/+155
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
2014-03-06Don't install vtv_*.o unless --enable-vtable-verify (PR libgcc/59339)Rainer Orth2-1/+11
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
2014-03-06re PR target/58595 (internal compiler error: in gen_movsi when compiling on ↵Jakub Jelinek4-21/+69
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
2014-03-06re PR middle-end/60445 (473.astar miscompares with -Ofast)Richard Biener4-21/+27
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
2014-03-06parser.c (cp_lexer_set_source_position): New.Paolo Carlini2-14/+26
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
2014-03-06gcc.c (PLUGIN_COND): Always enable unless -fno-use-linker-plugin or -fno-lto ↵Richard Biener4-5/+94
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
2014-03-06t-msp430 (LIB2ADD): Add lib2hw_mul.SNick Clifton3-0/+232
* config/msp430/t-msp430 (LIB2ADD): Add lib2hw_mul.S * config/msp430/lib2hw_mul.S: New: Hardware multiply routines. From-SVN: r208374
2014-03-06re PR debug/60381 (ICE: in vt_expand_var_loc_chain, at var-tracking.c:8245)Alexandre Oliva2-9/+17
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
2014-03-06[libstdc++,docs] After the latest batch of papers came out I updated the ↵Ed Smith-Rowland2-6/+143
status docs. From-SVN: r208358
2014-03-06Daily bump.GCC Administrator1-1/+1
From-SVN: r208357
2014-03-05re PR testsuite/59308 (gcc.dg/tree-ssa/ssa-ifcombine-ccmp-[1456] tests fail ↵Jakub Jelinek13-19/+37
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
2014-03-05re PR c++/60409 ([c++1y] ICE on valid with template function)Jason Merrill3-1/+17
PR c++/60409 * semantics.c (force_paren_expr): Only add a PAREN_EXPR to a dependent expression. From-SVN: r208352
2014-03-05re PR c++/60361 (unexpected 'use of parameter outside function body' error)Jason Merrill6-7/+32
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
2014-03-05parser.c (cp_parser_mem_initializer): Set input_location properly for ↵Jason Merrill3-2/+26
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
2014-03-05re PR plugins/59335 (Plugin doesn't build on trunk)Jakub Jelinek2-1/+6
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
2014-03-05re PR plugins/59335 (Plugin doesn't build on trunk)Jakub Jelinek2-1/+9
PR plugins/59335 * config/i386/t-i386 (OPTIONS_H_EXTRA): Add stringop.def. (TM_H): Add x86-tune.def. From-SVN: r208344
2014-03-05aarch64.c (generic_tunings): Use cortexa57_extra_costs.Kyrylo Tkachov2-1/+6
* config/aarch64/aarch64.c (generic_tunings): Use cortexa57_extra_costs. From-SVN: r208343
2014-03-05re PR lto/60404 (wrong code by LTO on x86_64-linux-gnu)Jakub Jelinek7-4/+52
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
2014-03-05Daily bump.GCC Administrator1-1/+1
From-SVN: r208338