public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/98894] New: New test case experimental/simd/standard_abi_usable.cc in r11-6935 fails on power 7
@ 2021-01-29 19:22 seurer at gcc dot gnu.org
  2021-01-29 23:15 ` [Bug target/98894] " kretz at kde dot org
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: seurer at gcc dot gnu.org @ 2021-01-29 19:22 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98894

            Bug ID: 98894
           Summary: New test case experimental/simd/standard_abi_usable.cc
                    in r11-6935 fails on power 7
           Product: gcc
           Version: 11.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: seurer at gcc dot gnu.org
  Target Milestone: ---

g:2bcceb6fc59fcdaf51006d4fcfc71c2d26761396, r11-6935

This only appears to fail on power 7:

make  -k check
RUNTESTFLAGS="conformance.exp=experimental/simd/standard_abi_usable.cc"
FAIL: experimental/simd/standard_abi_usable.cc -maltivec -mvsx
-mno-allow-movmisalign -O2 -Wno-psabi (test for excess errors)
# of unexpected failures        1


spawn -ignore SIGHUP /home/seurer/gcc/git/build/gcc-test/./gcc/xg++
-shared-libgcc -B/home/seurer/gcc/git/build/gcc-test/./gcc -nostdinc++
-L/home/seurer/gcc/git/build/gcc-test/powerpc64-unknown-linux-gnu/libstdc++-v3/src
-L/home/seurer/gcc/git/build/gcc-test/powerpc64-unknown-linux-gnu/libstdc++-v3/src/.libs
-L/home/seurer/gcc/git/build/gcc-test/powerpc64-unknown-linux-gnu/libstdc++-v3/libsupc++/.libs
-B/home/seurer/gcc/git/install/gcc-test/powerpc64-unknown-linux-gnu/bin/
-B/home/seurer/gcc/git/install/gcc-test/powerpc64-unknown-linux-gnu/lib/
-isystem
/home/seurer/gcc/git/install/gcc-test/powerpc64-unknown-linux-gnu/include
-isystem
/home/seurer/gcc/git/install/gcc-test/powerpc64-unknown-linux-gnu/sys-include
-B/home/seurer/gcc/git/build/gcc-test/powerpc64-unknown-linux-gnu/./libstdc++-v3/src/.libs
-fmessage-length=0 -fno-show-column -ffunction-sections -fdata-sections -g -O2
-D_GNU_SOURCE -DLOCALEDIR="." -nostdinc++
-I/home/seurer/gcc/git/build/gcc-test/powerpc64-unknown-linux-gnu/libstdc++-v3/include/powerpc64-unknown-linux-gnu
-I/home/seurer/gcc/git/build/gcc-test/powerpc64-unknown-linux-gnu/libstdc++-v3/include
-I/home/seurer/gcc/git/gcc-test/libstdc++-v3/libsupc++
-I/home/seurer/gcc/git/gcc-test/libstdc++-v3/include/backward
-I/home/seurer/gcc/git/gcc-test/libstdc++-v3/testsuite/util
/home/seurer/gcc/git/gcc-test/libstdc++-v3/testsuite/experimental/simd/standard_abi_usable.cc
-maltivec -mvsx -mno-allow-movmisalign -O2 -Wno-psabi -std=c++17 -fno-fast-math
-fdiagnostics-plain-output -S -o standard_abi_usable.s
In file included from
/home/seurer/gcc/git/build/gcc-test/powerpc64-unknown-linux-gnu/libstdc++-v3/include/experimental/simd:53,
                 from
/home/seurer/gcc/git/gcc-test/libstdc++-v3/testsuite/experimental/simd/standard_abi_usable.cc:21:
/home/seurer/gcc/git/build/gcc-test/powerpc64-unknown-linux-gnu/libstdc++-v3/include/experimental/bits/simd.h:
In instantiation of 'struct
std::experimental::parallelism_v2::__intrinsic_type<long int, 16, void>':
/home/seurer/gcc/git/build/gcc-test/powerpc64-unknown-linux-gnu/libstdc++-v3/include/experimental/bits/simd_builtin.h:812:
  recursively required by substitution of 'template<class _Tp, long unsigned
int _Width> struct std::experimental::parallelism_v2::_SimdWrapper<_Tp, _Width,
std::void_t<typename std::experimental::parallelism_v2::__vector_type_n<_Tp,
_Size, void>::type, typename
std::experimental::parallelism_v2::__intrinsic_type<_Tp, (_Size * sizeof
(_Tp)), void>::type> > [with _Tp = long int; long unsigned int _Width = 2]'
/home/seurer/gcc/git/build/gcc-test/powerpc64-unknown-linux-gnu/libstdc++-v3/include/experimental/bits/simd_builtin.h:812:
  required from 'constexpr const size_t
std::experimental::parallelism_v2::_GnuTraits<double, long int,
std::experimental::parallelism_v2::simd_abi::_VecBuiltin<16>,
2>::_S_mask_align'
/home/seurer/gcc/git/build/gcc-test/powerpc64-unknown-linux-gnu/libstdc++-v3/include/experimental/bits/simd.h:4454:
  required from 'class std::experimental::parallelism_v2::simd_mask<double,
std::experimental::parallelism_v2::simd_abi::_VecBuiltin<16> >'
/home/seurer/gcc/git/build/gcc-test/powerpc64-unknown-linux-gnu/libstdc++-v3/include/experimental/bits/simd.h:4999:
  required from 'class std::experimental::parallelism_v2::simd<double,
std::experimental::parallelism_v2::simd_abi::_VecBuiltin<16> >'
/home/seurer/gcc/git/build/gcc-test/powerpc64-unknown-linux-gnu/libstdc++-v3/include/type_traits:906:
  required from 'struct
std::__is_constructible_impl<std::experimental::parallelism_v2::simd<double,
std::experimental::parallelism_v2::simd_abi::_VecBuiltin<16> > >'
/home/seurer/gcc/git/build/gcc-test/powerpc64-unknown-linux-gnu/libstdc++-v3/include/type_traits:920:
  required from 'struct
std::is_default_constructible<std::experimental::parallelism_v2::simd<double,
std::experimental::parallelism_v2::simd_abi::_VecBuiltin<16> > >'
/home/seurer/gcc/git/build/gcc-test/powerpc64-unknown-linux-gnu/libstdc++-v3/include/type_traits:3104:
  required from 'constexpr const bool
std::is_default_constructible_v<std::experimental::parallelism_v2::simd<double,
std::experimental::parallelism_v2::simd_abi::_VecBuiltin<16> > >'
/home/seurer/gcc/git/gcc-test/libstdc++-v3/testsuite/experimental/simd/standard_abi_usable.cc:27:
  required from 'void is_usable() [with V =
std::experimental::parallelism_v2::simd<double,
std::experimental::parallelism_v2::simd_abi::_VecBuiltin<16> >]'
/home/seurer/gcc/git/gcc-test/libstdc++-v3/testsuite/experimental/simd/standard_abi_usable.cc:39:
  required from 'void test01() [with T = double]'
/home/seurer/gcc/git/gcc-test/libstdc++-v3/testsuite/experimental/simd/standard_abi_usable.cc:62:
  required from here
/home/seurer/gcc/git/build/gcc-test/powerpc64-unknown-linux-gnu/libstdc++-v3/include/experimental/bits/simd.h:2234:
error: static assertion failed: no __intrinsic_type support for integers larger
than 4 Bytes on PPC w/o POWER8 vectors
/home/seurer/gcc/git/build/gcc-test/powerpc64-unknown-linux-gnu/libstdc++-v3/include/experimental/bits/simd.h:2234:
note: '((!(bool)std::is_integral_v<long int>) || (sizeof (long int) <= 4))'
evaluates to false
compiler exited with status 1
FAIL: experimental/simd/standard_abi_usable.cc -maltivec -mvsx
-mno-allow-movmisalign -O2 -Wno-psabi (test for excess errors)
Excess errors:
/home/seurer/gcc/git/build/gcc-test/powerpc64-unknown-linux-gnu/libstdc++-v3/include/experimental/bits/simd.h:2234:
error: static assertion failed: no __intrinsic_type support for integers larger
than 4 Bytes on PPC w/o POWER8 vectors

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug target/98894] New test case experimental/simd/standard_abi_usable.cc in r11-6935 fails on power 7
  2021-01-29 19:22 [Bug target/98894] New: New test case experimental/simd/standard_abi_usable.cc in r11-6935 fails on power 7 seurer at gcc dot gnu.org
@ 2021-01-29 23:15 ` kretz at kde dot org
  2021-02-01 11:14 ` [Bug testsuite/98894] " redi at gcc dot gnu.org
  2021-03-24 14:40 ` redi at gcc dot gnu.org
  2 siblings, 0 replies; 4+ messages in thread
