[all-commits] [llvm/llvm-project] 639a09: [libc++] mdspan - implement layout_stride (#69650)

Christian Trott via All-commits all-commits at lists.llvm.org
Fri Oct 20 07:14:05 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 639a0986f3a34d52533a726e2a4193411cc1312f
      https://github.com/llvm/llvm-project/commit/639a0986f3a34d52533a726e2a4193411cc1312f
  Author: Christian Trott <crtrott at sandia.gov>
  Date:   2023-10-20 (Fri, 20 Oct 2023)

  Changed paths:
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/Status/Cxx23.rst
    M libcxx/docs/Status/Cxx23Papers.csv
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__fwd/mdspan.h
    M libcxx/include/__mdspan/layout_left.h
    M libcxx/include/__mdspan/layout_right.h
    A libcxx/include/__mdspan/layout_stride.h
    M libcxx/include/mdspan
    M libcxx/include/module.modulemap.in
    M libcxx/include/version
    M libcxx/modules/std/mdspan.inc
    A libcxx/test/libcxx/containers/views/mdspan/layout_left/assert.ctor.layout_stride.pass.cpp
    A libcxx/test/libcxx/containers/views/mdspan/layout_right/assert.ctor.layout_stride.pass.cpp
    A libcxx/test/libcxx/containers/views/mdspan/layout_stride/assert.conversion.pass.cpp
    A libcxx/test/libcxx/containers/views/mdspan/layout_stride/assert.ctor.extents_array.non_unique.pass.cpp
    A libcxx/test/libcxx/containers/views/mdspan/layout_stride/assert.ctor.extents_array.pass.cpp
    A libcxx/test/libcxx/containers/views/mdspan/layout_stride/assert.ctor.extents_span.non_unique.pass.cpp
    A libcxx/test/libcxx/containers/views/mdspan/layout_stride/assert.ctor.extents_span.pass.cpp
    A libcxx/test/libcxx/containers/views/mdspan/layout_stride/assert.index_operator.pass.cpp
    A libcxx/test/libcxx/containers/views/mdspan/layout_stride/assert.stride.pass.cpp
    M libcxx/test/libcxx/containers/views/mdspan/mdspan/assert.conversion.pass.cpp
    M libcxx/test/libcxx/containers/views/mdspan/mdspan/assert.size.pass.cpp
    M libcxx/test/libcxx/transitive_includes/cxx03.csv
    M libcxx/test/libcxx/transitive_includes/cxx11.csv
    M libcxx/test/libcxx/transitive_includes/cxx14.csv
    M libcxx/test/libcxx/transitive_includes/cxx17.csv
    M libcxx/test/libcxx/transitive_includes/cxx20.csv
    M libcxx/test/libcxx/transitive_includes/cxx23.csv
    M libcxx/test/libcxx/transitive_includes/cxx26.csv
    A libcxx/test/std/containers/views/mdspan/CustomTestLayouts.h
    A libcxx/test/std/containers/views/mdspan/layout_left/ctor.layout_stride.pass.cpp
    A libcxx/test/std/containers/views/mdspan/layout_right/ctor.layout_stride.pass.cpp
    A libcxx/test/std/containers/views/mdspan/layout_stride/comparison.pass.cpp
    A libcxx/test/std/containers/views/mdspan/layout_stride/ctor.default.pass.cpp
    A libcxx/test/std/containers/views/mdspan/layout_stride/ctor.extents_array.pass.cpp
    A libcxx/test/std/containers/views/mdspan/layout_stride/ctor.extents_span.pass.cpp
    A libcxx/test/std/containers/views/mdspan/layout_stride/ctor.strided_mapping.pass.cpp
    A libcxx/test/std/containers/views/mdspan/layout_stride/deduction.pass.cpp
    A libcxx/test/std/containers/views/mdspan/layout_stride/extents.verify.cpp
    A libcxx/test/std/containers/views/mdspan/layout_stride/index_operator.pass.cpp
    A libcxx/test/std/containers/views/mdspan/layout_stride/is_exhaustive_corner_case.pass.cpp
    A libcxx/test/std/containers/views/mdspan/layout_stride/properties.pass.cpp
    A libcxx/test/std/containers/views/mdspan/layout_stride/required_span_size.pass.cpp
    A libcxx/test/std/containers/views/mdspan/layout_stride/static_requirements.pass.cpp
    A libcxx/test/std/containers/views/mdspan/layout_stride/stride.pass.cpp
    R libcxx/test/std/containers/views/mdspan/mdspan/CustomTestLayouts.h
    M libcxx/test/std/containers/views/mdspan/mdspan/assign.pass.cpp
    M libcxx/test/std/containers/views/mdspan/mdspan/conversion.pass.cpp
    M libcxx/test/std/containers/views/mdspan/mdspan/conversion.verify.cpp
    M libcxx/test/std/containers/views/mdspan/mdspan/ctor.copy.pass.cpp
    M libcxx/test/std/containers/views/mdspan/mdspan/ctor.default.pass.cpp
    M libcxx/test/std/containers/views/mdspan/mdspan/ctor.dh_array.pass.cpp
    M libcxx/test/std/containers/views/mdspan/mdspan/ctor.dh_extents.pass.cpp
    M libcxx/test/std/containers/views/mdspan/mdspan/ctor.dh_integers.pass.cpp
    M libcxx/test/std/containers/views/mdspan/mdspan/ctor.dh_map.pass.cpp
    M libcxx/test/std/containers/views/mdspan/mdspan/ctor.dh_map_acc.pass.cpp
    M libcxx/test/std/containers/views/mdspan/mdspan/ctor.dh_span.pass.cpp
    M libcxx/test/std/containers/views/mdspan/mdspan/ctor.move.pass.cpp
    M libcxx/test/std/containers/views/mdspan/mdspan/deduction.pass.cpp
    M libcxx/test/std/containers/views/mdspan/mdspan/index_operator.pass.cpp
    M libcxx/test/std/containers/views/mdspan/mdspan/move.pass.cpp
    M libcxx/test/std/containers/views/mdspan/mdspan/properties.pass.cpp
    M libcxx/test/std/containers/views/mdspan/mdspan/swap.pass.cpp
    M libcxx/test/std/containers/views/mdspan/mdspan/types.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/mdspan.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    M libcxx/utils/data/ignore_format.txt
    M libcxx/utils/generate_feature_test_macro_components.py

  Log Message:
  -----------
  [libc++] mdspan - implement layout_stride (#69650)

This implements layout_stride for C++23 and with that completes the
implementation of the C++23 mdspan header. The feature test macro is
added, and the status pages updated.

Co-authored-by: Damien L-G <dalg24 at gmail.com>

Differential Revision: https://reviews.llvm.org/D157171




More information about the All-commits mailing list