On Tue, Aug 6, 2019 at 11:02 PM Uros Bizjak <ubiz...@gmail.com> wrote: > > On Tue, Aug 6, 2019 at 1:16 PM Rainer Orth <r...@cebitec.uni-bielefeld.de> > wrote: > > > > Hi Hongtao, > > > > > On Thu, Jun 27, 2019 at 5:38 PM Rainer Orth > > > <r...@cebitec.uni-bielefeld.de> wrote: > > >> > > >> Hi Hongtao, > > >> > > >> > On Thu, Jun 27, 2019 at 5:02 PM Rainer Orth > > >> > <r...@cebitec.uni-bielefeld.de> wrote: > > >> >> > > >> >> Hi Hongtao, > > >> >> > > >> >> >> as usual, the new effective-target keyword needs documenting in > > >> >> >> sourcebuild.texi. > > >> >> > Like this? > > >> >> > > >> >> a couple of nits: first of all, your mailer seems to replace tabs by a > > >> >> single space. Please fix this or attach the patch instead. > > >> >> > > >> >> > Index: ChangeLog > > >> >> > =================================================================== > > >> >> > --- ChangeLog (revision 272668) > > >> >> > +++ ChangeLog (working copy) > > >> >> > @@ -1,3 +1,8 @@ > > >> >> > +2019-06-27 Hongtao Liu <hongtao....@intel.com> > > >> >> > + > > >> >> > + * doc/sourcebuild.texi: Document new effective target keyword > > >> >> > + avx512vp2intersect. > > >> >> > > >> >> Please include the sections you're modifying, something like > > >> >> > > >> >> * doc/sourcebuild.texi (Effective-Target Keywords, Other > > >> >> hardware attributes): Document avx512vp2intersect. > > >> >> > > >> >> And please don't include the ChangeLog in the patch, but include it in > > >> >> the mail proper: it won't apply due to date and context changes > > >> >> anyway. > > >> >> Best review https://gcc.gnu.org/contribute.html where this is > > >> >> documented > > >> >> besides other points of patch submission. > > >> >> > > >> >> Besides, it's most likely useful to also review the GNU Coding > > >> >> Standards, too, not only for ChangeLog formatting. > > >> >> > > >> >> > Index: testsuite/ChangeLog > > >> >> > =================================================================== > > >> >> > --- testsuite/ChangeLog (revision 272668) > > >> >> > +++ testsuite/ChangeLog (working copy) > > >> >> > @@ -1,3 +1,11 @@ > > >> >> > +2019-06-27 Hongtao Liu <hongtao....@intel.com> > > >> >> > + > > >> >> > + * lib/target-supports.exp: Add > > >> >> > + check_effective_target_avx512vp2intersect. > > >> >> > > >> >> Use > > >> >> > > >> >> * lib/target-supports.exp > > >> >> (check_effective_target_avx512vp2intersect): New proc. > > >> >> > > >> >> > + * gcc.target/i386/avx512vp2intersect-2intersect-1b.c: Add > > >> >> > + dg-require-effective-target avx512vp2intersect. > > >> >> > > >> >> Better: > > >> >> > > >> >> * gcc.target/i386/avx512vp2intersect-2intersect-1b.c: Require > > >> >> avx512vp2intersect. > > >> >> > > >> >> but that's a matter of preference. > > >> >> > > >> >> > Index: testsuite/gcc.target/i386/avx512vp2intersect-2intersect-1b.c > > >> >> > =================================================================== > > >> >> > --- testsuite/gcc.target/i386/avx512vp2intersect-2intersect-1b.c > > >> >> > (revision 272668) > > >> >> > +++ testsuite/gcc.target/i386/avx512vp2intersect-2intersect-1b.c > > >> >> > (working copy) > > >> >> > @@ -1,5 +1,6 @@ > > >> >> > /* { dg-do run } */ > > >> >> > /* { dg-options "-O2 -mavx512vp2intersect" } */ > > >> >> > +/* { dg-require-effective-target "avx512vp2intersect" } */ > > >> >> > > >> >> No need to quote avx512vp2intersect here and in the next test. > > >> >> > > >> >> Ok with those nits fixed. > > >> >> > > >> > Yes, thanks a lot. > > >> >> Thanks. > > >> >> Rainer > > >> >> > > >> >> -- > > >> >> ----------------------------------------------------------------------------- > > >> >> Rainer Orth, Center for Biotechnology, Bielefeld University > > >> > > > >> > Ok for trunk? > > >> > > >> ENOPATCH > > > Sorry, Here is the patch. > > >> > > >> -- > > >> ----------------------------------------------------------------------------- > > >> Rainer Orth, Center for Biotechnology, Bielefeld University > > > > > > > > > Changelog > > > > > > gcc/ > > > +2019-06-27 Hongtao Liu <hongtao....@intel.com> > > > + > > > + * doc/sourcebuild.texi (Effective-Target Keywords, Other > > > + hardware attributes): Document avx512vp2intersect. > > > + > > > > > > gcc/testsuite/ > > > +2019-06-27 Hongtao Liu <hongtao....@intel.com> > > > + > > > + * lib/target-supports.exp > > > + (check_effective_target_avx512vp2intersect): New proc. > > > + * gcc.target/i386/avx512vp2intersect-2intersect-1b.c: Add > > > + dg-require-effective-target avx512vp2intersect. > > > + * gcc.target/i386/avx512vp2intersect-2intersectvl-1b.c: Ditto. > > > + > > > > unfortunately, the testcases are still not right. While with gas 2.32 > > they now come up as UNSUPPORTED, I've now tried a mainline bootstrap on > > i386-pc-solaris2.11 with gas from binutils master. Doing so, I get > > > > +FAIL: gcc.target/i386/avx512vp2intersect-2intersect-1b.c execution test > > +FAIL: gcc.target/i386/avx512vp2intersect-2intersectvl-1b.c execution test > > > > for both 32 and 64-bit, and there are similar results on > > gcc-testresults for x86_64-pc-linux-gnu. > > > > Running one of the testcases under gdb shows > > > > Thread 2 received signal SIGILL, Illegal instruction. > > [Switching to Thread 1 (LWP 1)] > > 0x08050d89 in do_test () > > 1: x/i $pc > > => 0x8050d89 <do_test+25>: (bad) > > > > or with objdump 2.32: > > > > 8050d89: 62 f2 ff 48 68 (bad) > > > > Using objdump from binutils master shows > > > > 8050d89: 62 f2 ff 48 68 05 80 vp2intersectq 0x8050a80,%zmm0,%k0 > > > > Currently, the testcases only check for AVX512F (which the machine in > > question supports: Xeon Gold 6132), while they need to check for > > AVX512VP2INTERSECT to avoid this. > > > > The following patch does this; tested on i386-pc-solaris2.11 with gas > > 2.32.51 both 32 and 64-bit where the tests PASS. > > > > Ok for mainline? > > OK. > > Thanks, > Uros. > > > > > Rainer > > > > -- > > ----------------------------------------------------------------------------- > > Rainer Orth, Center for Biotechnology, Bielefeld University > > > > > > 2019-08-06 Rainer Orth <r...@cebitec.uni-bielefeld.de> > > > > * gcc.target/i386/avx512vp2intersect-2intersect-1b.c (AVX512F): > > Remove. > > (AVX512VP2INTERSECT): Define. > > * gcc.target/i386/avx512vp2intersect-2intersectvl-1b.c (AVX512F): > > Remove. > > (AVX512VP2INTERSECT): Define. > >
Sorry for mistake and thanks. -- BR, Hongtao