[PATCH]Several intrinsic macros lack a closing parenthesis[PR93274]

2020-02-12 Thread Hongtao Liu
Hi
  As mentioned in PR93724, several intrinsic macros lack a closing
parenthesis. These macros are only used with -O0 option, and currently
unit tests use -O2, so not covered.
  Bootstrap ok, regression tests on i386/x86_64 is ok.
  Ok for trunk?

Changelog
gcc/
* config/i386/avx512vbmi2intrin.h
(_mm512_[,mask_,maskz_]shrdi_epi16,
_mm512_[,mask_,maskz_]shrdi_epi32,
_m512_[,mask_,maskz_]shrdi_epi64,
_mm512_[,mask_,maskz_]shldi_epi16,
_mm512_[,mask_,maskz_]shldi_epi32,
_m512_[,mask_,maskz_]shldi_epi64): Fix typo of lacking a
closing parenthesis.
* config/i386/avx512vbmi2vlintrin.h
(_mm256_[,mask_,maskz_]shrdi_epi16,
_mm256_[,mask_,maskz_]shrdi_epi32,
_m256_[,mask_,maskz_]shrdi_epi64,
_mm_[,mask_,maskz_]shrdi_epi16,
_mm_[,mask_,maskz_]shrdi_epi32,
_mm_[,mask_,maskz_]shrdi_epi64,
_mm256_[,mask_,maskz_]shldi_epi16,
_mm256_[,mask_,maskz_]shldi_epi32,
_m256_[,mask_,maskz_]shldi_epi64,
_mm_[,mask_,maskz_]shldi_epi16,
_mm_[,mask_,maskz_]shldi_epi32,
_mm_[,mask_,maskz_]shldi_epi64): Ditto.

gcc/testsuite/
* gcc.target/i386/avx512vbmi2-vpshld-1.c: New test.
* gcc.target/i386/avx512vbmi2-vpshld-O0-1.c: Ditto.
* gcc.target/i386/avx512vbmi2-vpshrd-1.c: Ditto.
* gcc.target/i386/avx512vbmi2-vpshrd-O0-1.c: Ditto.
* gcc.target/i386/avx512vl-vpshld-O0-1.c: Ditto.
* gcc.target/i386/avx512vl-vpshrd-O0-1.c: Ditto.

-- 
BR,
Hongtao


0001-Intrinsic-macro-of-vpshr-and-vpshl-lack-a-closing-pa.patch
Description: Binary data


Re: [PATCH]Several intrinsic macros lack a closing parenthesis[PR93274]

2020-02-13 Thread Uros Bizjak
> Changelog
> gcc/
>* config/i386/avx512vbmi2intrin.h
>(_mm512_[,mask_,maskz_]shrdi_epi16,
>_mm512_[,mask_,maskz_]shrdi_epi32,
>_m512_[,mask_,maskz_]shrdi_epi64,
>_mm512_[,mask_,maskz_]shldi_epi16,
>_mm512_[,mask_,maskz_]shldi_epi32,
>_m512_[,mask_,maskz_]shldi_epi64): Fix typo of lacking a
>closing parenthesis.
>* config/i386/avx512vbmi2vlintrin.h
>(_mm256_[,mask_,maskz_]shrdi_epi16,
>_mm256_[,mask_,maskz_]shrdi_epi32,
>_m256_[,mask_,maskz_]shrdi_epi64,
>_mm_[,mask_,maskz_]shrdi_epi16,
>_mm_[,mask_,maskz_]shrdi_epi32,
>_mm_[,mask_,maskz_]shrdi_epi64,
>_mm256_[,mask_,maskz_]shldi_epi16,
>_mm256_[,mask_,maskz_]shldi_epi32,
>_m256_[,mask_,maskz_]shldi_epi64,
>_mm_[,mask_,maskz_]shldi_epi16,
>_mm_[,mask_,maskz_]shldi_epi32,
>_mm_[,mask_,maskz_]shldi_epi64): Ditto.
>
> gcc/testsuite/
>* gcc.target/i386/avx512vbmi2-vpshld-1.c: New test.
>* gcc.target/i386/avx512vbmi2-vpshld-O0-1.c: Ditto.
>* gcc.target/i386/avx512vbmi2-vpshrd-1.c: Ditto.
>* gcc.target/i386/avx512vbmi2-vpshrd-O0-1.c: Ditto.
>* gcc.target/i386/avx512vl-vpshld-O0-1.c: Ditto.
>* gcc.target/i386/avx512vl-vpshrd-O0-1.c: Ditto.

This is obvious patch, so OK for mainline and backports.

Thanks,
Uros.


Re: [PATCH]Several intrinsic macros lack a closing parenthesis[PR93274]

