Re: [PATCH AArch64]Fix test failure for pr84682-2.c

2018-05-16 Thread Kyrill Tkachov
Hi Bin, On 22/03/18 11:07, Bin.Cheng wrote: On Sat, Mar 17, 2018 at 8:54 AM, Richard Sandiford wrote: > Kyrill Tkachov writes: >> Hi Bin, >> >> On 16/03/18 11:42, Bin Cheng wrote: >>> Hi, >>> This simple patch fixes test case

Support fused multiply-adds in fully-masked reductions

2018-05-16 Thread Richard Sandiford
This patch adds support for fusing a conditional add or subtract with a multiplication, so that we can use fused multiply-add and multiply-subtract operations for fully-masked reductions. E.g. for SVE we vectorise: double res = 0.0; for (int i = 0; i < n; ++i) res += x[i] * y[i]; using

Re: RFA (tree.c): PATCH to make warn_deprecated_use return bool

2018-05-16 Thread Richard Biener
On Wed, May 16, 2018 at 3:01 AM Jason Merrill wrote: > The function "warning" returns bool to indicated whether or not any > diagnostic was actually emitted; warn_deprecated_use should as well. > It's also unnecessary to duplicate the warning code between the cases > of null

Re: RFA (ipa-prop): PATCHes to avoid use of deprecated copy ctor and op=

2018-05-16 Thread Richard Biener
On Wed, May 16, 2018 at 2:58 AM Jason Merrill wrote: > In C++11 and up, the implicitly-declared copy constructor and > assignment operator are deprecated if one of them, or the destructor, > is user-provided. Implementing that in G++ turned up a few dodgy uses > in the

Re: [patch AArch64] Do not perform a vector splat for vector initialisation if it is not useful

2018-05-16 Thread Kyrill Tkachov
On 16/05/18 10:42, Richard Biener wrote: On Wed, May 16, 2018 at 10:37 AM Kyrill Tkachov wrote: On 15/05/18 10:58, Richard Biener wrote: On Tue, May 15, 2018 at 10:20 AM Kyrill Tkachov wrote: Hi all, This is a respin of James's

Use conditional internal functions in if-conversion

2018-05-16 Thread Richard Sandiford
This patch uses IFN_COND_* to vectorise conditionally-executed, potentially-trapping arithmetic, such as most floating-point ops with -ftrapping-math. E.g.: if (cond) { ... x = a + b; ... } becomes: ... x = IFN_COND_ADD (cond, a, b); ... When this transformation is done on its

Implement SLP of internal functions

2018-05-16 Thread Richard Sandiford
SLP of calls was previously restricted to built-in functions. This patch extends it to internal functions. Tested on aarch64-linux-gnu (with and without SVE), aarch64_be-elf and x86_64-linux-gnu. OK to install? Richard 2018-05-16 Richard Sandiford gcc/

Re: [PATCH 1/2] Introduce prefetch-minimum stride option

2018-05-16 Thread Kyrill Tkachov
On 15/05/18 12:12, Luis Machado wrote: Hi, On 05/15/2018 06:37 AM, Kyrill Tkachov wrote: Hi Luis, On 14/05/18 22:18, Luis Machado wrote: Hi, Here's an updated version of the patch (now reverted) that addresses the previous bootstrap problem (signedness and long long/int conversion). I've

Re: [patch AArch64] Do not perform a vector splat for vector initialisation if it is not useful

2018-05-16 Thread Richard Biener
On Wed, May 16, 2018 at 10:37 AM Kyrill Tkachov wrote: > On 15/05/18 10:58, Richard Biener wrote: > > On Tue, May 15, 2018 at 10:20 AM Kyrill Tkachov > > > > wrote: > > > >> Hi all, > >> This is a respin of James's patch from: > >

Re: [PR63185][RFC] Improve DSE with branches

2018-05-16 Thread Richard Biener
On Tue, 15 May 2018, Richard Biener wrote: > On Tue, 15 May 2018, Richard Biener wrote: > > > On Tue, 15 May 2018, Richard Biener wrote: > > > > > On Tue, 15 May 2018, Richard Biener wrote: > > > > > > > On Tue, 15 May 2018, Richard Biener wrote: > > > > > > > > > On Mon, 14 May 2018, Kugan

Re: [patch AArch64] Do not perform a vector splat for vector initialisation if it is not useful

