diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt
index f06a7a6ceaa..c968d7c893b 100644
--- a/cpp/CMakeLists.txt
+++ b/cpp/CMakeLists.txt
@@ -996,7 +996,6 @@ add_library(
src/sort/sort_column.cu
src/sort/sort_radix.cu
src/sort/sorted_order_radix.cu
- src/sort/stable_segmented_sort.cu
src/sort/stable_sort_column.cu
src/sort/stable_sort.cu
src/sort/top_k.cu
diff --git a/cpp/src/sort/segmented_sort.cu b/cpp/src/sort/segmented_sort.cu
index 2a2144fa95a..2230c80d1bf 100644
--- a/cpp/src/sort/segmented_sort.cu
+++ b/cpp/src/sort/segmented_sort.cu
@@ -65,6 +65,30 @@ std::unique_ptr
segmented_sort_by_key(table_view const& values,
values, keys, segment_offsets, column_order, null_precedence, stream, mr);
}
+std::unique_ptr stable_segmented_sorted_order(
+ table_view const& keys,
+ column_view const& segment_offsets,
+ std::vector const& column_order,
+ std::vector const& null_precedence,
+ cuda::stream_ref stream,
+ rmm::device_async_resource_ref mr)
+{
+ return segmented_sorted_order_common(
+ keys, segment_offsets, column_order, null_precedence, stream, mr);
+}
+
+std::unique_ptr stable_segmented_sort_by_key(table_view const& values,
+ table_view const& keys,
+ column_view const& segment_offsets,
+ std::vector const& column_order,
+ std::vector const& null_precedence,
+ cuda::stream_ref stream,
+ rmm::device_async_resource_ref mr)
+{
+ return segmented_sort_by_key_common(
+ values, keys, segment_offsets, column_order, null_precedence, stream, mr);
+}
+
} // namespace detail
std::unique_ptr segmented_sorted_order(table_view const& keys,
@@ -92,4 +116,30 @@ std::unique_ptr segmented_sort_by_key(table_view const& values,
values, keys, segment_offsets, column_order, null_precedence, stream, mr);
}
+std::unique_ptr stable_segmented_sorted_order(
+ table_view const& keys,
+ column_view const& segment_offsets,
+ std::vector const& column_order,
+ std::vector const& null_precedence,
+ cuda::stream_ref stream,
+ rmm::device_async_resource_ref mr)
+{
+ CUDF_FUNC_RANGE();
+ return detail::stable_segmented_sorted_order(
+ keys, segment_offsets, column_order, null_precedence, stream, mr);
+}
+
+std::unique_ptr stable_segmented_sort_by_key(table_view const& values,
+ table_view const& keys,
+ column_view const& segment_offsets,
+ std::vector const& column_order,
+ std::vector const& null_precedence,
+ cuda::stream_ref stream,
+ rmm::device_async_resource_ref mr)
+{
+ CUDF_FUNC_RANGE();
+ return detail::stable_segmented_sort_by_key(
+ values, keys, segment_offsets, column_order, null_precedence, stream, mr);
+}
+
} // namespace cudf
diff --git a/cpp/src/sort/stable_segmented_sort.cu b/cpp/src/sort/stable_segmented_sort.cu
deleted file mode 100644
index 6f096c608a9..00000000000
--- a/cpp/src/sort/stable_segmented_sort.cu
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * SPDX-FileCopyrightText: Copyright (c) 2021-2026, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
- * SPDX-License-Identifier: Apache-2.0
- */
-
-#include "segmented_sort_impl.cuh"
-
-#include
-#include
-#include
-#include
-#include
-
-namespace cudf {
-namespace detail {
-
-std::unique_ptr stable_segmented_sorted_order(
- table_view const& keys,
- column_view const& segment_offsets,
- std::vector const& column_order,
- std::vector const& null_precedence,
- cuda::stream_ref stream,
- rmm::device_async_resource_ref mr)
-{
- return segmented_sorted_order_common(
- keys, segment_offsets, column_order, null_precedence, stream, mr);
-}
-
-std::unique_ptr stable_segmented_sort_by_key(table_view const& values,
- table_view const& keys,
- column_view const& segment_offsets,
- std::vector const& column_order,
- std::vector const& null_precedence,
- cuda::stream_ref stream,
- rmm::device_async_resource_ref mr)
-{
- return segmented_sort_by_key_common(
- values, keys, segment_offsets, column_order, null_precedence, stream, mr);
-}
-
-} // namespace detail
-
-std::unique_ptr stable_segmented_sorted_order(
- table_view const& keys,
- column_view const& segment_offsets,
- std::vector const& column_order,
- std::vector const& null_precedence,
- cuda::stream_ref stream,
- rmm::device_async_resource_ref mr)
-{
- CUDF_FUNC_RANGE();
- return detail::stable_segmented_sorted_order(
- keys, segment_offsets, column_order, null_precedence, stream, mr);
-}
-
-std::unique_ptr stable_segmented_sort_by_key(table_view const& values,
- table_view const& keys,
- column_view const& segment_offsets,
- std::vector const& column_order,
- std::vector const& null_precedence,
- cuda::stream_ref stream,
- rmm::device_async_resource_ref mr)
-{
- CUDF_FUNC_RANGE();
- return detail::stable_segmented_sort_by_key(
- values, keys, segment_offsets, column_order, null_precedence, stream, mr);
-}
-
-} // namespace cudf