2020-02-13 Thread Jakub Jelinek
On Thu, Feb 13, 2020 at 09:39:05AM +0100, Uros Bizjak wrote:
> > Changelog
> > gcc/
> >* config/i386/avx512vbmi2intrin.h
> >(_mm512_[,mask_,maskz_]shrdi_epi16,
> >_mm512_[,mask_,maskz_]shrdi_epi32,
> >_m512_[,mask_,maskz_]shrdi_epi64,
> >_mm512_[,mask_,maskz_]shldi_epi16,
> >_mm512_[,mask_,maskz_]shldi_epi32,
> >_m512_[,mask_,maskz_]shldi_epi64): Fix typo of lacking a
> >closing parenthesis.
> >* config/i386/avx512vbmi2vlintrin.h
> >(_mm256_[,mask_,maskz_]shrdi_epi16,
> >_mm256_[,mask_,maskz_]shrdi_epi32,
> >_m256_[,mask_,maskz_]shrdi_epi64,
> >_mm_[,mask_,maskz_]shrdi_epi16,
> >_mm_[,mask_,maskz_]shrdi_epi32,
> >_mm_[,mask_,maskz_]shrdi_epi64,
> >_mm256_[,mask_,maskz_]shldi_epi16,
> >_mm256_[,mask_,maskz_]shldi_epi32,
> >_m256_[,mask_,maskz_]shldi_epi64,
> >_mm_[,mask_,maskz_]shldi_epi16,
> >_mm_[,mask_,maskz_]shldi_epi32,
> >_mm_[,mask_,maskz_]shldi_epi64): Ditto.
> >
> > gcc/testsuite/
> >* gcc.target/i386/avx512vbmi2-vpshld-1.c: New test.
> >* gcc.target/i386/avx512vbmi2-vpshld-O0-1.c: Ditto.
> >* gcc.target/i386/avx512vbmi2-vpshrd-1.c: Ditto.
> >* gcc.target/i386/avx512vbmi2-vpshrd-O0-1.c: Ditto.
> >* gcc.target/i386/avx512vl-vpshld-O0-1.c: Ditto.
> >* gcc.target/i386/avx512vl-vpshrd-O0-1.c: Ditto.
> 
> This is obvious patch, so OK for mainline and backports.

The header changes sure, but for the testsuite, the standard way
would be to have it covered in the standard tests we have for this.
I think that is gcc.target/i386/sse-{13,14,22a,23}.c, so it would be worth
trying to figure out why it hasn't caught that.

And, I don't think we allow any wildcards etc. (and [,whatever,whateverelse]
isn't even one, neither regexp nor shell wildcard) in the names of functions
changed, they can appear in the description text, but for the names of
macros one needs to list them all expanded, people do grep for those.

Jakub



Re: [PATCH]Several intrinsic macros lack a closing parenthesis[PR93274]

2020-02-13 Thread Uros Bizjak
On Thu, Feb 13, 2020 at 9:53 AM Jakub Jelinek  wrote:
>
> On Thu, Feb 13, 2020 at 09:39:05AM +0100, Uros Bizjak wrote:
> > > Changelog
> > > gcc/
> > >* config/i386/avx512vbmi2intrin.h
> > >(_mm512_[,mask_,maskz_]shrdi_epi16,
> > >_mm512_[,mask_,maskz_]shrdi_epi32,
> > >_m512_[,mask_,maskz_]shrdi_epi64,
> > >_mm512_[,mask_,maskz_]shldi_epi16,
> > >_mm512_[,mask_,maskz_]shldi_epi32,
> > >_m512_[,mask_,maskz_]shldi_epi64): Fix typo of lacking a
> > >closing parenthesis.
> > >* config/i386/avx512vbmi2vlintrin.h
> > >(_mm256_[,mask_,maskz_]shrdi_epi16,
> > >_mm256_[,mask_,maskz_]shrdi_epi32,
> > >_m256_[,mask_,maskz_]shrdi_epi64,
> > >_mm_[,mask_,maskz_]shrdi_epi16,
> > >_mm_[,mask_,maskz_]shrdi_epi32,
> > >_mm_[,mask_,maskz_]shrdi_epi64,
> > >_mm256_[,mask_,maskz_]shldi_epi16,
> > >_mm256_[,mask_,maskz_]shldi_epi32,
> > >_m256_[,mask_,maskz_]shldi_epi64,
> > >_mm_[,mask_,maskz_]shldi_epi16,
> > >_mm_[,mask_,maskz_]shldi_epi32,
> > >_mm_[,mask_,maskz_]shldi_epi64): Ditto.
> > >
> > > gcc/testsuite/
> > >* gcc.target/i386/avx512vbmi2-vpshld-1.c: New test.
> > >* gcc.target/i386/avx512vbmi2-vpshld-O0-1.c: Ditto.
> > >* gcc.target/i386/avx512vbmi2-vpshrd-1.c: Ditto.
> > >* gcc.target/i386/avx512vbmi2-vpshrd-O0-1.c: Ditto.
> > >* gcc.target/i386/avx512vl-vpshld-O0-1.c: Ditto.
> > >* gcc.target/i386/avx512vl-vpshrd-O0-1.c: Ditto.
> >
> > This is obvious patch, so OK for mainline and backports.
>
> The header changes sure, but for the testsuite, the standard way
> would be to have it covered in the standard tests we have for this.
> I think that is gcc.target/i386/sse-{13,14,22a,23}.c, so it would be worth
> trying to figure out why it hasn't caught that.

Indeed. It looks that these macros are not listed in sse-14.c, which
would catch the problem. So, there is no need for new -O0 tests,
please add missing functions to sse-14.c and sse-22.c testcases. I was
also surprised that no testsuite coverage for vbmi2 functions was
added at submission.