2018-05-16 Thread Kyrill Tkachov
On 15/05/18 10:58, Richard Biener wrote: On Tue, May 15, 2018 at 10:20 AM Kyrill Tkachov wrote: Hi all, This is a respin of James's patch from: https://gcc.gnu.org/ml/gcc-patches/2017-12/msg00614.html The original patch was approved and committed but was later

[PATCH] Support lower and upper limit for -fdbg-cnt flag.

2018-05-16 Thread Martin Liška
Hi. I consider it handy sometimes to trigger just a single invocation of an optimization driven by a debug counter. Doing that one needs to be able to limit both lower and upper limit of a counter. It's implemented in the patch. Patch can bootstrap on x86_64-linux-gnu and survives regression

Re: [PATCH ARM] Fix armv8-m multilib build failure with stdint.h

2018-05-16 Thread Jérôme Lambourg
Hello Kyrill, > Thanks for the patch! To validate it your changes you can also look at the > disassembly > of the cmse.c binary in the build tree. If the binary changes with your patch > then that > would indicate some trouble. Good idea. So I just did that and the assembly of both objects are

Re: [PATCH][AArch64] Set SLOW_BYTE_ACCESS

2018-05-16 Thread Richard Earnshaw (lists)
On 15/05/18 17:58, Wilco Dijkstra wrote: > Hi, > >> Which doesn't appear to have been approved.  Did you follow up with Jeff? > > I'll get back to that one at some point - it'll take some time to agree on a > way > forward with the callback. > > Wilco > > So it seems to me that this

Re: [PR63185][RFC] Improve DSE with branches

2018-05-16 Thread Richard Biener
On Wed, 16 May 2018, Richard Biener wrote: > On Tue, 15 May 2018, Richard Biener wrote: > > > On Tue, 15 May 2018, Richard Biener wrote: > > > > > On Tue, 15 May 2018, Richard Biener wrote: > > > > > > > On Tue, 15 May 2018, Richard Biener wrote: > > > > > > > > > On Tue, 15 May 2018, Richard

Re: [PATCH] Support lower and upper limit for -fdbg-cnt flag.

2018-05-16 Thread Martin Liška
On 05/16/2018 03:39 PM, Alexander Monakov wrote: > On Wed, 16 May 2018, Martin Liška wrote: >>> Hm, is the off-by-one in the new explanatory text really intended? I think >>> the previous text was accurate, and the new text should say "9th and 10th" >>> and then "first 10 invocations", unless I'm

[PATCH PR85793]Fix ICE by loading vector(1) scalara_type for 1 element-wise case

2018-05-16 Thread Bin Cheng
Hi, This patch fixes ICE by loading vector(1) scalar_type if it's 1 element-wise for VMAT_ELEMENTWISE. Bootstrap and test on x86_64 and AArch64 ongoing. Is it OK? Thanks, bin 2018-05-16 Bin Cheng Richard Biener PR

C++ PATCH for c++/85363, wrong-code with throwing list-initializer

2018-05-16 Thread Marek Polacek
This PR has been on my mind for quite some time but I've not found a solution that I'd like. Maybe one of you can think of something better. The problem in this test is that in C++11, .eh optimizes out the catch, so the exception is never caught. That is because lower_catch doesn't think that

Re: C++ PATCH for c++/85363, wrong-code with throwing list-initializer

2018-05-16 Thread Jason Merrill
On Wed, May 16, 2018 at 11:15 AM, Marek Polacek wrote: > This PR has been on my mind for quite some time but I've not found a solution > that I'd like. Maybe one of you can think of something better. > > The problem in this test is that in C++11, .eh optimizes out the catch,

Re: [PATCH] Support lower and upper limit for -fdbg-cnt flag.

2018-05-16 Thread Alexander Monakov
On Wed, 16 May 2018, Martin Liška wrote: > > Hm, is the off-by-one in the new explanatory text really intended? I think > > the previous text was accurate, and the new text should say "9th and 10th" > > and then "first 10 invocations", unless I'm missing something? > > I've reconsidered that once

Re: [patch AArch64] Do not perform a vector splat for vector initialisation if it is not useful

2018-05-16 Thread Segher Boessenkool
On Wed, May 16, 2018 at 11:10:55AM +0100, Kyrill Tkachov wrote: > On 16/05/18 10:42, Richard Biener wrote: > >Segher, do you know where canonicalization rules are documented? > >IIRC we do not actively try to canonicalize in most cases. > > The documentation we have for RTL canonicalisation is

