[PATCH v4 0/4] Implement extents from the mdspan header.
Tomasz Kaminski
tkaminsk@redhat.com
Fri Apr 18 12:07:53 GMT 2025
On Fri, Apr 18, 2025 at 1:56 PM Luc Grosheintz <luc.grosheintz@gmail.com>
wrote:
> I have a question about how to proceed. First we finish the
> refinement of the current commits. Then I could:
>
> 1. start a new patch series for layout_*;
> 2. or add new commits to the current series for layout_*.
>
My personal preference would be for 2, patch per one layout.
>
> The advantage of 2. is that we can do more tests before merging
> anything into trunk. For example, we can check that the mapping
> of multi-indices to flat indices (i.e. the job of layout_*) is
> efficient. In particular, we can make sure that there's nothing
> in extents that prevents generating efficient code.
>
We can make adjustment until the C++23 is no longer mark as experimental,
and as we just started the GCC 16 branch, there would be nearly a year to
make adjustments,
before anybody will see current code. So there is no concerns in changing
the extents
in later commits.
>
> I'm open to both options and would prefer doing whatever is more
> convenient to the reviewers and maintainers.
>
> On 4/18/25 1:29 PM, Luc Grosheintz wrote:
> > This is the fourth interation and replaces:
> > https://gcc.gnu.org/pipermail/libstdc++/2025-April/061046.html
> >
> > Changes since v3:
> > * Use `_S_` prefix for static member functions.
> > * Use consteval to reduce code size.
> > * Simplify ctors of _ExtentsStorage.
> > * Added a test to cover the mandates of std::extents.
> >
> > Luc Grosheintz (4):
> > libstdc++: Setup internal FTM for mdspan.
> > libstdc++: Add header mdspan to the build-system.
> > libstdc++: Implement std::extents [PR107761].
> > libstdc++: Add tests for std::extents.
> >
> > libstdc++-v3/doc/doxygen/user.cfg.in | 1 +
> > libstdc++-v3/include/Makefile.am | 1 +
> > libstdc++-v3/include/Makefile.in | 1 +
> > libstdc++-v3/include/bits/version.def | 9 +
> > libstdc++-v3/include/bits/version.h | 9 +
> > libstdc++-v3/include/precompiled/stdc++.h | 1 +
> > libstdc++-v3/include/std/mdspan | 297 ++++++++++++++++++
> > libstdc++-v3/src/c++23/std.cc.in | 6 +-
> > .../mdspan/extents/class_mandates_neg.cc | 8 +
> > .../23_containers/mdspan/extents/ctor_copy.cc | 82 +++++
> > .../23_containers/mdspan/extents/ctor_ints.cc | 62 ++++
> > .../mdspan/extents/ctor_shape.cc | 160 ++++++++++
> > .../mdspan/extents/custom_integer.cc | 87 +++++
> > .../23_containers/mdspan/extents/misc.cc | 223 +++++++++++++
> > 14 files changed, 946 insertions(+), 1 deletion(-)
> > create mode 100644 libstdc++-v3/include/std/mdspan
> > create mode 100644
> libstdc++-v3/testsuite/23_containers/mdspan/extents/class_mandates_neg.cc
> > create mode 100644
> libstdc++-v3/testsuite/23_containers/mdspan/extents/ctor_copy.cc
> > create mode 100644
> libstdc++-v3/testsuite/23_containers/mdspan/extents/ctor_ints.cc
> > create mode 100644
> libstdc++-v3/testsuite/23_containers/mdspan/extents/ctor_shape.cc
> > create mode 100644
> libstdc++-v3/testsuite/23_containers/mdspan/extents/custom_integer.cc
> > create mode 100644
> libstdc++-v3/testsuite/23_containers/mdspan/extents/misc.cc
> >
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://gcc.gnu.org/pipermail/libstdc++/attachments/20250418/2f5fc9ce/attachment.htm>
More information about the Libstdc++
mailing list