Uros.

> And, I don't think we allow any wildcards etc. (and [,whatever,whateverelse]
> isn't even one, neither regexp nor shell wildcard) in the names of functions
> changed, they can appear in the description text, but for the names of
> macros one needs to list them all expanded, people do grep for those.
>
> Jakub
>


Re: [PATCH]Several intrinsic macros lack a closing parenthesis[PR93274]

2020-02-13 Thread Hongtao Liu
On Thu, Feb 13, 2020 at 5:12 PM Uros Bizjak  wrote:
>
> On Thu, Feb 13, 2020 at 9:53 AM Jakub Jelinek  wrote:
> >
> > On Thu, Feb 13, 2020 at 09:39:05AM +0100, Uros Bizjak wrote:
> > > > Changelog
> > > > gcc/
> > > >* config/i386/avx512vbmi2intrin.h
> > > >(_mm512_[,mask_,maskz_]shrdi_epi16,
> > > >_mm512_[,mask_,maskz_]shrdi_epi32,
> > > >_m512_[,mask_,maskz_]shrdi_epi64,
> > > >_mm512_[,mask_,maskz_]shldi_epi16,
> > > >_mm512_[,mask_,maskz_]shldi_epi32,
> > > >_m512_[,mask_,maskz_]shldi_epi64): Fix typo of lacking a
> > > >closing parenthesis.
> > > >* config/i386/avx512vbmi2vlintrin.h
> > > >(_mm256_[,mask_,maskz_]shrdi_epi16,
> > > >_mm256_[,mask_,maskz_]shrdi_epi32,
> > > >_m256_[,mask_,maskz_]shrdi_epi64,
> > > >_mm_[,mask_,maskz_]shrdi_epi16,
> > > >_mm_[,mask_,maskz_]shrdi_epi32,
> > > >_mm_[,mask_,maskz_]shrdi_epi64,
> > > >_mm256_[,mask_,maskz_]shldi_epi16,
> > > >_mm256_[,mask_,maskz_]shldi_epi32,
> > > >_m256_[,mask_,maskz_]shldi_epi64,
> > > >_mm_[,mask_,maskz_]shldi_epi16,
> > > >_mm_[,mask_,maskz_]shldi_epi32,
> > > >_mm_[,mask_,maskz_]shldi_epi64): Ditto.
> > > >
> > > > gcc/testsuite/
> > > >* gcc.target/i386/avx512vbmi2-vpshld-1.c: New test.
> > > >* gcc.target/i386/avx512vbmi2-vpshld-O0-1.c: Ditto.
> > > >* gcc.target/i386/avx512vbmi2-vpshrd-1.c: Ditto.
> > > >* gcc.target/i386/avx512vbmi2-vpshrd-O0-1.c: Ditto.
> > > >* gcc.target/i386/avx512vl-vpshld-O0-1.c: Ditto.
> > > >* gcc.target/i386/avx512vl-vpshrd-O0-1.c: Ditto.
> > >
> > > This is obvious patch, so OK for mainline and backports.
> >
> > The header changes sure, but for the testsuite, the standard way
> > would be to have it covered in the standard tests we have for this.
> > I think that is gcc.target/i386/sse-{13,14,22a,23}.c, so it would be worth
> > trying to figure out why it hasn't caught that.
>
> Indeed. It looks that these macros are not listed in sse-14.c, which
> would catch the problem. So, there is no need for new -O0 tests,
> please add missing functions to sse-14.c and sse-22.c testcases. I was
> also surprised that no testsuite coverage for vbmi2 functions was
> added at submission.
>
Yes, i saw that, thanks.
> Uros.
>
> > And, I don't think we allow any wildcards etc. (and [,whatever,whateverelse]
> > isn't even one, neither regexp nor shell wildcard) in the names of functions
> > changed, they can appear in the description text, but for the names of
> > macros one needs to list them all expanded, people do grep for those.
> >
> > Jakub
> >



-- 
BR,
Hongtao


Re: [PATCH]Several intrinsic macros lack a closing parenthesis[PR93274]

