<commit_before>include(CheckCXXSourceCompiles)
include(CMakePushCheckState)

cmake_push_check_state()
set(CMAKE_REQUIRED_INCLUDES "${PROJECT_SOURCE_DIR}/include")

check_cxx_source_compiles("
    #if !defined(__x86_64__)
        Error: We need to ensure this code snippet fails on non x64
               CPUs (and not simply print a compiler warning).
    #endif
    #if defined(__POPCNT__) && defined(__BMI__)
        Error: multiarch_popcnt_bmi not needed!
    #endif
    #if defined(__GNUC__)
        #if __GNUC__ <= 5
            Error: The linker does not support function multiversioning
                   for shared libraries.
        #endif
    #endif

    #include <primesieve/intrinsics.hpp>
    #include <stdint.h>
    class PrimeGenerator {
        public:
        __attribute__ ((target (\"default\")))
        void fillNextPrimes(uint64_t* primes64);
        __attribute__ ((target (\"popcnt,bmi\")))
        void fillNextPrimes(uint64_t* primes64);
    };
    __attribute__ ((target (\"default\")))
    void PrimeGenerator::fillNextPrimes(uint64_t* primes64)
    {
        primes64[0] = 2;
    }
    __attribute__ ((target (\"popcnt,bmi\")))
    void PrimeGenerator::fillNextPrimes(uint64_t* primes64)
    {
        uint64_t bits = 789;
        uint64_t count = popcnt64(bits);
        if (count > 0) primes64[0] = ctz64(bits); bits &= bits - 1;
        if (count > 1) primes64[1] = ctz64(bits); bits &= bits - 1;
        if (count > 2) primes64[2] = ctz64(bits); bits &= bits - 1;
        if (count > 3) primes64[3] = ctz64(bits); bits &= bits - 1;
    }
    int main()
    {
        uint64_t primes[8];<commit_msg>Fix -Wmisleading-indentation<commit_after>include(CheckCXXSourceCompiles)
include(CMakePushCheckState)

cmake_push_check_state()
set(CMAKE_REQUIRED_INCLUDES "${PROJECT_SOURCE_DIR}/include")

check_cxx_source_compiles("
    #if !defined(__x86_64__)
        Error: We need to ensure this code snippet fails on non x64
               CPUs (and not simply print a compiler warning).
    #endif
    #if defined(__POPCNT__) && defined(__BMI__)
        Error: multiarch_popcnt_bmi not needed!
    #endif
    #if defined(__GNUC__)
        #if __GNUC__ <= 5
            Error: The linker does not support function multiversioning
                   for shared libraries.
        #endif
    #endif

    #include <primesieve/intrinsics.hpp>
    #include <stdint.h>
    class PrimeGenerator {
        public:
        __attribute__ ((target (\"default\")))
        void fillNextPrimes(uint64_t* primes64);
        __attribute__ ((target (\"popcnt,bmi\")))
        void fillNextPrimes(uint64_t* primes64);
    };
    __attribute__ ((target (\"default\")))
    void PrimeGenerator::fillNextPrimes(uint64_t* primes64)
    {
        primes64[0] = 2;
    }
    __attribute__ ((target (\"popcnt,bmi\")))
    void PrimeGenerator::fillNextPrimes(uint64_t* primes64)
    {
        uint64_t bits = 789;
        uint64_t count = popcnt64(bits);
        if (count > 0) { primes64[0] = ctz64(bits); bits &= bits - 1; }
        if (count > 1) { primes64[1] = ctz64(bits); bits &= bits - 1; }
        if (count > 2) { primes64[2] = ctz64(bits); bits &= bits - 1; }
        if (count > 3) { primes64[3] = ctz64(bits); bits &= bits - 1; }
    }
    int main()
    {
        uint64_t primes[8];
{'fraction_non_alphanumeric': 0.12018209408194233, 'fraction_numerical': 0.040667678300455236, 'mean_word_length': 2.695067264573991, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 15, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6937522', 'n_tokens_mistral': 1189, 'n_tokens_neox': 1077, 'n_words': 260}