From: kretz at kde dot org @ 2021-01-29 23:15 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98894

--- Comment #1 from Matthias Kretz (Vir) <kretz at kde dot org> ---
I already posted a fix on the gcc-patches and libstdc++ lists:

libstdc++-v3/ChangeLog:
        * include/experimental/bits/simd.h: Remove unnecessary static
        assertion. Allow sizeof(8) integer __intrinsic_type to enable
        the necessary mask type.
---
 libstdc++-v3/include/experimental/bits/simd.h | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/libstdc++-v3/include/experimental/bits/simd.h b/libstdc++-v3/
include/experimental/bits/simd.h
index 64cf8d32328..9685df0be9e 100644
--- a/libstdc++-v3/include/experimental/bits/simd.h
+++ b/libstdc++-v3/include/experimental/bits/simd.h
@@ -2292,12 +2292,6 @@ template <typename _Tp, size_t _Bytes>
 #ifndef __VSX__
     static_assert(!is_same_v<_Tp, double>,
                  "no __intrinsic_type support for double on PPC w/o VSX");
-#endif
-#ifndef __POWER8_VECTOR__
-    static_assert(
-      !(is_integral_v<_Tp> && sizeof(_Tp) > 4),
-      "no __intrinsic_type support for integers larger than 4 Bytes "
-      "on PPC w/o POWER8 vectors");
 #endif
     using type =
       typename __intrinsic_type_impl<