2020-02-13 Thread Hongtao Liu
On Thu, Feb 13, 2020 at 5:31 PM Hongtao Liu  wrote:
>
> On Thu, Feb 13, 2020 at 5:12 PM Uros Bizjak  wrote:
> >
> > On Thu, Feb 13, 2020 at 9:53 AM Jakub Jelinek  wrote:
> > >
> > > On Thu, Feb 13, 2020 at 09:39:05AM +0100, Uros Bizjak wrote:
> > > > > Changelog
> > > > > gcc/
> > > > >* config/i386/avx512vbmi2intrin.h
> > > > >(_mm512_[,mask_,maskz_]shrdi_epi16,
> > > > >_mm512_[,mask_,maskz_]shrdi_epi32,
> > > > >_m512_[,mask_,maskz_]shrdi_epi64,
> > > > >_mm512_[,mask_,maskz_]shldi_epi16,
> > > > >_mm512_[,mask_,maskz_]shldi_epi32,
> > > > >_m512_[,mask_,maskz_]shldi_epi64): Fix typo of lacking a
> > > > >closing parenthesis.
> > > > >* config/i386/avx512vbmi2vlintrin.h
> > > > >(_mm256_[,mask_,maskz_]shrdi_epi16,
> > > > >_mm256_[,mask_,maskz_]shrdi_epi32,
> > > > >_m256_[,mask_,maskz_]shrdi_epi64,
> > > > >_mm_[,mask_,maskz_]shrdi_epi16,
> > > > >_mm_[,mask_,maskz_]shrdi_epi32,
> > > > >_mm_[,mask_,maskz_]shrdi_epi64,
> > > > >_mm256_[,mask_,maskz_]shldi_epi16,
> > > > >_mm256_[,mask_,maskz_]shldi_epi32,
> > > > >_m256_[,mask_,maskz_]shldi_epi64,
> > > > >_mm_[,mask_,maskz_]shldi_epi16,
> > > > >_mm_[,mask_,maskz_]shldi_epi32,
> > > > >_mm_[,mask_,maskz_]shldi_epi64): Ditto.
> > > > >
> > > > > gcc/testsuite/
> > > > >* gcc.target/i386/avx512vbmi2-vpshld-1.c: New test.
> > > > >* gcc.target/i386/avx512vbmi2-vpshld-O0-1.c: Ditto.
> > > > >* gcc.target/i386/avx512vbmi2-vpshrd-1.c: Ditto.
> > > > >* gcc.target/i386/avx512vbmi2-vpshrd-O0-1.c: Ditto.
> > > > >* gcc.target/i386/avx512vl-vpshld-O0-1.c: Ditto.
> > > > >* gcc.target/i386/avx512vl-vpshrd-O0-1.c: Ditto.
> > > >
> > > > This is obvious patch, so OK for mainline and backports.
> > >
> > > The header changes sure, but for the testsuite, the standard way
> > > would be to have it covered in the standard tests we have for this.
> > > I think that is gcc.target/i386/sse-{13,14,22a,23}.c, so it would be worth
> > > trying to figure out why it hasn't caught that.
> >
> > Indeed. It looks that these macros are not listed in sse-14.c, which
> > would catch the problem. So, there is no need for new -O0 tests,
> > please add missing functions to sse-14.c and sse-22.c testcases. I was
> > also surprised that no testsuite coverage for vbmi2 functions was
> > added at submission.
> >
> Yes, i saw that, thanks.
> > Uros.
> >
> > > And, I don't think we allow any wildcards etc. (and 
> > > [,whatever,whateverelse]
> > > isn't even one, neither regexp nor shell wildcard) in the names of 
> > > functions
> > > changed, they can appear in the description text, but for the names of
> > > macros one needs to list them all expanded, people do grep for those.
> > >
> > > Jakub
> > >
>
>
>
> --
> BR,
> Hongtao

Update patch:
Update Changelog, delete O0 testcase, and add testcase in sse-14.c, sse-22.c

-- 
BR,
Hongtao


0001-Intrinsic-macro-of-vpshr-and-vpshl-lack-a-closing-pa.patch
Description: Binary data


Re: [PATCH]Several intrinsic macros lack a closing parenthesis[PR93274]