[PATCH, rs6000] Fixes for builtin_prefetch for AIX compatability.

2018-05-16 Thread Carl Love
GCC Maintainers: The previous patch to map dcbtstt, dcbtt to n2=0 for __builtin_prefetch builtin caused issues on AIX. The issue is AIX does not support the dcbtstt and dcbtt extended mnemonics. Unfortunately, the AIX assembler also does not support the three operand form of dcbt and dcbtst on

[patch][i386] Goldmont Plus -march/-mtune options

2018-05-16 Thread Makhotina, Olga
Hi, This patch implements Goldmont Plus -march/-mtune. 2018-05-16 Olga Makhotina gcc/ * config.gcc: Support "goldmont-plus". * config/i386/driver-i386.c (host_detect_local_cpu): Detect "goldmont-plus". * config/i386/i386-c.c

Re: [PATCH][AArch64] Set SLOW_BYTE_ACCESS

2018-05-16 Thread Wilco Dijkstra
Richard Earnshaw wrote: >>> Which doesn't appear to have been approved.  Did you follow up with Jeff? >> >> I'll get back to that one at some point - it'll take some time to agree on a >> way >> forward with the callback. >> >> Wilco >> >> > > So it seems to me that this should then be

Re: [patch AArch64] Do not perform a vector splat for vector initialisation if it is not useful

2018-05-16 Thread Segher Boessenkool
On Wed, May 16, 2018 at 11:42:39AM +0200, Richard Biener wrote: > Works for me. Were you able to actually create such RTL from testcases? > Segher, do you know where canonicalization rules are documented? > IIRC we do not actively try to canonicalize in most cases. md.texi, node "Insn

Re: [PATCH][AArch64] Set SLOW_BYTE_ACCESS

2018-05-16 Thread Richard Earnshaw (lists)
On 16/05/18 14:56, Wilco Dijkstra wrote: > Richard Earnshaw wrote: > Which doesn't appear to have been approved.  Did you follow up with Jeff? >>> >>> I'll get back to that one at some point - it'll take some time to agree on >>> a way >>> forward with the callback. >>> >>> Wilco >>>

Re: [PATCH] Support lower and upper limit for -fdbg-cnt flag.

2018-05-16 Thread Martin Liška
On 05/16/2018 09:47 AM, Alexander Monakov wrote: > On Wed, 16 May 2018, Martin Liška wrote: > >> Hi. >> >> I consider it handy sometimes to trigger just a single invocation of >> an optimization driven by a debug counter. Doing that one needs to >> be able to limit both lower and upper limit of a

Re: RFA (ipa-prop): PATCHes to avoid use of deprecated copy ctor and op=

2018-05-16 Thread Martin Jambor
Hi, On Tue, May 15 2018, Jason Merrill wrote: > In C++11 and up, the implicitly-declared copy constructor and > assignment operator are deprecated if one of them, or the destructor, > is user-provided. Implementing that in G++ turned up a few dodgy uses > in the compiler. > > In general it's

Re: [PATCH] Support lower and upper limit for -fdbg-cnt flag.

2018-05-16 Thread Martin Liška
On 05/16/2018 02:56 PM, Alexander Monakov wrote: > On Wed, 16 May 2018, Martin Liška wrote: >>> I recall Jakub recently applied a tree-wide change of A < B && B < C to read >>> B > A && B < C. >> >> Can you please point to a revision where it was done? > > It is SVN r255831, mailing list thread

Re: Display priority in "Serious" bugs for gcc 8 from web page

2018-05-16 Thread Richard Sandiford
Thomas Koenig writes: > Hello world, > > whenever I look at the list of serious bugs, I find myself chaning the > columns to add the priority field. > > What do you think about adding the priority field when clicking on that > link? A patch is attached. I don't think

[PATCH] Enhance [VEC_]COND_EXPR verification

2018-05-16 Thread Richard Biener
PR85794 shows we do not verify those. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Richard. 2018-05-16 Richard Biener * tree-cfg.c (verify_gimple_assign_ternary): Properly verify the [VEC_]COND_EXPR embedded comparison. Index:

Re: [PATCH 2/2] df-scan: remove ad-hoc handling of global regs in asms

2018-05-16 Thread Alexander Monakov
On Mon, 23 Apr 2018, Alexander Monakov wrote: > As discussed in the cover letter, the code removed in this patch is > unnecessary, > references to global reg vars from inline asms do not work reliably, and so we > should simply require that inline asms use constraints to make such references >

