Re: PING [Patch][Middle-end]Add -fzero-call-used-regs=[skip|used-gpr|all-gpr|used|all]

2020-09-03 Thread Rodriguez Bahena, Victor via Gcc-patches
-Original Message- From: Qing Zhao Date: Thursday, September 3, 2020 at 12:55 PM To: Kees Cook Cc: Segher Boessenkool , Jakub Jelinek , Uros Bizjak , "Rodriguez Bahena, Victor" , GCC Patches Subject: Re: PING [Patch][Middle-end]Add

Re: ubsan: d-demangle.c:214 signed integer overflow

2020-09-03 Thread Alan Modra via Gcc-patches
On Thu, Sep 03, 2020 at 11:02:50PM +0200, Iain Buclaw wrote: > Excerpts from Alan Modra's message of September 3, 2020 3:01 pm: > > Running the libiberty testsuite > > ./test-demangle < libiberty/testsuite/d-demangle-expected > > libiberty/d-demangle.c:214:14: runtime error: signed integer

Re: [PATCH 3/4 v3] ivopts: Consider cost_step on different forms during unrolling

2020-09-03 Thread Segher Boessenkool
On Thu, Sep 03, 2020 at 10:24:21AM +0800, Kewen.Lin wrote: > on 2020/9/2 下午6:25, Segher Boessenkool wrote: > > On Wed, Sep 02, 2020 at 11:16:00AM +0800, Kewen.Lin wrote: > >> on 2020/9/1 上午3:41, Segher Boessenkool wrote: > >>> On Tue, Aug 25, 2020 at 08:46:55PM +0800, Kewen.Lin wrote: > 1)

Re: ubsan: d-demangle.c:214 signed integer overflow

2020-09-03 Thread Iain Buclaw via Gcc-patches
Excerpts from Alan Modra's message of September 3, 2020 3:01 pm: > Running the libiberty testsuite > ./test-demangle < libiberty/testsuite/d-demangle-expected > libiberty/d-demangle.c:214:14: runtime error: signed integer overflow: > 922337203 * 10 cannot be represented in type 'long int' > > On

Re: [RFC] enable flags-unchanging asms, add_overflow/expand/combine woes

2020-09-03 Thread Alexandre Oliva
On Sep 3, 2020, Segher Boessenkool wrote: > On Thu, Sep 03, 2020 at 02:17:04PM -0300, Alexandre Oliva wrote: >> On Sep 3, 2020, Segher Boessenkool wrote: >> > Oh, I meant what was in your patch. From a grep, all of mn10300, nds32, >> > arm, cris, pdp11, rs6000, i386, visium, aarch64 have

Re: [RFC] enable flags-unchanging asms, add_overflow/expand/combine woes

2020-09-03 Thread Alexandre Oliva
On Sep 3, 2020, Segher Boessenkool wrote: > On Thu, Sep 03, 2020 at 02:07:24PM -0300, Alexandre Oliva wrote: >> On Sep 3, 2020, Segher Boessenkool wrote: >> > On Thu, Sep 03, 2020 at 07:03:53AM -0300, Alexandre Oliva wrote: >> >> On Sep 2, 2020, Segher Boessenkool wrote: >> >> >> we might

Re: PING [Patch][Middle-end]Add -fzero-call-used-regs=[skip|used-gpr|all-gpr|used|all]