2020-02-13 Thread Uros Bizjak
On Fri, Feb 14, 2020 at 7:03 AM Hongtao Liu  wrote:
>
> On Thu, Feb 13, 2020 at 5:31 PM Hongtao Liu  wrote:
> >
> > On Thu, Feb 13, 2020 at 5:12 PM Uros Bizjak  wrote:
> > >
> > > On Thu, Feb 13, 2020 at 9:53 AM Jakub Jelinek  wrote:
> > > >
> > > > On Thu, Feb 13, 2020 at 09:39:05AM +0100, Uros Bizjak wrote:
> > > > > > Changelog
> > > > > > gcc/
> > > > > >* config/i386/avx512vbmi2intrin.h
> > > > > >(_mm512_[,mask_,maskz_]shrdi_epi16,
> > > > > >_mm512_[,mask_,maskz_]shrdi_epi32,
> > > > > >_m512_[,mask_,maskz_]shrdi_epi64,
> > > > > >_mm512_[,mask_,maskz_]shldi_epi16,
> > > > > >_mm512_[,mask_,maskz_]shldi_epi32,
> > > > > >_m512_[,mask_,maskz_]shldi_epi64): Fix typo of lacking a
> > > > > >closing parenthesis.
> > > > > >* config/i386/avx512vbmi2vlintrin.h
> > > > > >(_mm256_[,mask_,maskz_]shrdi_epi16,
> > > > > >_mm256_[,mask_,maskz_]shrdi_epi32,
> > > > > >_m256_[,mask_,maskz_]shrdi_epi64,
> > > > > >_mm_[,mask_,maskz_]shrdi_epi16,
> > > > > >_mm_[,mask_,maskz_]shrdi_epi32,
> > > > > >_mm_[,mask_,maskz_]shrdi_epi64,
> > > > > >_mm256_[,mask_,maskz_]shldi_epi16,
> > > > > >_mm256_[,mask_,maskz_]shldi_epi32,
> > > > > >_m256_[,mask_,maskz_]shldi_epi64,
> > > > > >_mm_[,mask_,maskz_]shldi_epi16,
> > > > > >_mm_[,mask_,maskz_]shldi_epi32,
> > > > > >_mm_[,mask_,maskz_]shldi_epi64): Ditto.
> > > > > >
> > > > > > gcc/testsuite/
> > > > > >* gcc.target/i386/avx512vbmi2-vpshld-1.c: New test.
> > > > > >* gcc.target/i386/avx512vbmi2-vpshld-O0-1.c: Ditto.
> > > > > >* gcc.target/i386/avx512vbmi2-vpshrd-1.c: Ditto.
> > > > > >* gcc.target/i386/avx512vbmi2-vpshrd-O0-1.c: Ditto.
> > > > > >* gcc.target/i386/avx512vl-vpshld-O0-1.c: Ditto.
> > > > > >* gcc.target/i386/avx512vl-vpshrd-O0-1.c: Ditto.
> > > > >
> > > > > This is obvious patch, so OK for mainline and backports.
> > > >
> > > > The header changes sure, but for the testsuite, the standard way
> > > > would be to have it covered in the standard tests we have for this.
> > > > I think that is gcc.target/i386/sse-{13,14,22a,23}.c, so it would be 
> > > > worth
> > > > trying to figure out why it hasn't caught that.
> > >
> > > Indeed. It looks that these macros are not listed in sse-14.c, which
> > > would catch the problem. So, there is no need for new -O0 tests,
> > > please add missing functions to sse-14.c and sse-22.c testcases. I was
> > > also surprised that no testsuite coverage for vbmi2 functions was
> > > added at submission.
> > >
> > Yes, i saw that, thanks.
> > > Uros.
> > >
> > > > And, I don't think we allow any wildcards etc. (and 
> > > > [,whatever,whateverelse]
> > > > isn't even one, neither regexp nor shell wildcard) in the names of 
> > > > functions
> > > > changed, they can appear in the description text, but for the names of
> > > > macros one needs to list them all expanded, people do grep for those.
> > > >
> > > > Jakub
> > > >
> >
> >
> >
> > --
> > BR,
> > Hongtao
>
> Update patch:
> Update Changelog, delete O0 testcase, and add testcase in sse-14.c, sse-22.c

OK.

Thanks,
Uros.

> --
> BR,
> Hongtao


Re: [PATCH]Several intrinsic macros lack a closing parenthesis[PR93274]

2020-02-14 Thread Uros Bizjak
On Fri, Feb 14, 2020 at 8:06 AM Uros Bizjak  wrote:
>
> On Fri, Feb 14, 2020 at 7:03 AM Hongtao Liu  wrote:
> >
> > On Thu, Feb 13, 2020 at 5:31 PM Hongtao Liu  wrote:
> > >
> > > On Thu, Feb 13, 2020 at 5:12 PM Uros Bizjak  wrote:
> > > >
> > > > On Thu, Feb 13, 2020 at 9:53 AM Jakub Jelinek  wrote:
> > > > >
> > > > > On Thu, Feb 13, 2020 at 09:39:05AM +0100, Uros Bizjak wrote:
> > > > > > > Changelog
> > > > > > > gcc/
> > > > > > >* config/i386/avx512vbmi2intrin.h
> > > > > > >(_mm512_[,mask_,maskz_]shrdi_epi16,
> > > > > > >_mm512_[,mask_,maskz_]shrdi_epi32,
> > > > > > >_m512_[,mask_,maskz_]shrdi_epi64,
> > > > > > >_mm512_[,mask_,maskz_]shldi_epi16,
> > > > > > >_mm512_[,mask_,maskz_]shldi_epi32,
> > > > > > >_m512_[,mask_,maskz_]shldi_epi64): Fix typo of lacking a
> > > > > > >closing parenthesis.
> > > > > > >* config/i386/avx512vbmi2vlintrin.h
> > > > > > >(_mm256_[,mask_,maskz_]shrdi_epi16,
> > > > > > >_mm256_[,mask_,maskz_]shrdi_epi32,
> > > > > > >_m256_[,mask_,maskz_]shrdi_epi64,
> > > > > > >_mm_[,mask_,maskz_]shrdi_epi16,
> > > > > > >_mm_[,mask_,maskz_]shrdi_epi32,
> > > > > > >_mm_[,mask_,maskz_]shrdi_epi64,
> > > > > > >_mm256_[,mask_,maskz_]shldi_epi16,
> > > > > > >_mm256_[,mask_,maskz_]shldi_epi32,
> > > > > > >_m256_[,mask_,maskz_]shldi_epi64,
> > > > > > >_mm_[,mask_,maskz_]shldi_epi16,
> > > > > > >_mm_[,mask_,maskz_]shldi_epi32,
> > > > > > >_mm_[,mask_,maskz_]shldi_epi64): Ditto.
> > > > > > >
> > > > > > > gcc/testsuite/
> > > > > > >* gcc.target/i386/avx512vbmi2-vpshld-1.c: New test.
> > > > > > >* gcc.target/i386/avx512vbmi2-vpshld-O0-1.c: Ditto.
> > > > > > >* gcc.target/i386/avx512vbmi2-vpshrd-1.c: Ditto.
> > > > > > >* gcc.target/i386/avx512vbmi2-vpshrd-O0-1.c: Ditto.
> > > > > > >* gcc.target/i386/avx512vl-vpshld-O0-1.c: Ditto.
> > > > > > >* gcc.target/i386/avx512vl-vpshrd-O0-1.c: Ditto.
> > > > > >
> > > > > > This is obvious patch, so OK for mainline and backports.
> > > > >
> > > > > The header changes sure, but for the testsuite, the standard way
> > > > > would be to have it covered in the standard tests we have for this.
> > > > > I think that is gcc.target/i386/sse-{13,14,22a,23}.c, so it would be 
> > > > > worth
> > > > > trying to figure out why it hasn't caught that.
> > > >
> > > > Indeed. It looks that these macros are not listed in sse-14.c, which
> > > > would catch the problem. So, there is no need for new -O0 tests,
> > > > please add missing functions to sse-14.c and sse-22.c testcases. I was
> > > > also surprised that no testsuite coverage for vbmi2 functions was
> > > > added at submission.
> > > >
> > > Yes, i saw that, thanks.
> > > > Uros.
> > > >
> > > > > And, I don't think we allow any wildcards etc. (and 
> > > > > [,whatever,whateverelse]
> > > > > isn't even one, neither regexp nor shell wildcard) in the names of 
> > > > > functions
> > > > > changed, they can appear in the description text, but for the names of
> > > > > macros one needs to list them all expanded, people do grep for those.
> > > > >
> > > > > Jakub
> > > > >
> > >
> > >
> > >
> > > --
> > > BR,
> > > Hongtao
> >
> > Update patch:
> > Update Changelog, delete O0 testcase, and add testcase in sse-14.c, sse-22.c
>
> OK.