[PATCH] When using -fprofile-generate=/some/path mangle absolute path of file (PR lto/85759).

2018-05-16 Thread Martin Liška
On 12/21/2017 10:13 AM, Martin Liška wrote: > On 12/20/2017 06:45 PM, Jakub Jelinek wrote: >> Another thing is that the "/" in there is wrong, so >> const char dir_separator_str[] = { DIR_SEPARATOR, '\0' }; >> char *b = concat (profile_data_prefix, dir_separator_str, pwd, NULL); >> needs to be

Re: RFA (ipa-prop): PATCHes to avoid use of deprecated copy ctor and op=

2018-05-16 Thread Andreas Schwab
t; * mangle.c (struct releasing_vec): Declare copy constructor. I'm getting an ICE on ia64 during the stage1 build of libstdc++ (perhaps related that this uses gcc 4.8 as the bootstrap compiler): /usr/local/gcc/gcc-20180516/Build/./gcc/xgcc -shared-libgcc -B/usr/local/gcc/gcc-2018051

Re: [PATCH 1/2] Introduce prefetch-minimum stride option

2018-05-16 Thread Luis Machado
On 05/16/2018 06:08 AM, Kyrill Tkachov wrote: On 15/05/18 12:12, Luis Machado wrote: Hi, On 05/15/2018 06:37 AM, Kyrill Tkachov wrote: Hi Luis, On 14/05/18 22:18, Luis Machado wrote: Hi, Here's an updated version of the patch (now reverted) that addresses the previous bootstrap problem

Re: [PATCH] Support lower and upper limit for -fdbg-cnt flag.

2018-05-16 Thread Alexander Monakov
On Wed, 16 May 2018, Martin Liška wrote: > > I recall Jakub recently applied a tree-wide change of A < B && B < C to read > > B > A && B < C. > > Can you please point to a revision where it was done? It is SVN r255831, mailing list thread here ("Replace Yoda conditions"):

Re: RFA (ipa-prop): PATCHes to avoid use of deprecated copy ctor and op=

2018-05-16 Thread Jason Merrill
On Wed, May 16, 2018 at 6:35 AM, Martin Jambor wrote: > On Tue, May 15 2018, Jason Merrill wrote: >> In C++11 and up, the implicitly-declared copy constructor and >> assignment operator are deprecated if one of them, or the destructor, >> is user-provided. Implementing that in

Re: RFA (ipa-prop): PATCHes to avoid use of deprecated copy ctor and op=

2018-05-16 Thread Martin Jambor
Hi, On Wed, May 16 2018, Jason Merrill wrote: > On Wed, May 16, 2018 at 6:35 AM, Martin Jambor wrote: >> On Tue, May 15 2018, Jason Merrill wrote: >>> In C++11 and up, the implicitly-declared copy constructor and >>> assignment operator are deprecated if one of them, or the

Re: C++ PATCH for c++/85363, wrong-code with throwing list-initializer

2018-05-16 Thread Jason Merrill
On Wed, May 16, 2018 at 1:37 PM, Marek Polacek wrote: > On Wed, May 16, 2018 at 11:35:56AM -0400, Jason Merrill wrote: >> On Wed, May 16, 2018 at 11:15 AM, Marek Polacek wrote: >> > This PR has been on my mind for quite some time but I've not found a >> >

Re: [PATCH 1/2, expr.c] Optimize switch with sign-extended index.

2018-05-16 Thread Jim Wilson
On Wed, May 9, 2018 at 2:20 PM, Jim Wilson wrote: > On Wed, May 2, 2018 at 3:05 PM, Jim Wilson wrote: >> This improves the code for a switch statement on targets that sign-extend >> function arguments, such as RISC-V. Given a simple testcase >> ... >>

Re: [PATCH] DWARF: Emit DWARF5 forms for indirect addresses and string offsets.

2018-05-16 Thread Jason Merrill
OK. On Mon, May 14, 2018 at 9:42 AM, Mark Wielaard wrote: > On Mon, 2018-04-30 at 14:35 +0200, Mark Wielaard wrote: >> We already emit DWARF5 attributes and tables for indirect addresses >> and string offsets, but still use GNU forms. Add a new helper function >> dwarf_FORM ()

Re: C++ PATCH for c++/85363, wrong-code with throwing list-initializer