That was a thinko: the fact that a certain set of instructions doesn't exist on
POWER7 doesn't imply that the type isn't usable. The static_assert was simply
wrong.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug testsuite/98894] New test case experimental/simd/standard_abi_usable.cc in r11-6935 fails on power 7
  2021-01-29 19:22 [Bug target/98894] New: New test case experimental/simd/standard_abi_usable.cc in r11-6935 fails on power 7 seurer at gcc dot gnu.org
  2021-01-29 23:15 ` [Bug target/98894] " kretz at kde dot org
@ 2021-02-01 11:14 ` redi at gcc dot gnu.org
  2021-03-24 14:40 ` redi at gcc dot gnu.org
  2 siblings, 0 replies; 4+ messages in thread
From: redi at gcc dot gnu.org @ 2021-02-01 11:14 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98894

Jonathan Wakely <redi at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|                            |2021-02-01
             Status|UNCONFIRMED                 |ASSIGNED
   Target Milestone|---                         |11.0
     Ever confirmed|0                           |1
           Assignee|unassigned at gcc dot gnu.org      |redi at gcc dot gnu.org

--- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Yeah this fix is in my queue.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug testsuite/98894] New test case experimental/simd/standard_abi_usable.cc in r11-6935 fails on power 7
  2021-01-29 19:22 [Bug target/98894] New: New test case experimental/simd/standard_abi_usable.cc in r11-6935 fails on power 7 seurer at gcc dot gnu.org
  2021-01-29 23:15 ` [Bug target/98894] " kretz at kde dot org
  2021-02-01 11:14 ` [Bug testsuite/98894] " redi at gcc dot gnu.org
@ 2021-03-24 14:40 ` redi at gcc dot gnu.org
  2 siblings, 0 replies; 4+ messages in thread
From: redi at gcc dot gnu.org @ 2021-03-24 14:40 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98894

Jonathan Wakely <redi at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |FIXED
             Status|ASSIGNED                    |RESOLVED

--- Comment #3 from Jonathan Wakely <redi at gcc dot gnu.org> ---
This was committed last month as r11-7071

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2021-03-24 14:40 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-29 19:22 [Bug target/98894] New: New test case experimental/simd/standard_abi_usable.cc in r11-6935 fails on power 7 seurer at gcc dot gnu.org
2021-01-29 23:15 ` [Bug target/98894] " kretz at kde dot org
2021-02-01 11:14 ` [Bug testsuite/98894] " redi at gcc dot gnu.org
2021-03-24 14:40 ` redi at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).