Please also commit ChangeLog entries to relevant ChangeLog files.

Uros.


Re: [PATCH]Several intrinsic macros lack a closing parenthesis[PR93274]

2020-02-14 Thread Hongtao Liu
Done.

On Fri, Feb 14, 2020 at 7:16 PM Uros Bizjak  wrote:
>
> On Fri, Feb 14, 2020 at 8:06 AM Uros Bizjak  wrote:
> >
> > On Fri, Feb 14, 2020 at 7:03 AM Hongtao Liu  wrote:
> > >
> > > On Thu, Feb 13, 2020 at 5:31 PM Hongtao Liu  wrote:
> > > >
> > > > On Thu, Feb 13, 2020 at 5:12 PM Uros Bizjak  wrote:
> > > > >
> > > > > On Thu, Feb 13, 2020 at 9:53 AM Jakub Jelinek  
> > > > > wrote:
> > > > > >
> > > > > > On Thu, Feb 13, 2020 at 09:39:05AM +0100, Uros Bizjak wrote:
> > > > > > > > Changelog
> > > > > > > > gcc/
> > > > > > > >* config/i386/avx512vbmi2intrin.h
> > > > > > > >(_mm512_[,mask_,maskz_]shrdi_epi16,
> > > > > > > >_mm512_[,mask_,maskz_]shrdi_epi32,
> > > > > > > >_m512_[,mask_,maskz_]shrdi_epi64,
> > > > > > > >_mm512_[,mask_,maskz_]shldi_epi16,
> > > > > > > >_mm512_[,mask_,maskz_]shldi_epi32,
> > > > > > > >_m512_[,mask_,maskz_]shldi_epi64): Fix typo of lacking a
> > > > > > > >closing parenthesis.
> > > > > > > >* config/i386/avx512vbmi2vlintrin.h
> > > > > > > >(_mm256_[,mask_,maskz_]shrdi_epi16,
> > > > > > > >_mm256_[,mask_,maskz_]shrdi_epi32,
> > > > > > > >_m256_[,mask_,maskz_]shrdi_epi64,
> > > > > > > >_mm_[,mask_,maskz_]shrdi_epi16,
> > > > > > > >_mm_[,mask_,maskz_]shrdi_epi32,
> > > > > > > >_mm_[,mask_,maskz_]shrdi_epi64,
> > > > > > > >_mm256_[,mask_,maskz_]shldi_epi16,
> > > > > > > >_mm256_[,mask_,maskz_]shldi_epi32,
> > > > > > > >_m256_[,mask_,maskz_]shldi_epi64,
> > > > > > > >_mm_[,mask_,maskz_]shldi_epi16,
> > > > > > > >_mm_[,mask_,maskz_]shldi_epi32,
> > > > > > > >_mm_[,mask_,maskz_]shldi_epi64): Ditto.
> > > > > > > >
> > > > > > > > gcc/testsuite/
> > > > > > > >* gcc.target/i386/avx512vbmi2-vpshld-1.c: New test.
> > > > > > > >* gcc.target/i386/avx512vbmi2-vpshld-O0-1.c: Ditto.
> > > > > > > >* gcc.target/i386/avx512vbmi2-vpshrd-1.c: Ditto.
> > > > > > > >* gcc.target/i386/avx512vbmi2-vpshrd-O0-1.c: Ditto.
> > > > > > > >* gcc.target/i386/avx512vl-vpshld-O0-1.c: Ditto.
> > > > > > > >* gcc.target/i386/avx512vl-vpshrd-O0-1.c: Ditto.
> > > > > > >
> > > > > > > This is obvious patch, so OK for mainline and backports.
> > > > > >
> > > > > > The header changes sure, but for the testsuite, the standard way
> > > > > > would be to have it covered in the standard tests we have for this.
> > > > > > I think that is gcc.target/i386/sse-{13,14,22a,23}.c, so it would 
> > > > > > be worth
> > > > > > trying to figure out why it hasn't caught that.
> > > > >
> > > > > Indeed. It looks that these macros are not listed in sse-14.c, which
> > > > > would catch the problem. So, there is no need for new -O0 tests,
> > > > > please add missing functions to sse-14.c and sse-22.c testcases. I was
> > > > > also surprised that no testsuite coverage for vbmi2 functions was
> > > > > added at submission.
> > > > >
> > > > Yes, i saw that, thanks.
> > > > > Uros.
> > > > >
> > > > > > And, I don't think we allow any wildcards etc. (and 
> > > > > > [,whatever,whateverelse]
> > > > > > isn't even one, neither regexp nor shell wildcard) in the names of 
> > > > > > functions
> > > > > > changed, they can appear in the description text, but for the names 
> > > > > > of
> > > > > > macros one needs to list them all expanded, people do grep for 
> > > > > > those.
> > > > > >
> > > > > > Jakub
> > > > > >
> > > >
> > > >
> > > >
> > > > --
> > > > BR,
> > > > Hongtao
> > >
> > > Update patch:
> > > Update Changelog, delete O0 testcase, and add testcase in sse-14.c, 
> > > sse-22.c
> >
> > OK.
>
> Please also commit ChangeLog entries to relevant ChangeLog files.
>
> Uros.