2018-05-16 Thread Marek Polacek
On Wed, May 16, 2018 at 01:53:50PM -0400, Jason Merrill wrote: > You should be able to avoid duplication here by using cp_get_callee > rather than *_FN. Even better, thanks! Bootstrapped/regtested on x86_64-linux, ok for trunk? 2018-05-16 Marek Polacek PR

Re: [PATCH, rs6000] Fixes for builtin_prefetch for AIX compatability.

2018-05-16 Thread Segher Boessenkool
Hi Carl, On Wed, May 16, 2018 at 08:53:24AM -0700, Carl Love wrote: > The previous patch to map dcbtstt, dcbtt to n2=0 for __builtin_prefetch > builtin caused issues on AIX. The issue is AIX does not support > the dcbtstt and dcbtt extended mnemonics. Unfortunately, the AIX > assembler also

Re: [PATCH] DWARF: Add header for .debug_str_offsets table for dwarf_version 5.

2018-05-16 Thread Jason Merrill
On Mon, Apr 30, 2018 at 8:34 AM, Mark Wielaard wrote: > DWARF5 defines a small header for .debug_str_offsets. Since we only use > it for split dwarf .dwo files we don't need to keep track of the actual > index offset in an attribute. > > gcc/ChangeLog: > > * dwarf2out.c

Re: C++ PATCH for c++/85363, wrong-code with throwing list-initializer

2018-05-16 Thread Marek Polacek
On Wed, May 16, 2018 at 11:35:56AM -0400, Jason Merrill wrote: > On Wed, May 16, 2018 at 11:15 AM, Marek Polacek wrote: > > This PR has been on my mind for quite some time but I've not found a > > solution > > that I'd like. Maybe one of you can think of something better. >

[PATCH] RISC-V: Minor pattern name cleanup.

2018-05-16 Thread Jim Wilson
This just fixes a minor nit with an earlier patch. I added some new patterns that are never directly called, and forgot to put the asterisk in the name. Tested with riscv{32,64}-{elf,linux} builds to verify that the compiler still builds OK. Committed. Jim gcc/ *

Re: [PATCH] Support lower and upper limit for -fdbg-cnt flag.

2018-05-16 Thread Alexander Monakov
On Wed, 16 May 2018, Martin Liška wrote: > Hi. > > I consider it handy sometimes to trigger just a single invocation of > an optimization driven by a debug counter. Doing that one needs to > be able to limit both lower and upper limit of a counter. It's implemented > in the patch. I'd like to

Re: [RFC][PR82479] missing popcount builtin detection

2018-05-16 Thread Kugan Vivekanandarajah
Hi Richard, On 6 March 2018 at 02:24, Richard Biener wrote: > On Thu, Feb 8, 2018 at 1:41 AM, Kugan Vivekanandarajah > wrote: >> Hi Richard, >> >> On 1 February 2018 at 23:21, Richard Biener >> wrote:

[RFC][PR64946] "abs" vectorization fails for char/short types

2018-05-16 Thread Kugan Vivekanandarajah
As mentioned in the PR, I am trying to add ABSU_EXPR to fix this issue. In the attached patch, in fold_cond_expr_with_comparison I am generating ABSU_EXPR for these cases. As I understand, absu_expr is well defined in RTL. So, the issue is generating absu_expr and transferring to RTL in the

Re: [RFC][PR64946] "abs" vectorization fails for char/short types

2018-05-16 Thread Andrew Pinski
On Wed, May 16, 2018 at 7:14 PM, Kugan Vivekanandarajah wrote: > As mentioned in the PR, I am trying to add ABSU_EXPR to fix this > issue. In the attached patch, in fold_cond_expr_with_comparison I am > generating ABSU_EXPR for these cases. As I understand,

Re: [PR63185][RFC] Improve DSE with branches

2018-05-16 Thread Jeff Law
On 05/15/2018 08:42 AM, Richard Biener wrote: > On Tue, 15 May 2018, Richard Biener wrote: > >> On Tue, 15 May 2018, Richard Biener wrote: >> >>> On Tue, 15 May 2018, Richard Biener wrote: >>> On Tue, 15 May 2018, Richard Biener wrote: > On Mon, 14 May 2018, Kugan Vivekanandarajah

Re: [PR63185][RFC] Improve DSE with branches

