Hi, I looked into this and still don't understand how to reproduce it.
The issue as logged in libstdc++.log is a call from find_last_set(simd_mask<int, _VecBuiltin<16>>) to _MaskImplNeonMixin::_S_to_bits, which calls vpadd_s32 with two [[gnu::vector_size(8)]] int arguments. The CI compiler complains "error: cannot convert '__vector(2) int' to 'int32x2_t'". Why is that an error on your side and not on any compiler I have at hand? https://compiler-explorer.com/z/88WhcM7Kb not an error here. In any case, the new test only exposes an existing issue in the <experimental/ simd> implementation (or its interaction with some variants of GCC?). The change did not introduce a new bug to libstdc++. Best, Matthias On Friday, 21 June 2024 17:00:23 GMT+2 ci_not...@linaro.org wrote: > Dear contributor, our automatic CI has detected problems related to your > patch(es). Please find some details below. If you have any questions, > please follow up on linaro-toolch...@lists.linaro.org mailing list, > Libera's #linaro-tcwg channel, or ping your favourite Linaro toolchain > developer on the usual project channel. > > We appreciate that it might be difficult to find the necessary logs or > reproduce the issue locally. If you can't get what you need from our CI > within minutes, let us know and we will be happy to help. > > We track this report status in https://linaro.atlassian.net/browse/GNU-1265 > , please let us know if you are looking at the problem and/or when you have > a fix. > In arm-eabi v7-a softfp after: > | commit gcc-15-1500-g1340ddea015 > | Author: Matthias Kretz <m.kr...@gsi.de> > | Date: Fri Jun 14 15:11:25 2024 +0200 > | > | libstdc++: Fix find_last_set(simd_mask) to ignore padding bits > | > | With the change to the AVX512 find_last_set implementation, the > | change > | to AVX512 operator!= is unnecessary. However, the latter was not > | producing optimal code and unnecessarily set the padding bits. In > | theory, the compiler could determine that with the new != > | implementation, the bit operation for clearing the padding bits is a > | > | ... 13 lines of the commit log omitted. > > FAIL: 2 regressions > > regressions.sum: > === libstdc++ tests === > > Running libstdc++:libstdc++-dg/conformance.exp ... > FAIL: experimental/simd/pr115454_find_last_set.cc -mfpu=neon -ffast-math -O2 > -Wno-psabi (test for excess errors) UNRESOLVED: > experimental/simd/pr115454_find_last_set.cc -mfpu=neon -ffast-math -O2 > -Wno-psabi compilation failed to produce executable > > > You can find the failure logs in *.log.1.xz files in > - > https://ci.linaro.org/job/tcwg_gnu_embed_check_gcc--master-arm_v7a_softfp_e > abi-build/512/artifact/artifacts/00-sumfiles/ The full lists of regressions > and progressions as well as configure and make commands are in - > https://ci.linaro.org/job/tcwg_gnu_embed_check_gcc--master-arm_v7a_softfp_e > abi-build/512/artifact/artifacts/notify/ The list of [ignored] baseline and > flaky failures are in > - > https://ci.linaro.org/job/tcwg_gnu_embed_check_gcc--master-arm_v7a_softfp_e > abi-build/512/artifact/artifacts/sumfiles/xfails.xfail > > The configuration of this build is: > CI config tcwg_gnu_embed_check_gcc arm-eabi -marm -march=armv7-a > -mfpu=vfpv3-d16 -mfloat-abi=softfp > > -----------------8<--------------------------8<--------------------------8<- > ------------------------- The information below can be used to reproduce a > debug environment: > > Current build : > https://ci.linaro.org/job/tcwg_gnu_embed_check_gcc--master-arm_v7a_softfp_e > abi-build/512/artifact/artifacts Reference build : > https://ci.linaro.org/job/tcwg_gnu_embed_check_gcc--master-arm_v7a_softfp_e > abi-build/511/artifact/artifacts > > Reproduce last good and first bad builds: > https://git-us.linaro.org/toolchain/ci/interesting-commits.git/plain/gcc/sh > a1/1340ddea0158de3f49aeb75b4013e5fc313ff6f4/tcwg_gnu_embed_check_gcc/master- > arm_v7a_softfp_eabi/reproduction_instructions.txt > > Full commit : > https://github.com/gcc-mirror/gcc/commit/1340ddea0158de3f49aeb75b4013e5fc31 > 3ff6f4 > > List of configurations that regressed due to this commit : > * tcwg_gnu_embed_check_gcc > ** master-arm_v7a_softfp_eabi > *** FAIL: 2 regressions > *** > https://git-us.linaro.org/toolchain/ci/interesting-commits.git/plain/gcc/sh > a1/1340ddea0158de3f49aeb75b4013e5fc313ff6f4/tcwg_gnu_embed_check_gcc/master- > arm_v7a_softfp_eabi/details.txt *** > https://ci.linaro.org/job/tcwg_gnu_embed_check_gcc--master-arm_v7a_softfp_e > abi-build/512/artifact/artifacts -- ────────────────────────────────────────────────────────────────────────── Dr. Matthias Kretz https://mattkretz.github.io GSI Helmholtz Center for Heavy Ion Research https://gsi.de std::simd ──────────────────────────────────────────────────────────────────────────
signature.asc
Description: This is a digitally signed message part.