diff --git a/CHANGES b/CHANGES index 3039bc4..b95409d 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ +Changes in 2.7.6 (March 3, 2024) +- Fixed compilation error when compiling the library with OpenMP enabled. + Changes in 2.7.5 (February 26, 2024) - Improved performance of suffix array and burrows wheeler transform construction on degenerate inputs. diff --git a/CMakeLists.txt b/CMakeLists.txt index d914a93..20cb563 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,6 +1,6 @@ cmake_minimum_required(VERSION 3.10) -project(libsais VERSION 2.7.5 LANGUAGES C DESCRIPTION "libsais is a library for linear time suffix array, longest common prefix array and burrows wheeler transform construction based on induced sorting algorithm.") +project(libsais VERSION 2.7.6 LANGUAGES C DESCRIPTION "libsais is a library for linear time suffix array, longest common prefix array and burrows wheeler transform construction based on induced sorting algorithm.") set(CMAKE_C_STANDARD 99) set(CMAKE_C_STANDARD_REQUIRED ON) diff --git a/README.md b/README.md index 65bd294..4e70ee7 100644 --- a/README.md +++ b/README.md @@ -23,6 +23,8 @@ The libsais provides simple C99 API to construct suffix array and Burrows-Wheele The libsais is released under the [Apache License Version 2.0](LICENSE "Apache license") ## Changes +* March 3, 2024 (2.7.6) + * Fixed compilation error when compiling the library with OpenMP enabled. * February 26, 2024 (2.7.5) * Improved performance of suffix array and burrows wheeler transform construction on degenerate inputs. * February 23, 2024 (2.7.4) diff --git a/VERSION b/VERSION index 460b6fd..5b013b9 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -2.7.5 \ No newline at end of file +2.7.6 \ No newline at end of file diff --git a/src/libsais64.c b/src/libsais64.c index 8e6fb36..0425a3a 100644 --- a/src/libsais64.c +++ b/src/libsais64.c @@ -6769,8 +6769,8 @@ int64_t libsais64_omp(const uint8_t * T, int64_t * SA, int64_t n, int64_t fs, in if (index >= 0) { - libsais64_convert_inplace_32u_to_64u_omp((uint32_t *)SA, (uint64_t *)SA, n, threads); - if (freq != NULL) { libsais64_convert_inplace_32u_to_64u_omp((uint32_t *)freq, (uint64_t *)freq, ALPHABET_SIZE, threads); } + libsais64_convert_inplace_32u_to_64u_omp((uint32_t *)SA, n, threads); + if (freq != NULL) { libsais64_convert_inplace_32u_to_64u_omp((uint32_t *)freq, ALPHABET_SIZE, threads); } } return index; @@ -6801,7 +6801,7 @@ int64_t libsais64_bwt_omp(const uint8_t * T, uint8_t * U, int64_t * A, int64_t n if (index >= 0) { - if (freq != NULL) { libsais64_convert_inplace_32u_to_64u_omp((uint32_t *)freq, (uint64_t *)freq, ALPHABET_SIZE, threads); } + if (freq != NULL) { libsais64_convert_inplace_32u_to_64u_omp((uint32_t *)freq, ALPHABET_SIZE, threads); } } return index; @@ -6843,8 +6843,8 @@ int64_t libsais64_bwt_aux_omp(const uint8_t * T, uint8_t * U, int64_t * A, int64 if (index >= 0) { - libsais64_convert_inplace_32u_to_64u_omp((uint32_t *)I, (uint64_t *)I, 1 + ((n - 1) / r), threads); - if (freq != NULL) { libsais64_convert_inplace_32u_to_64u_omp((uint32_t *)freq, (uint64_t *)freq, ALPHABET_SIZE, threads); } + libsais64_convert_inplace_32u_to_64u_omp((uint32_t *)I, 1 + ((n - 1) / r), threads); + if (freq != NULL) { libsais64_convert_inplace_32u_to_64u_omp((uint32_t *)freq, ALPHABET_SIZE, threads); } } return index;