Skip to content

Commit 07fb01f

Browse files
author
Raghuveer Devulapalli
committed
Add uint32 and int32 API's for key-value sort
1 parent f47e520 commit 07fb01f

File tree

2 files changed

+24
-0
lines changed

2 files changed

+24
-0
lines changed

example.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,10 @@ void keyvalue_qsort_float_sizet(float*, size_t*, size_t);
99
void keyvalue_qsort_float_uint32(float*, uint32_t*, uint32_t);
1010
void keyvalue_qsort_sizet_sizet(size_t*, size_t*, size_t);
1111
void keyvalue_qsort_sizet_uint32(size_t*, uint32_t*, uint32_t);
12+
void keyvalue_qsort_uint32_sizet(uint32_t*, size_t*, size_t);
13+
void keyvalue_qsort_uint32_uint32(uint32_t*, uint32_t*, uint32_t);
14+
void keyvalue_qsort_int32_sizet(int32_t*, size_t*, size_t);
15+
void keyvalue_qsort_int32_uint32(int32_t*, uint32_t*, uint32_t);
1216

1317
// struct definition, we will sort an array of these:
1418
struct Point {

lib/x86simdsort.cpp

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -288,4 +288,24 @@ extern "C" {
288288
{
289289
x86simdsort::keyvalue_qsort(key, val, size, true);
290290
}
291+
XSS_EXPORT_SYMBOL
292+
void keyvalue_qsort_int32_uint32(int32_t* key, uint32_t* val, uint32_t size)
293+
{
294+
x86simdsort::keyvalue_qsort(key, val, size, true);
295+
}
296+
XSS_EXPORT_SYMBOL
297+
void keyvalue_qsort_int32_sizet(int32_t* key, size_t* val, size_t size)
298+
{
299+
x86simdsort::keyvalue_qsort(key, val, size, true);
300+
}
301+
XSS_EXPORT_SYMBOL
302+
void keyvalue_qsort_uint32_uint32(uint32_t* key, uint32_t* val, uint32_t size)
303+
{
304+
x86simdsort::keyvalue_qsort(key, val, size, true);
305+
}
306+
XSS_EXPORT_SYMBOL
307+
void keyvalue_qsort_uint32_sizet(uint32_t* key, size_t* val, size_t size)
308+
{
309+
x86simdsort::keyvalue_qsort(key, val, size, true);
310+
}
291311
}

0 commit comments

Comments
 (0)