[RFC] libstc++: Implement gather and scatter

yaozhongxiao yaozhongxiao@linux.alibaba.com
Thu Feb 18 13:12:14 GMT 2021


Memory load/store in gather and scatter mode with simd are common cases.
I try to support the gather and scatter features in my workload.
I send my draft to request for comment and suggestions before officially commits, 
Please do not hesitate to correct and comment, thanks.

Dr. Matthias Kretz, thank you very much for your work in simd, 
and hope to look forward to get suggestion from you.

--------------------------------------------------------------
 libstc++: Implement gather and scatter
    memory load/store in gather and scatter mode with simd are common
    cases. Implement them in simd via call to _S_gather and _S_scatter
    with it's Abi method.

    libstdc++-v3/ChangeLog:

            * include/experimental/bits/simd.h: Add simd::gather and 
            simd::scatter as the public methods.
            * include/experimental/bits/simd_builtin.h: Add 
            _SimdImplBuiltin::_S_gather and _SimdImplBuiltin::_S_scatter
            for simd native abi implementation.
            * include/experimental/bits/simd_fixed_size.h: Add 
            _SimdImplFixedSize::_S_gather and _SimdImplFixedSize::_S_scatter
            for simd fix abi implementation;
            _SimdTuple::_M_tuple_at for tuple accessing
            * include/experimental/bits/ssimd_scalar: Add 
            _SimdImplScalar::_S_gather and _SimdImplScalar::_S_scatter
            for simd scalar abi implementation.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: patch.txt
Type: application/octet-stream
Size: 10375 bytes
Desc: not available
URL: <https://gcc.gnu.org/pipermail/libstdc++/attachments/20210218/d896b97d/attachment.obj>


More information about the Libstdc++ mailing list