- 02 May, 2018 14 commits
-
-
In libstdc++ the deprecated char* streams are non-copyable, as was required pre-C++11. Since C++11 the standard implies that those streams should be copyable, but doesn't specify the effects of copying them. This is surely a defect, so for consistency with other implementations this change makes them movable, but not copyable. PR libstdc++/69608 * include/backward/strstream (strstreambuf): Define move constructor and move assignment operator. (istrstream, ostrstream, strstream): Likewise. * testsuite/backward/strstream_move.cc: New. From-SVN: r259842
Jonathan Wakely committed -
re PR tree-optimization/85597 (internal compiler error: in compute_live_loop_exits, at tree-ssa-loop-manip.c:229) 2018-05-02 Richard Biener <rguenther@suse.de> PR tree-optimization/85597 * tree-vect-stmts.c (vectorizable_operation): For ternary SLP do not use split vect_get_vec_defs call but call vect_get_slp_defs directly. * gcc.dg/vect/pr85597.c: New testcase. From-SVN: r259840
Richard Biener committed -
2018-05-02 Tom de Vries <tom@codesourcery.com> PR testsuite/85106 * gcc.dg/ipa/ipa-icf-38.c: Use scan-ltrans-tree-dump. * lib/scanltranstree.exp: New file. * lib/target-supports.exp (scan-ltrans-tree-dump_required_options) (scan-ltrans-tree-dump-times_required_options) (scan-ltrans-tree-dump-not_required_options) (scan-ltrans-tree-dump-dem_required_options) (scan-ltrans-tree-dump-dem-not_required_options): New proc. * lib/gcc-dg.exp: Include scanltranstree.exp. * testsuite/lib/libatomic.exp: Include scanltranstree.exp. * testsuite/lib/libgomp.exp: Include scanltranstree.exp. * testsuite/lib/libitm.exp: Include scanltranstree.exp. * testsuite/lib/libvtv.exp: Include scanltranstree.exp. * doc/sourcebuild.texi (Commands for use in dg-final, Scan optimization dump files): Add ltrans-tree. From-SVN: r259838
Tom de Vries committed -
2018-05-02 Tom de Vries <tom@codesourcery.com> PR testsuite/85106 * gcc.dg/ipa/ipa-icf-38.c: New test. * gcc.dg/ipa/ipa-icf-38a.c: New test. * lib/scandump.exp (dump-base): New proc. (scan-dump, scan-dump-times, scan-dump-not, scan-dump-dem) (scan-dump-dem-not): Add and handle parameter for suffix of the dump base. * lib/scanipa.exp: Add "" argument to scan-dump calls. * lib/scanlang.exp: Same. * lib/scanrtl.exp: Same. * lib/scantree.exp: Same. * lib/scanwpaipa.exp: New file. * lib/gcc-dg.exp: Include scanwpaipa.exp. * testsuite/lib/libatomic.exp: Include scanwpaipa.exp. * testsuite/lib/libgomp.exp: Include scanwpaipa.exp. * testsuite/lib/libitm.exp: Include scanwpaipa.exp. * testsuite/lib/libvtv.exp: Include scanwpaipa.exp. * doc/sourcebuild.texi (Commands for use in dg-final, Scan optimization dump files): Add wpa-ipa. From-SVN: r259837
Tom de Vries committed -
This removes paired single (used on the 750CL and friends). It was deprecated in GCC 8. Removing it means we only have one vector model to deal with (VMX+VSX, 16-byte vectors). * config.gcc (powerpc*-*-*): Remove paired.h. Unsupport the powerpc*-*-linux*paired* target. * config/rs6000/750cl.h: Delete. * config/rs6000/paired.h: Delete. * config/rs6000/paired.md: Delete. * config/rs6000/predicates.md (easy_vector_constant): Remove paired float support. * config/rs6000/rs6000-builtin.def: Remove paired float support. * config/rs6000/rs6000-c.c (rs6000_target_modify_macros): Update comment. Remove paired float support. * config/rs6000/rs6000-modes.def: Remove V2SF and V2SI. * config/rs6000/rs6000-opts.h (enum rs6000_vector): Delete VECTOR_PAIRED. * config/rs6000/rs6000-protos.h (paired_expand_vector_init, paired_emit_vector_cond_expr, paired_expand_vector_move): Delete declarations. * config/rs6000/rs6000.c: Remove paired float support. (paired_expand_vector_init, paired_expand_vector_move, paired_emit_vector_compare, paired_emit_vector_cond_expr, (paired_expand_lv_builtin, paired_expand_stv_builtin, paired_expand_builtin, paired_expand_predicate_builtin, paired_init_builtins): Delete. * config/rs6000/rs6000.h: Remove paired float support. * config/rs6000/rs6000.md: Remove paired float support. (move_from_CR_ov_bit): Delete. * config/rs6000/rs6000.opt (mpaired): Delete. * config/rs6000/t-rs6000: Remove paired.md from MD_INCLUDES. * doc/invoke.texi (RS/6000 and PowerPC Options): Delete -mpaired. From-SVN: r259833
Segher Boessenkool committed -
ATTRIBUTE_NONSTRING * ansidecl.h (ATTRIBUTE_NONSTRING): Define. From-SVN: r259832
Alan Modra committed -
From-SVN: r259828
Jakub Jelinek committed -
re PR middle-end/85567 (internal compiler error: in gimplify_modify_expr, at gimplify.c:5797 when using sincos()) 2018-05-02 Richard Biener <rguenther@suse.de> PR middle-end/85567 * gimplify.c (gimplify_save_expr): When in SSA form allow SAVE_EXPRs to compute to SSA vars. * gcc.dg/torture/pr85567.c: New testcase. From-SVN: r259826
Richard Biener committed -
PR target/85582 * config/i386/i386.md (*ashl<dwi>3_doubleword_mask, *ashl<dwi>3_doubleword_mask_1, *<shift_insn><dwi>3_doubleword_mask, *<shift_insn><dwi>3_doubleword_mask_1): If and[sq]i3 is needed, don't clobber operands[2], instead use a new pseudo. Formatting fixes. * gcc.c-torture/execute/pr85582-1.c: New test. * gcc.c-torture/execute/pr85582-2.c: New test. From-SVN: r259825
Jakub Jelinek committed -
The problem in this PR was that we didn't consider aliases between writes in the same strided group. After tightening the early exit we get the expected abs(step) >= 2 versioning check. 2018-05-02 Richard Sandiford <richard.sandiford@linaro.org> gcc/ PR tree-optimization/85586 * tree-vect-data-refs.c (vect_analyze_data_ref_dependence): Only exit early for statements in the same group if the accesses are not strided. gcc/testsuite/ PR tree-optimization/85586 * gcc.dg/vect/pr85586.c: New test. From-SVN: r259822
Richard Sandiford committed -
2018-05-02 Tom de Vries <tom@codesourcery.com> PR lto/85451 * lto-wrapper.c (compile_offload_image): Add "could not find mkoffload" error message. From-SVN: r259821
Tom de Vries committed -
This was approved for the binutils gold linker. 2018-05-01 Sriraman Tallam <tmsriram@google.com> * plugin-api.h: Add plugin API to get the list of wrap symbols. From-SVN: r259820
Sriraman Tallam committed -
contrib/ * gcc_update: Check for .git as a file. From-SVN: r259819
Jim Wilson committed -
From-SVN: r259818
GCC Administrator committed
-
- 01 May, 2018 16 commits
-
-
2018-05-01 Tulio Magno Quites Machado Filho <tuliom@linux.vnet.ibm.com> PR libstdc++/84654 * acinclude.m4: Set ENABLE_FLOAT128 instead of _GLIBCXX_USE_FLOAT128. * config.h.in: Remove references to _GLIBCXX_USE_FLOAT128. * configure: Regenerate. * include/Makefile.am: Replace the value of _GLIBCXX_USE_FLOAT128 based on ENABLE_FLOAT128. * include/Makefile.in: Regenerate. * include/bits/c++config: Define _GLIBCXX_USE_FLOAT128. [!defined(__FLOAT128__) && !defined(__SIZEOF_FLOAT128__)]: Undefine _GLIBCXX_USE_FLOAT128. From-SVN: r259813
Tulio Magno Quites Machado Filho committed -
2018-05-01 Marc Glisse <marc.glisse@inria.fr> PR tree-optimization/85143 gcc/ * match.pd (A<B&A<C): Extend to BIT_IOR_EXPR. gcc/testsuite/ * gcc.dg/tree-ssa/minmax-loopend.c: Extend and split... * gcc.dg/tree-ssa/minmax-loopend-2.c: ... here. From-SVN: r259812
Marc Glisse committed -
From-SVN: r259810
Joseph Myers committed -
2018-05-01 Tom de Vries <tom@codesourcery.com> PR lto/85451 * config/nvptx/mkoffload.c (main): Suggest using -B in "offload compiler not found" error message. From-SVN: r259809
Tom de Vries committed -
2018-05-01 Tom de Vries <tom@codesourcery.com> PR other/83786 * vec.h (VEC_ORDERED_REMOVE_IF, VEC_ORDERED_REMOVE_IF_FROM_TO): Define. * vec.c (test_ordered_remove_if): New function. (vec_c_tests): Call test_ordered_remove_if. * dwarf2cfi.c (connect_traces): Use VEC_ORDERED_REMOVE_IF_FROM_TO. * lto-streamer-out.c (prune_offload_funcs): Use VEC_ORDERED_REMOVE_IF. * tree-vect-patterns.c (vect_pattern_recog_1): Use VEC_ORDERED_REMOVE_IF. From-SVN: r259808
Tom de Vries committed -
gcc/c-family/ChangeLog: PR c/84258 * c-format.c (struct format_check_results): Add field "number_non_char". (check_format_info): Initialize it, and warn if encountered. (check_format_arg): Distinguish between wide char and everything else when detecting arrays of non-char. gcc/testsuite/ChangeLog: PR c/84258 * c-c++-common/Wformat-pr84258.c: New test. From-SVN: r259807
David Malcolm committed -
PR tree-optimization/82665 * vr-values.c (vr_values::extract_range_from_binary_expr): Handle pointer subtraction where arguments come from a memchr call. PR tree-optimization/82665 * gcc.dg/tree-ssa/pr82665.c: New test. From-SVN: r259806
Prathamesh Kulkarni committed -
* semantics.c (finish_qualified_id_expr): Don't return an unqualified IDENTIFIER_NODE. From-SVN: r259805
Jason Merrill committed -
configure.ac (LD_AS_NEEDED_OPTION, [...]): Use --push-state --as-needed and --pop-state instead of --as-needed and... * configure.ac (LD_AS_NEEDED_OPTION, LD_NO_AS_NEEDED_OPTION): Use --push-state --as-needed and --pop-state instead of --as-needed and --no-as-needed if ld supports it. * configure: Regenerated. From-SVN: r259803
Jakub Jelinek committed -
* configure.ac: Added "nfp" target. * configure: Regenerate. From-SVN: r259800
Francois H. Theron committed -
re PR web/85578 (broken links in gcc-8.0.1-RC-20180427/INSTALL/specific.html, and out of date prerequisites.html) PR web/85578 * doc/install.texi2html: Replace _002d with - and _002a with * in generated html files using sed. From-SVN: r259799
Jakub Jelinek committed -
PR go/85429 cmd/go: support more Solaris assembler syntaxes Patch by Rainer Orth. Reviewed-on: https://go-review.googlesource.com/110563 From-SVN: r259797
Ian Lance Taylor committed -
* name-lookup.c (check_extern_c_conflict): Ignore local decls. From-SVN: r259793
Jason Merrill committed -
From-SVN: r259787
GCC Administrator committed -
This patch adds a support function to class gcc_rich_location to make it easier for fix-it hints to use idiomatic C/C++ indentation, for use by the patch for PR c++/85523. gcc/ChangeLog: PR c++/85523 * gcc-rich-location.c (blank_line_before_p): New function. (use_new_line): New function. (gcc_rich_location::add_fixit_insert_formatted): New function. * gcc-rich-location.h (gcc_rich_location::add_fixit_insert_formatted): New function. gcc/testsuite/ChangeLog: PR c++/85523 * gcc.dg/plugin/diagnostic-test-show-locus-generate-patch.c (test_add_fixit_insert_formatted_single_line): New function. (test_add_fixit_insert_formatted_multiline): New function. Extend expected output of generated patch to include fix-it hints for these. * gcc.dg/plugin/diagnostic_plugin_test_show_locus.c: Include "gcc-rich-location.h". Add test coverage for gcc_rich_location::add_fixit_insert_formatted. From-SVN: r259783
David Malcolm committed -
gcc/ChangeLog: * selftest.c (assert_streq): Rename "expected" and "actual" to "val1" and "val2". Extend NULL-handling to cover both inputs symmetrically, while still requiring both to be non-NULL for a pass. * selftest.h (assert_streq): Rename "expected" and "actual" to "val1" and "val2". (ASSERT_EQ): Likewise. (ASSERT_EQ_AT): Likewise. (ASSERT_KNOWN_EQ): Likewise. (ASSERT_KNOWN_EQ_AT): Likewise. (ASSERT_NE): Likewise. (ASSERT_MAYBE_NE): Likewise. (ASSERT_MAYBE_NE_AT): Likewise. (ASSERT_STREQ): Likewise. Clarify that both must be non-NULL for the assertion to pass. (ASSERT_STREQ_AT): Likewise. From-SVN: r259782
David Malcolm committed
-
- 30 Apr, 2018 10 commits
-
-
* decl.c (grokdeclarator): Overhaul diagnostics for invalid use of long/short/signed/unsigned. From-SVN: r259780
Jason Merrill committed -
* parser.c (cp_parser_initializer): Add subexpression_p parm; don't check_for_bare_parameter_packs in a subexpression. (cp_parser_lambda_introducer): Use it. From-SVN: r259779
Jason Merrill committed -
* argv.c (expandargv): Fix memory leak for expanded arguments. From-SVN: r259775
Daniel van Gerpen committed -
* doc/invoke.texi (-fpie, -fPIE): Fix grammar and clarify interaction with -pie. From-SVN: r259774
Jonathan Wakely committed -
gcc/ChangeLog: * selftest.h: Fix alphabetization of per-source-file selftest declarations. From-SVN: r259773
David Malcolm committed -
gcc/cp/ * call.c (build_trivial_dtor_call): New, assigns a clobber. (build_over_call, build_special_member_call): Use it. * cp-tree.h: Declare it. * init.c (build_delete): Remove trivial path. gcc/ * gimplify.c (gimplify_modify_expr): Simplify complex lvalue on LHS of clobber. From-SVN: r259772
Jason Merrill committed -
* init.c (build_dtor_call): Use build_special_member_call. (build_delete): Remove redundant uses of save_addr. From-SVN: r259771
Jason Merrill committed -
* tree.c (build_clobber): New. * tree.h: Declare it. * gimplify.c (gimplify_bind_expr, gimplify_target_expr): Use it. From-SVN: r259770
Jason Merrill committed -
location_get_source_line returns a const char * that isn't 0-terminated, writing back a length through an int * param. This is error-prone, as all call-sites have to take into account the lack of 0-termination, and respect the length of the buffer. It's cleaner to bundle together this pointer+length state into a class, so this patch does so, reusing the "char_span" class that I introduced in r250187 (as part of the fix for PR c/81405). The patch also adds assertions to all access to the char_span. gcc/c-family/ChangeLog: * c-format.c (get_corrected_substring): Update for location_get_source_line returning a char_span. Use a char_span when handling the prefix of the correction. * c-indentation.c (get_visual_column): Update for location_get_source_line returning a char_span. (get_first_nws_vis_column): Likewise. gcc/ChangeLog: * diagnostic-show-locus.c (layout::layout): Update for location_get_source_line returning a char_span. (struct char_span): Move to input.h. (struct correction): Update for fields in char_span becoming private. (struct source_line): Update for location_get_source_line returning a char_span. (layout::print_line): Likewise. * edit-context.c (edited_file::print_content): Likewise. (edited_file::print_diff_hunk): Likewise. (edited_file::print_run_of_changed_lines): Likewise. (edited_file::get_num_lines): Likewise. (edited_line::edited_line): Likewise. * final.c (asm_show_source): Likewise. * input.c (location_get_source_line): Convert return type from const char * to char_span, losing the final "line_len" param. (dump_location_info): Update for the above. (get_substring_ranges_for_loc): Likewise. Use a char_span when handling the literal within the line. (test_reading_source_line): Update for location_get_source_line returning a char_span. * input.h (class char_span): Move here from diagnostic-show-locus.c, converting from a struct to a class. Make data members private. (char_span::operator bool): New. (char_span::length): New. (char_span::get_buffer): New. (char_span::operator[]): New. (char_span::subspan): Make const. (char_span::xstrdup): New. (location_get_source_line): Convert return type from const char * to char_span, losing the final "line_size" param. gcc/testsuite/ChangeLog: * gcc.dg/plugin/diagnostic_plugin_test_show_locus.c (test_show_locus): Update for location_get_source_line returning a char_span. Use char_span for handling words in the "test_many_nested_locations" fix-it example. From-SVN: r259768
David Malcolm committed -
* lto-wrapper.c (ltrans_priorities): New static var. (cmp_priority): New. (run_gcc): Read priorities and if doing parallel build order the Makefile by them. * lto.c (cmp_partitions_size): Remove. (lto_wpa_write_files): Also output priorities; do not sort partitions. (cmp_partition_order): Move to ... * lto-partition.c (cmp_partition_order): ... (lto_1_to_1_map): Sort partitions. From-SVN: r259767
Jan Hubicka committed
-