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
> <[email protected]> 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 [email protected] 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 [email protected] 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 <[email protected]>
>> | 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 -- [email protected]
To unsubscribe send an email to [email protected]