2018-05-16 Thread Jeff Law
On 05/16/2018 04:12 AM, Richard Biener wrote: > On Tue, 15 May 2018, Richard Biener wrote: > >> On Tue, 15 May 2018, Richard Biener wrote: >> >>> On Tue, 15 May 2018, Richard Biener wrote: >>> On Tue, 15 May 2018, Richard Biener wrote: > On Tue, 15 May 2018, Richard Biener wrote:

Re: [PATCH] ARC: Add multilib support for linux targets

2018-05-16 Thread Andrew Burgess
* Alexey Brodkin [2018-05-16 22:42:36 +0300]: > We used to build baremetal (AKA Elf32) multilibbed toolchains for years > now but never made that for Linux targets since there were problems with > uClibc n multilib setup. Now with help of Crosstool-NG it is finally >

[PATCH] ARC: Add multilib support for linux targets

2018-05-16 Thread Alexey Brodkin
We used to build baremetal (AKA Elf32) multilibbed toolchains for years now but never made that for Linux targets since there were problems with uClibc n multilib setup. Now with help of Crosstool-NG it is finally possible to create uClibc-based multilibbed toolchains and so we add relevant CPUs

Re: C++ PATCH for c++/85363, wrong-code with throwing list-initializer

2018-05-16 Thread Jason Merrill
OK. On Wed, May 16, 2018 at 2:44 PM, Marek Polacek wrote: > On Wed, May 16, 2018 at 01:53:50PM -0400, Jason Merrill wrote: >> You should be able to avoid duplication here by using cp_get_callee >> rather than *_FN. > > Even better, thanks! > > Bootstrapped/regtested on

[PATCH , rs6000] Add missing builtin test cases, fix arguments to match specifications.

2018-05-16 Thread Carl Love
GCC maintainers: The following patch adds various missing builtin test cases. I also went through the various test files and made sure that each test had a corresponding instruction count test if appropriate. In some cases, I had to add count tests. For one of the tests, I had to create a BE

Re: [PATCH] PR gcc/84923 - gcc.dg/attr-weakref-1.c failed on aarch64

2018-05-16 Thread vladimir . mezentsev
Ping. -Vladimir On 05/10/2018 11:30 PM, vladimir.mezent...@oracle.com wrote: > From: Vladimir Mezentsev > > When weakref_targets is not empty a target cannot be removed from the weak > list. > A small example is below when 'wv12' is removed from the weak list on

Re: [PATCH] Add missing _mm512_set{_epi16,_epi8,zero} intrinsics

2018-05-16 Thread Kirill Yukhin
Hello Jakub, On 08 мая 17:14, Jakub Jelinek wrote: > Hi! > > While working on PR85323 testsuite coverage, I've noticed we lack these > intrinsics. ICC and since Mar 2017 also clang do have these. > > The _mm512_setzero is just a misnamed alias to another intrinsic, but for > compatibility we

Re: [PATCH, i386]: Implement usadv64qi

2018-05-16 Thread Kirill Yukhin
Hello Uroš, On 09 мая 13:07, Uros Bizjak wrote: > This patch adds usadv64qi expander, so the compiler is able to > vectorize with 512bit vpsadbw insn. > > 2017-05-09 Uros Bizjak > > PR target/85693 > * config/i386/sse.md (usadv64qi): New expander. > > Bootstrapped

Re: [PATCH] Add constant folding for x86 shift builtins by vector

2018-05-16 Thread Kirill Yukhin
Hello Jakub, On 09 мая 22:54, Jakub Jelinek wrote: > Hi! > > The following patch on top of the earlier ix86_*fold_builtin patch adds > folding also for the *s{ll,rl,ra}v* builtins. > > Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk? Your patch is OK for trunk. -- Thanks, K

Re: [PATCH] Constant folding of x86 vector shift by scalar builtins (PR target/85323)

2018-05-16 Thread Kirill Yukhin
Hello Jakub, On 08 мая 17:29, Jakub Jelinek wrote: > Hi! > > The following patch adds folding for vector shift by scalar builtins. > If they are masked, so far we only optimize them only if the mask is all > ones. ix86_fold_builtin handles the all constant argument cases, where the > effect of

Re: [PATCH] Constant fold even masked shift builtins

2018-05-16 Thread Kirill Yukhin
Hello Jakub, On 11 мая 10:10, Jakub Jelinek wrote: > Hi! > > On top of the earlier 3 pending patches, this patch adds constant folding > of the shifts even when the mask is not all ones (as long as the orig value > argument is VECTOR_CST too). Then we can just do the blend according to the >