- 14 Jun, 2017 6 commits
-
-
2017-06-14 Paolo Carlini <paolo.carlini@oracle.com> PR c++/58541 * g++.dg/cpp0x/constexpr-58541.C: New. From-SVN: r249186
Paolo Carlini committed -
From-SVN: r249183
Eric Botcazou committed -
re PR tree-optimization/81083 (ICE: Unable to coalesce ssa_names 4 and 13 which are marked as MUST COALESCE) 2017-06-14 Richard Biener <rguenther@suse.de> PR tree-optimization/81083 * tree-ssa-sccvn.c (vn_reference_lookup_3): Do not use abnormals as values. * gcc.dg/torture/pr81083.c: New testcase. From-SVN: r249182
Richard Biener committed -
* gcc.dg/tree-ssa/vrp101.c: Fix scan-tree-dump regex. * gcc.dg/tree-ssa/builtin-sprintf-2.c: Likewise. Adjust comment. From-SVN: r249181
Jakub Jelinek committed -
* gcc.dg/tree-ssa/vrp101.c: Fix scan-tree-dump regex. * gcc.dg/tree-ssa/builtin-sprintf-2.c: Likewise. Adjust comment. From-SVN: r249180
Jakub Jelinek committed -
From-SVN: r249179
GCC Administrator committed
-
- 13 Jun, 2017 31 commits
-
-
PR c++/80973 * cp-gimplify.c (cp_genericize_r): Don't instrument MEM_REF second argument even if it has REFERENCE_TYPE. * g++.dg/ubsan/pr80973.C: New test. From-SVN: r249174
Jakub Jelinek committed -
PR c++/80984 * cp-gimplify.c (cp_genericize): Only look for VAR_DECLs in BLOCK_VARS (outer) chain. (cxx_omp_const_qual_no_mutable): Likewise. * g++.dg/opt/nrv18.C: New test. From-SVN: r249173
Jakub Jelinek committed -
PR go/80964 * configure.ac: Set NATIVE if host_alias = target_alias. * configure: Rebuild. From-SVN: r249172
Ian Lance Taylor committed -
PR objc/80949 * c-warn.c (do_warn_duplicated_branches): Return if any of the branches is null. From-SVN: r249171
Marek Polacek committed -
* config/rs6000/rs6000.c: Update all comments that mentioned SPE. (rs6000_expand_builtin): Remove RS6000_BTC_EVSEL. * config/rs6000/rs6000.h (RS6000_BTC_EVSEL): Delete. * config/rs6000/vxworks.h (VXCPU_FOR_8548): Delete. Adjust former use. * config/rs6000/vxworksae.h (VXCPU_FOR_8548): Delete. * config/rs6000/vxworksmils.h (VXCPU_FOR_8548): Delete. From-SVN: r249170
Segher Boessenkool committed -
* config/rs6000/rs6000-opts.h (enum rs6000_vector): Delete VECTOR_SPE. * config/rs6000/rs6000.c (rs6000_debug_vector_unit): Delete VECTOR_SPE. From-SVN: r249169
Segher Boessenkool committed -
* config/rs6000/rs6000.h (FIXED_SCRATCH): Delete. From-SVN: r249168
Segher Boessenkool committed -
* config/rs6000/t-rtems: Don't handle SPE. From-SVN: r249167
Segher Boessenkool committed -
* config/rs6000/t-linux: Don't handle SPE. From-SVN: r249166
Segher Boessenkool committed -
* config/rs6000/eabispe.h: Delete file. From-SVN: r249165
Segher Boessenkool committed -
* config/rs6000/t-spe: Delete file. From-SVN: r249164
Segher Boessenkool committed -
* config/rs6000/rs6000.c (SPE_CONST_OFFSET_OK): Delete. (rs6000_legitimate_offset_address_p): Return false for anything in V2SImode or V2SFmode. From-SVN: r249163
Segher Boessenkool committed -
This removes the vector modes that were only used by SPE. It also rearranges things so it is easier to see what is there, and for what. * config/rs6000/rs6000-modes.def: Remove all 8-byte vector modes except V2SF and V2SI. Rearrange the vector modes, and add comments. * config/rs6000/rs6000.c (rs6000_debug_reg_global): Remove V8QImode and V4HImode. (reg_offset_addressing_ok_p): Remove V4HImode and V1DImode. (rs6000_legitimate_offset_address_p): Ditto. (rs6000_emit_move): Ditto. (rs6000_init_builtins): Remove V4HI_type_node. From-SVN: r249162
Segher Boessenkool committed -
Fix buglet in Gogo::write_globals-- in a couple of places the wrong Bfunction was being used for the containing (not target) function when creating calls for init functions. Reviewed-on: https://go-review.googlesource.com/45510 From-SVN: r249159
Ian Lance Taylor committed -
2017-06-13 Martin Liska <mliska@suse.cz> PR sanitize/78204 * c-c++-common/ubsan/attrib-2.c (float_cast2): Enhance the test by adding no_sanitize attribute. * gcc.dg/asan/use-after-scope-4.c: Likewise. 2017-06-13 Martin Liska <mliska@suse.cz> PR sanitize/78204 * c-attribs.c (add_no_sanitize_value): New function. (handle_no_sanitize_attribute): Likewise. (handle_no_sanitize_address_attribute): Use the function. (handle_no_sanitize_thread_attribute): New function. (handle_no_address_safety_analysis_attribute): Use add_no_sanitize_value. (handle_no_sanitize_undefined_attribute): Likewise. * c-common.h: Declare new functions. * c-ubsan.c (ubsan_instrument_division): Use sanitize_flags_p. (ubsan_instrument_shift): Likewise. (ubsan_instrument_bounds): Likewise. (ubsan_maybe_instrument_array_ref): Likewise. (ubsan_maybe_instrument_reference_or_call): Likewise. 2017-06-13 Martin Liska <mliska@suse.cz> PR sanitize/78204 * asan.c (asan_sanitize_stack_p): Use sanitize_flags_p. (gate_asan): Likewise. * asan.h (asan_no_sanitize_address_p): Remove the function. (sanitize_flags_p): New function. * builtins.def: Fix coding style. * common.opt: Use renamed enum value. * convert.c (convert_to_integer_1): Use sanitize_flags_p. * doc/extend.texi: Document no_sanitize attribute. * flag-types.h (enum sanitize_code): Rename SANITIZE_NONDEFAULT to SANITIZE_UNDEFINED_NONDEFAULT. * gcc.c (sanitize_spec_function): Use the renamed enum value. * gimple-fold.c (optimize_atomic_compare_exchange_p): Use sanitize_flags_p. * gimplify.c (gimplify_function_tree): Likewise. * ipa-inline.c (sanitize_attrs_match_for_inline_p): Likewise. * opts.c (parse_no_sanitize_attribute): New function. (common_handle_option): Use renamed enum value. * opts.h (parse_no_sanitize_attribute): Declare. * tree.c (sanitize_flags_p): New function. * tree.h: Declared here. * tsan.c: Use sanitize_flags_p. * ubsan.c (ubsan_expand_null_ifn): Likewise. (instrument_mem_ref): Likewise. (instrument_bool_enum_load): Likewise. (do_ubsan_in_current_function): Remove the function. (pass_ubsan::execute): Use sanitize_flags_p. * ubsan.h: Remove do_ubsan_in_current_function * tree-cfg.c (print_no_sanitize_attr_value): New function. (dump_function_to_file): Use it here. 2017-06-13 Martin Liska <mliska@suse.cz> PR sanitize/78204 * class.c (build_base_path): Use sanitize_flags_p. * cp-gimplify.c (cp_genericize_r): Likewise. (cp_genericize_tree): Likewise. (cp_genericize): Likewise. * cp-ubsan.c (cp_ubsan_instrument_vptr_p): Likewise. * decl.c (compute_array_index_type): Likewise. (start_preparsed_function): Likewise. * decl2.c (one_static_initialization_or_destruction): Likewise. * init.c (finish_length_check): Likewise. * lambda.c (maybe_add_lambda_conv_op): Likewise. * typeck.c (cp_build_binary_op): Likewise. (build_static_cast_1): Likewise. 2017-06-13 Martin Liska <mliska@suse.cz> PR sanitize/78204 * c-convert.c (convert): Use sanitize_flags_p. * c-decl.c (grokdeclarator): Likewise. * c-typeck.c (convert_for_assignment): Likewise. (c_finish_return): Likewise. (build_binary_op): Likewise. From-SVN: r249158
Martin Liska committed -
After r249013, die () and dump_stack () are both in cold section. This makes the compiler generate bl instruction for the function call, instead of honoring the -mlong-calls option. This patch changes the dump_stack function call conditional, which fixes the regression. gcc/testsuite/ * gcc.target/arm/cold-lc.c: Update coding style, call dump_stack conditionally. From-SVN: r249157
Renlin Li committed -
If there is no function name, the traceback is generally uninformative. In earlier versions we did not show such frames. Restore that behavior. These frames can be seen with GOTRACEBACK=system. Reviewed-on: https://go-review.googlesource.com/45431 From-SVN: r249156
Ian Lance Taylor committed -
From-SVN: r249155
Martin Jambor committed -
2017-06-13 Martin Jambor <mjambor@suse.cz> PR tree-optimization/80803 PR tree-optimization/81063 * tree-sra.c (subtree_mark_written_and_enqueue): Move up in the file. (propagate_subaccesses_across_link): Enqueue subtree whneve necessary instead of relying on the caller. testsuite/ gcc.dg/tree-ssa/pr80803.c: New test. gcc.dg/tree-ssa/pr81063.c: Likewise. From-SVN: r249154
Martin Jambor committed -
2017-06-13 Martin Jambor <mjambor@suse.cz> * tree-sra.c (add_access_to_work_queue): Only enqueue accesses that have a first_link. (sort_and_splice_var_accesses): Do not check first_link before enquing. (subtree_mark_written_and_enqueue): Likewise. (propagate_all_subaccesses): Likewise and do not stop at first parent with a first_link. From-SVN: r249153
Martin Jambor committed -
2017-06-13 Martin Jambor <mjambor@suse.cz> * tree-sra.c (dump_access_tree_1): Fix accidental dumping to stderr instead of f. From-SVN: r249152
Martin Jambor committed -
2017-06-13 Yury Gribov <tetra2005@gmail.com> gcc/ * match.pd: New pattern. gcc/testsuite/ * c-c++-common/fold-masked-cmp-3.c: New test. From-SVN: r249151
Yury Gribov committed -
2017-06-13 Yury Gribov <tetra2005@gmail.com> gcc/ * tree-vrp.c (is_masked_range_test): New function. (register_edge_assert_for): Determine ranges for some bit tests. From-SVN: r249150
Yury Gribov committed -
2017-06-13 Yury Gribov <tetra2005@gmail.com> gcc/ PR tree-optimization/67328 * fold-const.c (maskable_range_p): New function. (build_range_check): Generate bittests if possible. gcc/testsuite/ PR tree-optimization/67328 * c-c++-common/fold-masked-cmp-1.c: New test. * c-c++-common/fold-masked-cmp-2.c: Likewise. * gcc.dg/pr46309.c: Fix pattern. * gcc.dg/pr46309-2.c: Likewise. From-SVN: r249149
Yury Gribov committed -
2017-06-13 Tamar Christina <tamar.christina@arm.com> * gcc.target/arm/sdiv_costs_1.c: Require arm_arch_v8a_ok and add march option. From-SVN: r249148
Tamar Christina committed -
2017-06-13 Martin Liska <mliska@suse.cz> * gimple-pretty-print.c (dump_probability): Add new argument. (dump_edge_probability): Dump both probability and count. (dump_gimple_label): Likewise. (dump_gimple_bb_header): Likewise. 2017-06-13 Martin Liska <mliska@suse.cz> * gcc.dg/tree-ssa/builtin-sprintf-2.c: Adjust scanned pattern. * gcc.dg/tree-ssa/dump-2.c: Likewise. * gcc.dg/tree-ssa/vrp101.c: Likewise. From-SVN: r249147
Martin Liska committed -
PR target/81072 * config/avr/avr-devices.c: Fix indentation. * config/avr/gen-avr-mmcu-specs.c: Dito. From-SVN: r249146
Georg-Johann Lay committed -
2017-06-13 Richard Biener <rguenther@suse.de> * tree-vect-loop.c (vect_model_reduction_cost): Do not fail, instead get vector type from stmt_info. (vectorizable_reduction): Adjust. Remove dead code. From-SVN: r249145
Richard Biener committed -
2017-06-13 Richard Biener <rguenther@suse.de> PR middle-end/81065 * fold-const.c (extract_muldiv_1): Remove bogus distribution case of C * (x * C2 + C3). (fold_addr_of_array_ref_difference): Properly fold index difference. * c-c++-common/ubsan/pr81065.c: New testcase. From-SVN: r249144
Richard Biener committed -
Otherwise it may be set when the g struct is reused via gfput/gfget. Test is golang.org/x/net/http2 with GOMAXPROCS=12. Reviewed-on: https://go-review.googlesource.com/45430 From-SVN: r249143
Ian Lance Taylor committed -
From-SVN: r249142
GCC Administrator committed
-
- 12 Jun, 2017 3 commits
-
-
Also always access the atomicstatus field atomically. The effect of not checking the _Gscan bit is that if the GC decides to scan the stack just as the goroutine is leaving the system call, the goroutine might fail to call exitsyscall. Then then typically causes a runtime assertion failure later on. If we do call exitsyscall as we should, it will stall (in casgstatus) until the _Gscan bit is cleared. No separate test. I've observed causing sporadic failures running the misc/cgo tests, but we don't currently have a way to run those routinely for gccgo. I should fix that. Reviewed-on: https://go-review.googlesource.com/45392 From-SVN: r249138
Ian Lance Taylor committed -
As discussed in PR c++/80265 ("__builtin_{memcmp,memchr,strlen} are not usable in constexpr functions"), use __builtin_constant_p to tell whether we can defer to a constexpr algorithm. I used __always_inline__ just to be thorough. It isn't really really necessary as far as I could determine. Changes like these: if (__n == 0) return 0; - return wmemcmp(__s1, __s2, __n); + else + return wmemcmp(__s1, __s2, __n); are necessary otherwise G++ complains that we're calling a non-constexpr function, which looks like a a manifestation of PR67026 to me. libstdc++-v3: 2017-06-12 Pedro Alves <palves@redhat.com> * doc/xml/manual/status_cxx2017.xml: Update C++17 constexpr char_traits status. * doc/html/*: Regenerate. * include/bits/char_traits.h (_GLIBCXX_ALWAYS_INLINE): Define if not already defined. (__cpp_lib_constexpr_char_traits): Uncomment. (__constant_string_p, __constant_char_array_p): New. (std::char_traits<char>, std::char_traits<wchar_t>): Add _GLIBCXX17_CONSTEXPR on compare, length and find and use __constant_string_p, __constant_char_array_p and __builtin_constant_p to defer to __gnu_cxx::char_traits at compile time. * testsuite/21_strings/char_traits/requirements/ constexpr_functions_c++17.cc: Uncomment __cpp_lib_constexpr_char_traits tests. Uncomment test_compare<char>, test_length<char>, test_find<char>, test_compare<wchar_t>, test_length<wchar_t> and test_find<wchar_t> static_assert tests. From-SVN: r249137
Pedro Alves committed -
2017-06-12 François Dumont <fdumont@gcc.gnu.org> * include/bits/stl_tree.h (_Rb_tree_impl()): Restore _Node_allocator default init. * testsuite/util/testsuite_allocator.h (__gnu_test::default_init_allocator<>) New. * testsuite/23_containers/set/allocator/default_init.cc: New. * testsuite/23_containers/map/allocator/default_init.cc: New. From-SVN: r249136
François Dumont committed
-