-- 
BR,
Hongtao


Re: [PATCH]Several intrinsic macros lack a closing parenthesis[PR93274]

2020-02-18 Thread Uros Bizjak
On Thu, Feb 13, 2020 at 9:39 AM Uros Bizjak  wrote:

> > Changelog
> > gcc/
> >* config/i386/avx512vbmi2intrin.h
> >(_mm512_[,mask_,maskz_]shrdi_epi16,
> >_mm512_[,mask_,maskz_]shrdi_epi32,
> >_m512_[,mask_,maskz_]shrdi_epi64,
> >_mm512_[,mask_,maskz_]shldi_epi16,
> >_mm512_[,mask_,maskz_]shldi_epi32,
> >_m512_[,mask_,maskz_]shldi_epi64): Fix typo of lacking a
> >closing parenthesis.
> >* config/i386/avx512vbmi2vlintrin.h
> >(_mm256_[,mask_,maskz_]shrdi_epi16,
> >_mm256_[,mask_,maskz_]shrdi_epi32,
> >_m256_[,mask_,maskz_]shrdi_epi64,
> >_mm_[,mask_,maskz_]shrdi_epi16,
> >_mm_[,mask_,maskz_]shrdi_epi32,
> >_mm_[,mask_,maskz_]shrdi_epi64,
> >_mm256_[,mask_,maskz_]shldi_epi16,
> >_mm256_[,mask_,maskz_]shldi_epi32,
> >_m256_[,mask_,maskz_]shldi_epi64,
> >_mm_[,mask_,maskz_]shldi_epi16,
> >_mm_[,mask_,maskz_]shldi_epi32,
> >_mm_[,mask_,maskz_]shldi_epi64): Ditto.
> >
> > gcc/testsuite/
> >* gcc.target/i386/avx512vbmi2-vpshld-1.c: New test.
> >* gcc.target/i386/avx512vbmi2-vpshld-O0-1.c: Ditto.
> >* gcc.target/i386/avx512vbmi2-vpshrd-1.c: Ditto.
> >* gcc.target/i386/avx512vbmi2-vpshrd-O0-1.c: Ditto.
> >* gcc.target/i386/avx512vl-vpshld-O0-1.c: Ditto.
> >* gcc.target/i386/avx512vl-vpshrd-O0-1.c: Ditto.
>
> This is obvious patch, so OK for mainline and backports.
>
>
Can you please also add missing -mavx512vbmi2 to c++ testcases
g++.dg/other/i386-2.C and i386-3.C? Patch is pre-approved if tested
appropriately.

Thanks,
Uros.


Re: [PATCH]Several intrinsic macros lack a closing parenthesis[PR93274]

