[libcxx-commits] [libcxx] [libc++] <experimental/simd> Add unary operators for class simd (PR #104764)

Vladimir Vereschaka via libcxx-commits libcxx-commits at lists.llvm.org
Wed Oct 23 11:58:26 PDT 2024


vvereschaka wrote:

@joy2myself ,

The `simd_unary.pass` test gets failed for Armv7/Ubuntu target because of Clang crash.
```
# .---command stderr------------
# | Assertion failed: N->getValueType(0) == MVT::v1i1 && "Expected v1i1 type", file C:\buildbot\as-builder-1\x-armv7l\llvm-project\llvm\lib\CodeGen\SelectionDAG\LegalizeVectorTypes.cpp, line 947
# | PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
# | Stack dump:
# | 0.	Program arguments: C:\\buildbot\\as-builder-1\\x-armv7l\\build\\bin\\clang++.exe -cc1 -triple armv7-unknown-linux-gnueabihf -emit-obj -dumpdir C:\\buildbot\\as-builder-1\\x-armv7l\\build\\runtimes\\runtimes-armv7-unknown-linux-gnueabihf-bins\\libcxx\\test\\std\\experimental\\simd\\simd.class\\Output\\simd_unary.pass.cpp.dir\\t.tmp.exe- -disable-free -clear-ast-before-backend -main-file-name simd_unary.pass.cpp -mrelocation-model pic -pic-level 2 -pic-is-pie -mframe-pointer=all -fmath-errno -ffp-contract=on -fno-rounding-math -mconstructor-aliases -target-cpu generic -target-feature +vfp2 -target-feature +vfp2sp -target-feature +vfp3 -target-feature +vfp3d16 -target-feature +vfp3d16sp -target-feature +vfp3sp -target-feature -fp16 -target-feature -vfp4 -target-feature -vfp4d16 -target-feature -vfp4d16sp -target-feature -vfp4sp -target-feature -fp-armv8 -target-feature -fp-armv8d16 -target-feature -fp-armv8d16sp -target-feature -fp-armv8sp -target-feature -fullfp16 -target-feature +fp64 -target-feature +d32 -target-feature +neon -target-feature -sha2 -target-feature -aes -target-feature -fp16fml -target-abi aapcs-linux -mfloat-abi hard -debugger-tuning=gdb -fdebug-compilation-dir=C:\\buildbot\\as-builder-1\\x-armv7l\\build\\runtimes\\runtimes-armv7-unknown-linux-gnueabihf-bins\\libcxx\\test\\std\\experimental\\simd\\simd.class -fcoverage-compilation-dir=C:\\buildbot\\as-builder-1\\x-armv7l\\build\\runtimes\\runtimes-armv7-unknown-linux-gnueabihf-bins\\libcxx\\test\\std\\experimental\\simd\\simd.class -nostdinc++ -resource-dir C:\\buildbot\\as-builder-1\\x-armv7l\\build\\lib\\clang\\20 -I C:/buildbot/as-builder-1/x-armv7l/build/runtimes/runtimes-armv7-unknown-linux-gnueabihf-bins/libcxx/test-suite-install/include/c++/v1 -I C:/buildbot/as-builder-1/x-armv7l/build/runtimes/runtimes-armv7-unknown-linux-gnueabihf-bins/libcxx/test-suite-install/include/armv7-unknown-linux-gnueabihf/c++/v1 -I C:/buildbot/as-builder-1/x-armv7l/llvm-project/libcxx/test/support -D _LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER -D _LIBCPP_ENABLE_EXPERIMENTAL -D _LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_NONE -isysroot c:/buildbot/fs/jetson-tk1-arm-ubuntu -internal-isystem C:\\buildbot\\as-builder-1\\x-armv7l\\build\\lib\\clang\\20\\include -internal-isystem c:/buildbot/fs/jetson-tk1-arm-ubuntu/usr/local/include -internal-isystem c:/buildbot/fs/jetson-tk1-arm-ubuntu/usr/lib/gcc/arm-linux-gnueabihf/7/../../../../arm-linux-gnueabihf/include -internal-externc-isystem c:/buildbot/fs/jetson-tk1-arm-ubuntu/usr/include/arm-linux-gnueabihf -internal-externc-isystem c:/buildbot/fs/jetson-tk1-arm-ubuntu/include -internal-externc-isystem c:/buildbot/fs/jetson-tk1-arm-ubuntu/usr/include -Werror -Wall -Wctad-maybe-unsupported -Wextra -Wshadow -Wundef -Wunused-template -Wno-unused-command-line-argument -Wno-attributes -Wno-pessimizing-move -Wno-noexcept-type -Wno-atomic-alignment -Wno-reserved-module-identifier -Wdeprecated-copy -Wdeprecated-copy-dtor -Wno-user-defined-literals -Wno-tautological-compare -Wsign-compare -Wunused-variable -Wunused-parameter -Wunreachable-code -Wno-unused-local-typedef -Wno-local-type-template-args -Wno-c++11-extensions -Wno-unknown-pragmas -Wno-pass-failed -Wno-mismatched-new-delete -Wno-redundant-move -Wno-self-move -Werror=thread-safety -Wuser-defined-warnings -std=c++26 -fdeprecated-macro -ferror-limit 19 -pthread -fno-signed-char -fgnuc-version=4.2.1 -fno-implicit-modules -fskip-odr-check-in-gmf -fcxx-exceptions -fexceptions -faddrsig -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o C:\\buildbot\\as-builder-1\\x-armv7l\\build\\lit-tmp-9a6ljw1o\\simd_unary-64154a.o -x c++ C:\\buildbot\\as-builder-1\\x-armv7l\\llvm-project\\libcxx\\test\\std\\experimental\\simd\\simd.class\\simd_unary.pass.cpp
# | 1.	<eof> parser at end of file
# | 2.	Code generation
# | 3.	Running pass 'Function Pass Manager' on module 'C:\buildbot\as-builder-1\x-armv7l\llvm-project\libcxx\test\std\experimental\simd\simd.class\simd_unary.pass.cpp'.
# | 4.	Running pass 'ARM Instruction Selection' on function '@_ZNSt12experimental14parallelism_v217__simd_operationsIdNS0_8simd_abi9__vec_extILi1EEEE8__negateB8ne200000ENS0_14__simd_storageIdS4_EE'
# | Exception Code: 0x80000003
# |  #0 0x00007ff66a407965 (C:\buildbot\as-builder-1\x-armv7l\build\bin\clang++.exe+0xf37965)
...
```
https://lab.llvm.org/buildbot/#/builders/38/builds/460

https://github.com/llvm/llvm-project/pull/104764


More information about the libcxx-commits mailing list