Hi Matthias,

Looking at [1], we are seeing this error only for bare-metal 32-bit ARM target, 
which, I believe, is not a configuration that compiler explorer supports.  The 
specific configurations are either soft-float, or target ARM cores without NEON 
(aka no SIMD FPU).

Maybe the test should be guarded on the target supporting vectorization?  I.e., 
maybe add
// { dg-require-effective-target vect_int }
?

[1] https://linaro.atlassian.net/browse/GNU-1265

--
Maxim Kuvyrkov
https://www.linaro.org

> On Jun 21, 2024, at 19:03, Matthias Kretz via Gcc-regression 
> <gcc-regress...@gcc.gnu.org> wrote:
> 
> 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-toolchain@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
> ──────────────────────────────────────────────────────────────────────────

_______________________________________________
linaro-toolchain mailing list -- linaro-toolchain@lists.linaro.org
To unsubscribe send an email to linaro-toolchain-le...@lists.linaro.org

Reply via email to