2020-02-18 Thread Hongtao Liu
On Tue, Feb 18, 2020 at 4:24 PM Uros Bizjak  wrote:
>
>
>
> On Thu, Feb 13, 2020 at 9:39 AM Uros Bizjak  wrote:
>>
>> > Changelog
>> > gcc/
>> >* config/i386/avx512vbmi2intrin.h
>> >(_mm512_[,mask_,maskz_]shrdi_epi16,
>> >_mm512_[,mask_,maskz_]shrdi_epi32,
>> >_m512_[,mask_,maskz_]shrdi_epi64,
>> >_mm512_[,mask_,maskz_]shldi_epi16,
>> >_mm512_[,mask_,maskz_]shldi_epi32,
>> >_m512_[,mask_,maskz_]shldi_epi64): Fix typo of lacking a
>> >closing parenthesis.
>> >* config/i386/avx512vbmi2vlintrin.h
>> >(_mm256_[,mask_,maskz_]shrdi_epi16,
>> >_mm256_[,mask_,maskz_]shrdi_epi32,
>> >_m256_[,mask_,maskz_]shrdi_epi64,
>> >_mm_[,mask_,maskz_]shrdi_epi16,
>> >_mm_[,mask_,maskz_]shrdi_epi32,
>> >_mm_[,mask_,maskz_]shrdi_epi64,
>> >_mm256_[,mask_,maskz_]shldi_epi16,
>> >_mm256_[,mask_,maskz_]shldi_epi32,
>> >_m256_[,mask_,maskz_]shldi_epi64,
>> >_mm_[,mask_,maskz_]shldi_epi16,
>> >_mm_[,mask_,maskz_]shldi_epi32,
>> >_mm_[,mask_,maskz_]shldi_epi64): Ditto.
>> >
>> > gcc/testsuite/
>> >* gcc.target/i386/avx512vbmi2-vpshld-1.c: New test.
>> >* gcc.target/i386/avx512vbmi2-vpshld-O0-1.c: Ditto.
>> >* gcc.target/i386/avx512vbmi2-vpshrd-1.c: Ditto.
>> >* gcc.target/i386/avx512vbmi2-vpshrd-O0-1.c: Ditto.
>> >* gcc.target/i386/avx512vl-vpshld-O0-1.c: Ditto.
>> >* gcc.target/i386/avx512vl-vpshrd-O0-1.c: Ditto.
>>
>> This is obvious patch, so OK for mainline and backports.
>>
>
> Can you please also add missing -mavx512vbmi2 to c++ testcases 
> g++.dg/other/i386-2.C and i386-3.C? Patch is pre-approved if tested 
> appropriately.
>
> Thanks,
> Uros.
>

Will do.

-- 
BR,
Hongtao


Re: [PATCH]Several intrinsic macros lack a closing parenthesis[PR93274]

2020-02-18 Thread Hongtao Liu
On Tue, Feb 18, 2020 at 7:00 PM Hongtao Liu  wrote:
>
> On Tue, Feb 18, 2020 at 4:24 PM Uros Bizjak  wrote:
> >
> >
> >
> > On Thu, Feb 13, 2020 at 9:39 AM Uros Bizjak  wrote:
> >>
> >> > Changelog
> >> > gcc/
> >> >* config/i386/avx512vbmi2intrin.h
> >> >(_mm512_[,mask_,maskz_]shrdi_epi16,
> >> >_mm512_[,mask_,maskz_]shrdi_epi32,
> >> >_m512_[,mask_,maskz_]shrdi_epi64,
> >> >_mm512_[,mask_,maskz_]shldi_epi16,
> >> >_mm512_[,mask_,maskz_]shldi_epi32,
> >> >_m512_[,mask_,maskz_]shldi_epi64): Fix typo of lacking a
> >> >closing parenthesis.
> >> >* config/i386/avx512vbmi2vlintrin.h
> >> >(_mm256_[,mask_,maskz_]shrdi_epi16,
> >> >_mm256_[,mask_,maskz_]shrdi_epi32,
> >> >_m256_[,mask_,maskz_]shrdi_epi64,
> >> >_mm_[,mask_,maskz_]shrdi_epi16,
> >> >_mm_[,mask_,maskz_]shrdi_epi32,
> >> >_mm_[,mask_,maskz_]shrdi_epi64,
> >> >_mm256_[,mask_,maskz_]shldi_epi16,
> >> >_mm256_[,mask_,maskz_]shldi_epi32,
> >> >_m256_[,mask_,maskz_]shldi_epi64,
> >> >_mm_[,mask_,maskz_]shldi_epi16,
> >> >_mm_[,mask_,maskz_]shldi_epi32,
> >> >_mm_[,mask_,maskz_]shldi_epi64): Ditto.
> >> >
> >> > gcc/testsuite/
> >> >* gcc.target/i386/avx512vbmi2-vpshld-1.c: New test.
> >> >* gcc.target/i386/avx512vbmi2-vpshld-O0-1.c: Ditto.
> >> >* gcc.target/i386/avx512vbmi2-vpshrd-1.c: Ditto.
> >> >* gcc.target/i386/avx512vbmi2-vpshrd-O0-1.c: Ditto.
> >> >* gcc.target/i386/avx512vl-vpshld-O0-1.c: Ditto.
> >> >* gcc.target/i386/avx512vl-vpshrd-O0-1.c: Ditto.
> >>
> >> This is obvious patch, so OK for mainline and backports.
> >>
> >
> > Can you please also add missing -mavx512vbmi2 to c++ testcases 
> > g++.dg/other/i386-2.C and i386-3.C? Patch is pre-approved if tested 
> > appropriately.
> >
> > Thanks,
> > Uros.
> >
>
> Will do.
>
> --
> BR,
> Hongtao

Done, also port to gcc-8 and gcc-9.

-- 
BR,
Hongtao