2020-09-03 Thread Qing Zhao via Gcc-patches
> On Sep 3, 2020, at 12:48 PM, Ramana Radhakrishnan > wrote: > > On Thu, Sep 3, 2020 at 6:13 PM Kees Cook via Gcc-patches > wrote: >> >> On Thu, Sep 03, 2020 at 09:29:54AM -0500, Qing Zhao wrote: >>> On average, all the options starting with “used_…” (i.e, only the >>> registers that are

Re: [RFC] enable flags-unchanging asms, add_overflow/expand/combine woes

2020-09-03 Thread Segher Boessenkool
On Thu, Sep 03, 2020 at 02:17:04PM -0300, Alexandre Oliva wrote: > On Sep 3, 2020, Segher Boessenkool wrote: > > Oh, I meant what was in your patch. From a grep, all of mn10300, nds32, > > arm, cris, pdp11, rs6000, i386, visium, aarch64 have default clobbers. > > Hrm, what you said was the

Re: [PATCH] correct handling of indices into arrays with elements larger than 1 (PR c++/96511)

2020-09-03 Thread Martin Sebor via Gcc-patches
On 9/1/20 1:22 PM, Jason Merrill wrote: On 8/11/20 12:19 PM, Martin Sebor via Gcc-patches wrote: -Wplacement-new handles array indices and pointer offsets the same: by adjusting them by the size of the element.  That's correct for the latter but wrong for the former, causing false positives

*Ping*: [PATCH] PR fortran/96711 - ICE on NINT() Function

2020-09-03 Thread Harald Anlauf
*ping* > Gesendet: Montag, 24. August 2020 um 23:08 Uhr > Von: "Harald Anlauf" > An: "fortran" , "gcc-patches" > Betreff: [PATCH] PR fortran/96711 - ICE on NINT() Function > > When rounding a real to integer(16) an ICE happened due to an unhandled > case in build_round_expr. The attached patch

[PATCH, committed] PR fortran/96890 - Wrong answer with intrinsic IALL

2020-09-03 Thread Harald Anlauf
Committed as obvious after regtesting. The m4 template for the IALL library functions erroneously had a 0 as initial value for the case when the DIM and MASK arguments were present instead of a -1. This was unfortunately not tested in the testsuite before. Fixed and testcase added. Thanks,

Re: [RFC] enable flags-unchanging asms, add_overflow/expand/combine woes

2020-09-03 Thread Segher Boessenkool
On Thu, Sep 03, 2020 at 02:07:24PM -0300, Alexandre Oliva wrote: > On Sep 3, 2020, Segher Boessenkool wrote: > > On Thu, Sep 03, 2020 at 07:03:53AM -0300, Alexandre Oliva wrote: > >> On Sep 2, 2020, Segher Boessenkool wrote: > >> >> we might succeed, but only if we had a pattern > >> >> that

Re: [PATCH] c++: Fix another PCH hash_map issue [PR96901]

2020-09-03 Thread Jason Merrill via Gcc-patches
On 9/3/20 4:20 AM, Jakub Jelinek wrote: Hi! The recent libstdc++ changes caused lots of libstdc++-v3 tests FAILs on i686-linux, all of them in the same spot during constexpr evaluation of a recursive _S_gcd call. The problem is yet another hash_map that used the default hasing of tree keys

Re: [PATCH v3] c++: Fix P0960 in member init list and array [PR92812]

2020-09-03 Thread Jason Merrill via Gcc-patches
On 9/2/20 6:08 PM, Marek Polacek wrote: On Wed, Sep 02, 2020 at 05:06:45PM -0400, Jason Merrill wrote: On 9/2/20 4:37 PM, Marek Polacek wrote: I've added do_aggregate_paren_init to factor some common code. It's not perfect because the enclosing conditions couldn't really be factored out,

Re: [PATCH] c++: Disable -frounding-math during manifestly constant evaluation [PR96862]

2020-09-03 Thread Jason Merrill via Gcc-patches
On 9/2/20 6:43 PM, Marc Glisse wrote: On Wed, 2 Sep 2020, Jason Merrill via Gcc-patches wrote: On 9/1/20 6:13 AM, Marc Glisse wrote: On Tue, 1 Sep 2020, Jakub Jelinek via Gcc-patches wrote: As discussed in the PR, fold-const.c punts on floating point constant evaluation if the result is

Re: [PATCH, rs6000] Fix Vector long long subtype (PR96139)

2020-09-03 Thread Segher Boessenkool
Hi! On Thu, Sep 03, 2020 at 10:37:33AM -0500, will schmidt wrote: > On Wed, 2020-09-02 at 05:13 -0500, Segher Boessenkool wrote: > > On Tue, Sep 01, 2020 at 09:00:20PM -0500, will schmidt wrote: > > > This corrects an issue with the powerpc vector long long > > > subtypes. > > > As reported by

Re: PING [Patch][Middle-end]Add -fzero-call-used-regs=[skip|used-gpr|all-gpr|used|all]

2020-09-03 Thread Ramana Radhakrishnan via Gcc-patches
On Thu, Sep 3, 2020 at 6:13 PM Kees Cook via Gcc-patches wrote: > > On Thu, Sep 03, 2020 at 09:29:54AM -0500, Qing Zhao wrote: > > On average, all the options starting with “used_…” (i.e, only the > > registers that are used in the routine will be zeroed) have very low > > runtime overheads,

Re: PING [Patch][Middle-end]Add -fzero-call-used-regs=[skip|used-gpr|all-gpr|used|all]

2020-09-03 Thread Qing Zhao via Gcc-patches
> On Sep 3, 2020, at 12:13 PM, Kees Cook wrote: > > On Thu, Sep 03, 2020 at 09:29:54AM -0500, Qing Zhao wrote: >> On average, all the options starting with “used_…” (i.e, only the registers >> that are used in the routine will be zeroed) have very low runtime >> overheads, at most 1.72%

Re: [PATCH 1/3] Power10: Add PCREL_OPT load support

2020-09-03 Thread Michael Meissner via Gcc-patches
On Thu, Aug 20, 2020 at 09:09:40PM -0500, Segher Boessenkool wrote: > Hi! > > On Tue, Aug 18, 2020 at 02:34:01AM -0400, Michael Meissner wrote: > > +// Maximum number of insns to scan between the load address and the load > > that > > Please don't mix /* and // comments. Just stick to /*

Re: [RFC] enable flags-unchanging asms, add_overflow/expand/combine woes

2020-09-03 Thread Alexandre Oliva
On Sep 3, 2020, Segher Boessenkool wrote: > On Thu, Sep 03, 2020 at 07:03:53AM -0300, Alexandre Oliva wrote: >> On Sep 2, 2020, Segher Boessenkool wrote: >> > (And aarch, but not the other targets with default clobbers). >> >> And arm. I didn't look very hard for others yet; I wasn't sure

Re: PING [Patch][Middle-end]Add -fzero-call-used-regs=[skip|used-gpr|all-gpr|used|all]

2020-09-03 Thread Kees Cook via Gcc-patches
On Thu, Sep 03, 2020 at 09:29:54AM -0500, Qing Zhao wrote: > On average, all the options starting with “used_…” (i.e, only the registers > that are used in the routine will be zeroed) have very low runtime overheads, > at most 1.72% for integer benchmarks, and 1.17% for FP benchmarks. > If all

Re: [RFC] enable flags-unchanging asms, add_overflow/expand/combine woes

2020-09-03 Thread Alexandre Oliva
[dropping port maintainers for combine-mostly subthread] On Sep 3, 2020, Segher Boessenkool wrote: > On Thu, Sep 03, 2020 at 07:03:53AM -0300, Alexandre Oliva wrote: >> On Sep 2, 2020, Segher Boessenkool wrote: >> >> we might succeed, but only if we had a pattern >> >> that matched

Re: [patch] PR tree-optimization/96818 - cast label range to type of switch operand

2020-09-03 Thread Richard Biener via Gcc-patches
On September 3, 2020 5:39:18 PM GMT+02:00, Andrew MacLeod wrote: >On 9/3/20 3:43 AM, Richard Biener wrote: >> On Thu, Sep 3, 2020 at 9:21 AM Aldy Hernandez >wrote: >>> >>> >>> On 8/31/20 2:55 PM, Richard Biener wrote: On Mon, Aug 31, 2020 at 11:10 AM Aldy Hernandez >wrote: > >

[PATCH] bpf: generate indirect calls for xBPF

2020-09-03 Thread David Faust via Gcc-patches
This patch updates the BPF back end to generate indirect calls via the 'call %reg' instruction when targetting xBPF. Additionally, the BPF ASM_SPEC is updated to pass along -mxbpf to gas, where it is now supported. 2020-09-03 David Faust gcc/ * config/bpf/bpf.h (ASM_SPEC): Pass

Re: PING [Patch][Middle-end]Add -fzero-call-used-regs=[skip|used-gpr|all-gpr|used|all]

2020-09-03 Thread Qing Zhao via Gcc-patches
Looks like that the PDF attachments do not work with this alias either. H.J. LU helped me to upload the performance data and code size data to the following wiki page: https://gitlab.com/x86-gcc/gcc/-/wikis/Zero-call-used-registers-data Please refer to this link for the data. thanks. Qing >

Re: [RFC] enable flags-unchanging asms, add_overflow/expand/combine woes

2020-09-03 Thread Segher Boessenkool
On Thu, Sep 03, 2020 at 07:03:53AM -0300, Alexandre Oliva wrote: > On Sep 2, 2020, Segher Boessenkool wrote: > > (And aarch, but not the other targets with default clobbers). > > And arm. I didn't look very hard for others yet; I wasn't sure it would > be worth pursuing any further. Oh, I

Re: [patch] PR tree-optimization/96818 - cast label range to type of switch operand

2020-09-03 Thread Andrew MacLeod via Gcc-patches
On 9/3/20 3:43 AM, Richard Biener wrote: On Thu, Sep 3, 2020 at 9:21 AM Aldy Hernandez wrote: On 8/31/20 2:55 PM, Richard Biener wrote: On Mon, Aug 31, 2020 at 11:10 AM Aldy Hernandez wrote: On 8/31/20 10:33 AM, Richard Biener wrote: On Mon, Aug 31, 2020 at 10:20 AM Aldy Hernandez

[committed] libstdc++: Add workaround for weird std::tuple error [PR 96592]

2020-09-03 Thread Jonathan Wakely via Gcc-patches
This "fix" makes no sense, but it avoids an error from G++ about std::is_constructible being incomplete. The real problem is elsewhere, but this "fixes" the regression for now. libstdc++-v3/ChangeLog: PR libstdc++/96592 * include/std/tuple (_TupleConstraints): Use

Re: [PATCH, rs6000] Fix Vector long long subtype (PR96139)

2020-09-03 Thread will schmidt via Gcc-patches
On Wed, 2020-09-02 at 05:13 -0500, Segher Boessenkool wrote: > Hi Will, > > On Tue, Sep 01, 2020 at 09:00:20PM -0500, will schmidt wrote: > > This corrects an issue with the powerpc vector long long > > subtypes. > > As reported by SjMunroe in PR96139. When building some code with > > -Wall >

Re: [PATCH] dwarf: Multi-register CFI address support

2020-09-03 Thread Andrew Stubbs
On 28/08/2020 13:04, Andrew Stubbs wrote: Hi all, This patch introduces DWARF CFI support for architectures that require multiple registers to hold pointers, such as the stack pointer, frame pointer, and return address. The motivating case is the AMD GCN architecture which has 64-bit address

Re: [PATCH] Enable GCC support for AMX

2020-09-03 Thread H.J. Lu via Gcc-patches
On Thu, Sep 3, 2020 at 8:08 AM Kirill Yukhin via Gcc-patches wrote: > > Hello, > > On 06 июл 09:58, Hongyu Wang via Gcc-patches wrote: > > Hi: > > > > This patch is about to support Intel Advanced Matrix Extensions (AMX) > > which will be enabled in GLC. > > > > AMX is a new 64-bit programming

Re: PING [Patch][Middle-end]Add -fzero-call-used-regs=[skip|used-gpr|all-gpr|used|all]

2020-09-03 Thread Qing Zhao via Gcc-patches
Hi, Looks like both attached .csv files were deleted during the email delivery procedure. Not sure what’s the reason for this. Then I have to copy the text file here for you reference: benchmarks: C 500.perlbench_r C 502.gcc_r C 505.mcf_r C++

Re: [PATCH] Enable GCC support for AMX

2020-09-03 Thread Kirill Yukhin via Gcc-patches
Hello, On 06 июл 09:58, Hongyu Wang via Gcc-patches wrote: > Hi: > > This patch is about to support Intel Advanced Matrix Extensions (AMX) > which will be enabled in GLC. > > AMX is a new 64-bit programming paradigm consisting of two > compo nents: a set of 2-dimensional registers (tiles)

Re: [PATCH] c++: Disable -frounding-math during manifestly constant evaluation [PR96862]

2020-09-03 Thread Jakub Jelinek via Gcc-patches
On Wed, Sep 02, 2020 at 04:55:14PM -0400, Jason Merrill via Gcc-patches wrote: > C++ says that division by zero has undefined behavior, and that an > expression with undefined behavior is not constant, so we shouldn't fold > 1./0 to inf anyway. The same is true of other trapping operations. So >

[PATCH] --enable-link-serialization support

2020-09-03 Thread Jakub Jelinek via Gcc-patches
On Thu, Sep 03, 2020 at 03:53:35PM +0200, Richard Biener wrote: > On Thu, 3 Sep 2020, Jakub Jelinek wrote: > But is that an issue in practice? I usually do not do make -j32 cc1plus > in a tree that was configured for bootstrap, nor do I use > --enable-link-serialization in that case. Guess most

Re: PING [Patch][Middle-end]Add -fzero-call-used-regs=[skip|used-gpr|all-gpr|used|all]

2020-09-03 Thread Qing Zhao via Gcc-patches
Hi, Per request, I collected runtime performance data and code size data with CPU2017 on a X86 platform. *** Machine info: model name>-: Intel(R) Xeon(R) CPU E5-2699 v4 @ 2.20GHz $ lscpu | grep NUMA NUMA node(s): 2 NUMA node0 CPU(s): 0-21,44-65 NUMA node1 CPU(s):

Re: RFC: --enable-link-serialization support

2020-09-03 Thread Richard Biener
On Thu, 3 Sep 2020, Jakub Jelinek wrote: > Hi! > > As discussed earlier on IRC, --enable-link-mutex has a big problem that it > decreases number of available jobs by the number of link commands waiting > for the lock, so e.g. when doing make -j32 build with 11 different > big programs linked

RFC: --enable-link-serialization support

2020-09-03 Thread Jakub Jelinek via Gcc-patches
Hi! As discussed earlier on IRC, --enable-link-mutex has a big problem that it decreases number of available jobs by the number of link commands waiting for the lock, so e.g. when doing make -j32 build with 11 different big programs linked with $(LLINKER) we end up with just 22 effective jobs,

ubsan: d-demangle.c:214 signed integer overflow

2020-09-03 Thread Alan Modra via Gcc-patches
Running the libiberty testsuite ./test-demangle < libiberty/testsuite/d-demangle-expected libiberty/d-demangle.c:214:14: runtime error: signed integer overflow: 922337203 * 10 cannot be represented in type 'long int' On looking at silencing ubsan, I found a real bug in dlang_number. For a 32-bit

[committed] libstdc++: Optimise GCD algorithms

2020-09-03 Thread Jonathan Wakely via Gcc-patches
The current std::gcd and std::chrono::duration::_S_gcd algorithms are both recursive. This is potentially expensive to evaluate in constant expressions, because each level of recursion makes a new copy of the function to evaluate. The maximum number of steps is bounded (proportional to the number

Re: [PATCH] test/rs6000: Replace test target p8 and p9+

2020-09-03 Thread Segher Boessenkool
Hi! On Tue, Sep 01, 2020 at 11:19:55AM +0800, Kewen.Lin wrote: > This is a trivial patch to clean existing rs6000 test targets > p8 and p9+ with existing has_arch_pwr8 and has_arch_pwr9 > target combination or only one of them. Not sure if it's a > good idea to tidy this, but send out for

[PATCH] Improve constant folding of vector lowering with vector bools

2020-09-03 Thread Richard Biener
This improves the situation somewhat when vector lowering tries to access vector bools as seen in PR96814. We still fail to fold VIEW_CONVERT { 0, -1, -1, ... } for vector bools with integer mode. Bootstrapped and tested on x86_64-unknown-linux-gnu, pushed. 2020-09-03 Richard Biener

Re: [PATCH] lto: Cache location_ts including BLOCKs in GIMPLE streaming [PR94311]

2020-09-03 Thread Richard Biener
On Thu, 3 Sep 2020, Jakub Jelinek wrote: > On Thu, Sep 03, 2020 at 12:07:36PM +0200, Richard Biener wrote: > > LGTM. > > Thanks. > > > Can we now remove stream_input_location_now? > > There are a few remaining users, one is: > case LTO_ert_must_not_throw: > { > r->type

Re: [PATCH] rs6000: Expand vec_insert in expander instead of gimple [PR79251]

2020-09-03 Thread Richard Biener via Gcc-patches
On Thu, Sep 3, 2020 at 11:20 AM luoxhu wrote: > > > > On 2020/9/2 17:30, Richard Biener wrote: > >> so maybe bypass convert_vector_to_array_for_subscript for special > >> circumstance > >> like "i = v[n%4]" or "v[n&3]=i" to generate vec_extract or vec_insert > >> builtin > >> call a relative

Re: [PATCH] lto: Cache location_ts including BLOCKs in GIMPLE streaming [PR94311]

2020-09-03 Thread Jakub Jelinek via Gcc-patches
On Thu, Sep 03, 2020 at 12:07:36PM +0200, Richard Biener wrote: > LGTM. Thanks. > Can we now remove stream_input_location_now? There are a few remaining users, one is: case LTO_ert_must_not_throw: { r->type = ERT_MUST_NOT_THROW; r->u.must_not_throw.failure_decl

Re: [PATCH] lto: Cache location_ts including BLOCKs in GIMPLE streaming [PR94311]

2020-09-03 Thread Richard Biener
On Thu, 3 Sep 2020, Jakub Jelinek wrote: > Hi! > > As mentioned in the PR, when compiling valgrind even on fairly small > testcase where in one larger function the location keeps oscillating > between a small line number and 8000-ish line number in the same file > we very quickly run out of all

Re: [RFC] enable flags-unchanging asms, add_overflow/expand/combine woes

2020-09-03 Thread Alexandre Oliva
On Sep 2, 2020, Segher Boessenkool wrote: > Hi! > On Tue, Sep 01, 2020 at 07:22:57PM -0300, Alexandre Oliva wrote: >> It's ugly, I know. > Yeah, it's bloody disgusting :-) :-) > (And aarch, but not the other targets with default clobbers). And arm. I didn't look very hard for others yet; I

[PATCH] Optimize comparison between result of us_minus and 0.

2020-09-03 Thread Hongtao Liu via Gcc-patches
Hi: Add define_peephole2 to perform optimization like bellow: +/* Optimize for TARGET_AVX512F + vpsubusw op1, op2, dst1; + vxorps xmm, xmm, dst2; > vpcmpleuw op1, op2, dst3 + vpcmpeqw dst1, dst2, dst3 */ and +/* Optimize for target above TARGET_SSE4_1 + vpsubusw op1, op2, dst1;

Re: [PATCH 2/2 V3] Simplify plusminus-mult-with-convert expr in forwprop (PR 94234)

2020-09-03 Thread Feng Xue OS via Gcc-patches
Attach patch file. Feng From: Gcc-patches on behalf of Feng Xue OS via Gcc-patches Sent: Thursday, September 3, 2020 5:27 PM To: Richard Biener; gcc-patches@gcc.gnu.org Subject: [PATCH 2/2 V3] Simplify plusminus-mult-with-convert expr in forwprop (PR

[PATCH 2/2 V3] Simplify plusminus-mult-with-convert expr in forwprop (PR 94234)

2020-09-03 Thread Feng Xue OS via Gcc-patches
This patch is to handle simplification of plusminus-mult-with-convert expression as ((T) X) +- ((T) Y), in which at least one of (X, Y) is result of multiplication. This is done in forwprop pass. We try to transform it to (T) (X +- Y), and resort to gimple-matcher to fold (X +- Y) instead of

Re: [PATCH] rs6000: Expand vec_insert in expander instead of gimple [PR79251]

2020-09-03 Thread luoxhu via Gcc-patches
On 2020/9/2 17:30, Richard Biener wrote: >> so maybe bypass convert_vector_to_array_for_subscript for special >> circumstance >> like "i = v[n%4]" or "v[n&3]=i" to generate vec_extract or vec_insert builtin >> call a relative simpler method? > I think you have it backward. You need to work

[PATCH] arm: Improve immediate generation for thumb-1 with -mpurecode [PR96769]

2020-09-03 Thread Christophe Lyon via Gcc-patches
This patch moves the move-immediate splitter after the regular ones so that it has lower precedence, and updates its constraints. For int f3 (void) { return 0x1100; } int f3_2 (void) { return 0x12345678; } we now generate: * with -O2 -mcpu=cortex-m0 -mpure-code: f3: movsr0, #136

[PATCH] c++: Fix another PCH hash_map issue [PR96901]

2020-09-03 Thread Jakub Jelinek via Gcc-patches
Hi! The recent libstdc++ changes caused lots of libstdc++-v3 tests FAILs on i686-linux, all of them in the same spot during constexpr evaluation of a recursive _S_gcd call. The problem is yet another hash_map that used the default hasing of tree keys through pointer hashing which is preserved

[Ada] Look at fullest view when checking for static types in unnesting

2020-09-03 Thread Arnaud Charlet
When seeing if any bound involved in a type is an uplevel reference, we must look at the fullest view of a type, since that's what the backends will do. Similarly for private types. We introduce Get_Fullest_View for that purpose. Tested on x86_64-pc-linux-gnu, committed on master

[PATCH] lto: Cache location_ts including BLOCKs in GIMPLE streaming [PR94311]

2020-09-03 Thread Jakub Jelinek via Gcc-patches
Hi! As mentioned in the PR, when compiling valgrind even on fairly small testcase where in one larger function the location keeps oscillating between a small line number and 8000-ish line number in the same file we very quickly run out of all possible location_t numbers and because of that emit

[committed] d: Move all runnable tests in gdc.dg to gdc.dg/torture

2020-09-03 Thread Iain Buclaw via Gcc-patches
Hi, This patch creates a new test subdirectory gdc.dg/torture, moving all runnable tests into it. Tests that are not executed do not need to be compiled as torture tests, they are only present for testing for a certain bug or ICE. Tested on x86_64-linux-gnu, and committed to mainline. Regards

[committed] d: Only test with default permutation flags for runnable tests.

2020-09-03 Thread Iain Buclaw via Gcc-patches
Hi, This patch alters the way the D2 testsuite is ran. - All compilable tests now default to being compiled, rather than assembled. A new directive has been added "LINK" to set the test action to link. - Unless the test explicitly requests, all compilable tests as well as

Re: [patch] PR tree-optimization/96818 - cast label range to type of switch operand

2020-09-03 Thread Richard Biener via Gcc-patches
On Thu, Sep 3, 2020 at 9:21 AM Aldy Hernandez wrote: > > > > On 8/31/20 2:55 PM, Richard Biener wrote: > > On Mon, Aug 31, 2020 at 11:10 AM Aldy Hernandez wrote: > >> > >> > >> > >> On 8/31/20 10:33 AM, Richard Biener wrote: > >>> On Mon, Aug 31, 2020 at 10:20 AM Aldy Hernandez wrote: > >

Re: [PATCH] [AVX512] [PR87767] Optimize memory broadcast for constant vector under AVX512

2020-09-03 Thread Jakub Jelinek via Gcc-patches
On Thu, Sep 03, 2020 at 10:11:14AM +0800, Hongtao Liu wrote: > Thanks for the review, update patch. Ok for trunk, thanks. > From acf3825279190ca0540bb4704f66568fdbe06ce8 Mon Sep 17 00:00:00 2001 > From: liuhongt > Date: Wed, 8 Jul 2020 17:14:36 +0800 > Subject: [PATCH] Optimize memory broadcast

Re: [patch] PR tree-optimization/96818 - cast label range to type of switch operand

2020-09-03 Thread Aldy Hernandez via Gcc-patches
On 8/31/20 2:55 PM, Richard Biener wrote: On Mon, Aug 31, 2020 at 11:10 AM Aldy Hernandez wrote: On 8/31/20 10:33 AM, Richard Biener wrote: On Mon, Aug 31, 2020 at 10:20 AM Aldy Hernandez wrote: As discussed in the PR, the type of a switch operand may be different than the type of

[PATCH] IBM Z: Fix *vec_tf_to_v1tf constraints

2020-09-03 Thread Ilya Leoshkevich via Gcc-patches
Bootstrapped (with BOOT_CFLAGS='-g -O2 -Wno-error=maybe-uninitialized') and regtested on s390x-redhat-linux. Ok for master? Certain alternatives of *vec_tf_to_v1tf use "v" constraint for its TFmode source operand. Therefore it is assigned to VEC_REGS class, and when it is reloaded using

[PATCH 1/2] Fold plusminus_mult expr with multi-use operands (PR 94234)

2020-09-03 Thread Feng Xue OS via Gcc-patches
For pattern A * C +- B * C -> (A +- B) * C, simplification is disabled when A and B are not single-use. This patch is a minor enhancement on the pattern, which allows folding if final result is found to be a simple gimple value (constant/existing SSA). Bootstrapped/regtested on x86_64-linux and