Skip to content

Commit

Permalink
Expose avx512_qsort functions to C programs
Browse files Browse the repository at this point in the history
  • Loading branch information
r-devulap committed Jul 11, 2023
1 parent 85f4e9c commit 3f2d921
Show file tree
Hide file tree
Showing 3 changed files with 46 additions and 0 deletions.
15 changes: 15 additions & 0 deletions src/avx512-16bit-qsort.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -469,4 +469,19 @@ void avx512_qsort_fp16(uint16_t *arr, int64_t arrsize)
}
}

extern "C" {
void int16_avx512_qsort(int16_t* arr, int64_t arrsize)
{
avx512_qsort<int16_t>(arr, arrsize);
}
void uint16_avx512_qsort(uint16_t* arr, int64_t arrsize)
{
avx512_qsort<uint16_t>(arr, arrsize);
}
void float16_avx512_qsort(uint16_t* arr, int64_t arrsize)
{
avx512_qsort_fp16(arr, arrsize);
}
}

#endif // AVX512_QSORT_16BIT
15 changes: 15 additions & 0 deletions src/avx512-32bit-qsort.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -774,4 +774,19 @@ void avx512_qsort<float>(float *arr, int64_t arrsize)
}
}

extern "C" {
void int32_avx512_qsort(int32_t* arr, int64_t arrsize)
{
avx512_qsort<int32_t>(arr, arrsize);
}
void uint32_avx512_qsort(uint32_t* arr, int64_t arrsize)
{
avx512_qsort<uint32_t>(arr, arrsize);
}
void float_avx512_qsort(float* arr, int64_t arrsize)
{
avx512_qsort<float>(arr, arrsize);
}
}

#endif //AVX512_QSORT_32BIT
16 changes: 16 additions & 0 deletions src/avx512-64bit-qsort.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -842,4 +842,20 @@ void avx512_qsort<double>(double *arr, int64_t arrsize)
replace_inf_with_nan(arr, arrsize, nan_count);
}
}

extern "C" {
void int64_avx512_qsort(int64_t* arr, int64_t arrsize)
{
avx512_qsort<int64_t>(arr, arrsize);
}
void uint64_avx512_qsort(uint64_t* arr, int64_t arrsize)
{
avx512_qsort<uint64_t>(arr, arrsize);
}
void double_avx512_qsort(double* arr, int64_t arrsize)
{
avx512_qsort<double>(arr, arrsize);
}
}

#endif // AVX512_QSORT_64BIT

0 comments on commit 3f2d921

Please sign in to comment.