- 21 Apr, 2019 7 commits
-
-
2019-04-21 Iain Sandoe <iain@sandoe.co.uk> * MAINTAINERS: Add myself as co-maintainer for Darwin. From-SVN: r270481
Iain Sandoe committed -
The current implementation of “speculation_barrier” and “group_end_nop” insns emit hard-wired register names which causes tests using them to fail on Darwin, at least, which uses “rNN” instead of “NN”. The patch makes the register names for these insns use the operand output mechanism to substitute the appropriate variant when needed. gcc/ 2019-04-21 Iain Sandoe <iain@sandoe.co.uk> * config/rs6000/rs6000.md (group_end_nop): Emit insn register names using operand format, rather than hard-wired. (speculation_barrier): Likewise. From-SVN: r270480
Iain Sandoe committed -
These earlier Darwin versions have “FP_≈” inside a comment in architecture/{ppc,i386}/math.h, which is included by math.h which causes the tests to fail. The intent of the tests (i.e. to ensure that the library itself does not emit non-ascii) is covered by other platforms, including later Darwin editions. 2019-04-21 Iain Sandoe <iain@sandoe.co.uk> * testsuite/17_intro/headers/c++1998/charset.cc: Skip for Darwin8 to Darwin10. * testsuite/17_intro/headers/c++2011/charset.cc: Likewise. * testsuite/17_intro/headers/c++2014/charset.cc: Likewise. * testsuite/17_intro/headers/c++2017/charset.cc: Likewise. * testsuite/17_intro/headers/c++2020/charset.cc: Likewise. From-SVN: r270479
Iain Sandoe committed -
This shouldn't happen during normal traversal of the AST provided from the front-end, however as there are some cases where declarations need to be visited out of order, such as what is being done in PR d/89017, it then becomes necessary to guard against this. gcc/d/ChangeLog: 2019-04-21 Iain Buclaw <ibuclaw@gdcproject.org> * decl.cc (DeclVisitor::visit(Import)): Set semanticRun after completion, guard against being called more than once. (DeclVisitor::visit(StructDeclaration)): Likewise. (DeclVisitor::visit(ClassDeclaration)): Likewise. (DeclVisitor::visit(InterfaceDeclaration)): Likewise. (DeclVisitor::visit(VarDeclaration)): Likewise. (DeclVisitor::visit(TypeInfoDeclaration)): Likewise. From-SVN: r270478
Iain Buclaw committed -
As any unittest functions registered against the testing module when compiling with -fbuilding-libphobos-tests are ignored during the generation of the ModuleInfo data. gcc/d/ChangeLog: 2019-04-21 Iain Buclaw <ibuclaw@gdcproject.org> * modules.cc (register_module_decl): Don't register unittests against the ModuleInfo symbol for -fbuilding-libphobos-tests. From-SVN: r270477
Iain Buclaw committed -
2019-04-20 Sandra Loosemore <sandra@codesourcery.com> gcc/testsuite/ * g++.dg/ipa/pr89009.C: Add dg-require-effective-target fpic. From-SVN: r270476
Sandra Loosemore committed -
From-SVN: r270475
GCC Administrator committed
-
- 20 Apr, 2019 6 commits
-
-
* include/bits/c++config: Remove explicit PSTL configuration macros and use definitions from <pstl/pstl_config.h>. From-SVN: r270472
Thomas Rodgers committed -
* include/pstl/glue_algorithm_impl.h (stable_sort): Forward execution policy. (mismatch): Forward execution policy. (equal): Qualify call to std::equal(). (partial_sort): Forward execution policy. (inplace_merge): Forward execution policy. From-SVN: r270471
Thomas Rodgers committed -
libphobos/ChangeLog: 2019-04-20 Iain Buclaw <ibuclaw@gdcproject.org> PR d/89293 * libdruntime/core/atomic.d (casImpl): Remove static assert for GNU_Have_Atomics, add static path to handle missing atomic support. (atomicLoad): Likewise. (atomicStore): Likewise. (atomicFence): Likewise. (atomicMutexHandle, AtomicMutex): Declare types. (_getAtomicMutex): New function. (getAtomicMutex): Declare. From-SVN: r270470
Iain Buclaw committed -
The passage quoted talks about an initializer list containing a single expression, but a braced-init-list is not an expression. * pt.c (do_class_deduction): Don't try the single element deduction if the single element is also a braced list. From-SVN: r270468
Jason Merrill committed -
The problem here was that "second parm is size_t" is false for a destroying sized delete. So let's introduce sized_deallocation_fn_p when that's what we're asking, and reserve second_parm_is_size_t for the specific case of warning about possible confusion with placement delete. * call.c (sized_deallocation_fn_p): New. Use it instead of second_parm_is_size_t in most cases. (second_parm_is_size_t): Don't check for aligned. From-SVN: r270467
Jason Merrill committed -
From-SVN: r270466
GCC Administrator committed
-
- 19 Apr, 2019 11 commits
-
-
* include/pstl/algorithm_impl.h (__internal::__brick_equal): use "4 iterator" version of std::equal(). (__internal::__brick_equal): use simd for random access iterators on unsequenced execution policies. (__internal::__pattern_equal): add "4 iterator" version (__internal::__pattern_equal): dispatch to simd __brick_equal for vector-only execution policies. (__internal::__pattern_equal): dispatch to __parallel_or for parallel execution policies. * include/pstl/glue_algorithm_impl.h (std::equal): dispatch to "4 iterator" version of __internal::__pattern_equal(). From-SVN: r270463
Thomas Rodgers committed -
From-SVN: r270462
Jakub Jelinek committed -
If we don't HONOR_NANS we should not try to use any unordered comparison results. Best case those will just be optimized away; realistically, they ICE. For example, the rs6000 backend has some code that specifically checks we never do this. PR tree-optimization/88055 * tree-call-cdce.c (comparison_code_if_no_nans): New function. (gen_one_condition): Use it if !HONOR_NANS. From-SVN: r270460
Segher Boessenkool committed -
/cp 2019-04-19 Paolo Carlini <paolo.carlini@oracle.com> PR c++/89900 * pt.c (fn_type_unification): When handling null explicit arguments do not special case non-parameter packs. /testsuite 2019-04-19 Paolo Carlini <paolo.carlini@oracle.com> PR c++/89900 * g++.dg/cpp0x/pr89900-1.C: New. * g++.dg/cpp0x/pr89900-2.C: Likewise. * g++.dg/cpp0x/pr89900-3.C: Likewise. * g++.dg/cpp0x/pr89900-4.C: Likewise. From-SVN: r270459
Paolo Carlini committed -
This patch is required in order to build golang.org/x/net. The corresponding Go Toolchain patch is CL 170537. Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/172898 From-SVN: r270458
Ian Lance Taylor committed -
PR middle-end/90139 * tree-outof-ssa.c (get_temp_reg): If reg_mode is BLKmode, return assign_temp instead of gen_reg_rtx. * gcc.c-torture/compile/pr90139.c: New test. From-SVN: r270457
Jakub Jelinek committed -
PR c++/90138 * pt.c (process_template_parm): Set decl to pushdecl result. If !is_non_type, also set parm to that. * g++.dg/template/pr90138.C: New test. From-SVN: r270456
Jakub Jelinek committed -
re PR c/89888 (When switch controlling expression is promoted from type narrower than int, GCC does not diagnose identical cases) PR c/89888 * c-common.h (c_add_case_label): Remove orig_type and outside_range_p arguments. (c_do_switch_warnings): Remove outside_range_p argument. * c-common.c (check_case_bounds): Removed. (c_add_case_label): Remove orig_type and outside_range_p arguments. Don't call check_case_bounds. Fold low_value as well as high_value. * c-warn.c (c_do_switch_warnings): Remove outside_range_p argument. Check for case labels outside of range of original type here and adjust them. c/ * c-typeck.c (struct c_switch): Remove outside_range_p member. (c_start_case): Don't clear it. (do_case): Adjust c_add_case_label caller. (c_finish_case): Adjust c_do_switch_warnings caller. cp/ * decl.c (struct cp_switch): Remove outside_range_p member. (push_switch): Don't clear it. (pop_switch): Adjust c_do_switch_warnings caller. (finish_case_label): Adjust c_add_case_label caller. testsuite/ * c-c++-common/pr89888.c: New test. * g++.dg/torture/pr40335.C: Change dg-bogus into dg-warning. Don't expect -Wswitch-unreachable warning. From-SVN: r270455
Jakub Jelinek committed -
2019-04-19 Christophe Lyon <christophe.lyon@linaro.org> PR translation/90118 contrib/ * check-internal-format-escaping.py: Check that %< is not next to a word. gcc/ * config/aarch64/aarch64.c (aarch64_override_options_internal): Add missing space before %<. From-SVN: r270454
Christophe Lyon committed -
PR c++/90108 * c-decl.c (merge_decls): If remove is main variant and DECL_ORIGINAL_TYPE is some other type, remove a DECL_ORIGINAL_TYPE variant that has newdecl as TYPE_NAME if any. * decl.c (duplicate_decls): If remove is main variant and DECL_ORIGINAL_TYPE is some other type, remove a DECL_ORIGINAL_TYPE variant that has newdecl as TYPE_NAME if any. * c-c++-common/pr90108.c: New test. From-SVN: r270453
Jakub Jelinek committed -
From-SVN: r270451
GCC Administrator committed
-
- 18 Apr, 2019 16 commits
-
-
PR rtl-optimization/87871 * ira-lives.c (make_object_dead): Don't add conflicts to TOTAL_CONFLICT_HARD_REGS for register ignore_reg_for_conflicts. From-SVN: r270448
Peter Bergner committed -
gcc/ChangeLog: * tree.h (TYPE_VECTOR_SUBPARTS): Use HOST_WIDE_INT_1U. * config/aarch64/aarch64.c (aarch64_simd_vector_alignment): Avoid assuming type size fits in SHWI. From-SVN: r270447
Martin Sebor committed -
PR ipa/85051 * ipa-inline.c (flatten_function): New parameter UPDATE. (ipa_inline, early_inliner): Use it. From-SVN: r270446
Jan Hubicka committed -
The removed code ended up setting DECL_INITIAL to the INIT_EXPR returned by split_nonconstant_init, which makes no sense. This code was added back in 1996, so any rationale is long lost. * decl.c (cp_finish_decl): Don't set DECL_INITIAL of external vars. From-SVN: r270445
Jason Merrill committed -
From-SVN: r270444
Segher Boessenkool committed -
When testing PR 85164, the baseline bootstrap-ubsan results had a lot of failures from int_const_binop. This is because with the new overflow handling we can sometimes do: poly_res = res; on an uninitialised res. 2019-04-18 Richard Sandiford <richard.sandiford@arm.com> gcc/ * fold-const.c (int_const_binop): Return early on failure. From-SVN: r270443
Richard Sandiford committed -
Two fixes for UB when handling very large offsets. The calculation in force_int_to_mode would have been correct if signed integers used modulo arithmetic, so just switch to unsigned types. The calculation in rtx_addr_can_trap_p_1 didn't handle overflow properly, so switch to known_subrange_p instead (which is supposed to handle all cases). 2019-04-18 Richard Sandiford <richard.sandiford@arm.com> gcc/ PR middle-end/85164 * combine.c (force_int_to_mode): Cast the argument rather than the result of known_alignment. * rtlanal.c (rtx_addr_can_trap_p_1): Use known_subrange_p. gcc/testsuite/ PR middle-end/85164 * gcc.dg/pr85164-1.c, gcc.dg/pr85164-2.c: New tests. From-SVN: r270442
Richard Sandiford committed -
2019-04-18 Richard Biener <rguenther@suse.de> PR debug/90131 * tree-cfgcleanup.c (move_debug_stmts_from_forwarder): Split out from ... (remove_forwarder_block): ... here. (remove_forwarder_block_with_phi): Also move debug stmts here. * gcc.dg/guality/pr90131.c: New testcase. From-SVN: r270441
Richard Biener committed -
From-SVN: r270439
Jakub Jelinek committed -
PR translation/79183 * gimple-ssa-sprintf.c (format_directive): Use inform_n instead of inform where appropriate. From-SVN: r270438
Jakub Jelinek committed -
2019-04-18 Richard Biener <rguenther@suse.de> * tree.c (get_qualified_type): Put found type variants at the head of the variant list. From-SVN: r270437
Richard Biener committed -
2019-04-18 Iain Sandoe <iain@sandoe.co.uk> * MAINTAINERS: Update my email address. From-SVN: r270436
Iain Sandoe committed -
fix PR89864 2019-04-18 Erik Schnetter <schnetter@gmail.com> Jakub Jelinek <jakub@redhat.com> Iain Sandoe <iain@sandoe.co.uk> PR bootstrap/89864 * inclhack.def (darwin_ucred__Atomic): New, work around _Atomic keyword use in headers included by C++. * fixincl.x: Regenerated. Co-Authored-By: Iain Sandoe <iain@sandoe.co.uk> Co-Authored-By: Jakub Jelinek <jakub@redhat.com> From-SVN: r270435
Erik Schnetter committed -
PR go/90110 compiler: use temporary to avoid early destruction The code was passing a substr directly to strtol, and then checking the *end value returned by strtol. But the substr could be destroyed as soon as strtol returns, making the test of *end invalid. Also fix an incorrect test of the string index rather than the value. Fixes https://gcc.gnu.org/PR90110 Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/172663 From-SVN: r270434
Ian Lance Taylor committed -
In order to make alias templates useful for SFINAE we instantiate them under the prevailing 'complain' argument, so an error encountered while instantiating during SFINAE context is silent. The problem in this PR comes when we later look up the erroneous instantiation and don't give an error at that point. Fixed by not adding an erroneous instantiation to the hash table, so we instantiate it again when needed and get the error. This required changes to a number of tests, which previously said "substitution failed:" with no explanation of what the failure was; now we properly explain. * pt.c (tsubst_decl) [TYPE_DECL]: Don't put an erroneous decl in the hash table when we're in SFINAE context. From-SVN: r270433
Jason Merrill committed -
From-SVN: r270430
GCC Administrator committed
-