├── .github └── workflows │ ├── CI.yml │ ├── ubuntu22.yml │ └── vs.yml ├── .gitignore ├── CMakeLists.txt ├── LICENSE ├── Makefile ├── README.md ├── benchmarks ├── clock_gettime.h └── despacebenchmark.c ├── bindings └── d │ ├── generate.sh │ └── src │ └── despacer │ ├── despacer.d │ ├── libc │ ├── despacer_AVX2.d │ ├── despacer_AVX2.dpp │ ├── despacer_SSE4_1.d │ ├── despacer_SSE4_1.dpp │ ├── despacer_SSE4_2.d │ ├── despacer_SSE4_2.dpp │ ├── despacer_SSSE3.d │ ├── despacer_SSSE3.dpp │ ├── despacer_generic.d │ └── despacer_generic.dpp │ └── simd_check.d ├── dub.sdl ├── include ├── despacer.h ├── despacer_AVX2.h ├── despacer_AVX512.h ├── despacer_SSE4_1.h ├── despacer_SSE4_2.h ├── despacer_SSSE3.h └── despacer_generic.h ├── scripts ├── counts.py ├── mask.py └── twosmallmask.py ├── src ├── despacer.c └── despacer_tables.h └── tests └── unit.c /.github/workflows/CI.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/.github/workflows/CI.yml -------------------------------------------------------------------------------- /.github/workflows/ubuntu22.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/.github/workflows/ubuntu22.yml -------------------------------------------------------------------------------- /.github/workflows/vs.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/.github/workflows/vs.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/.gitignore -------------------------------------------------------------------------------- /CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/CMakeLists.txt -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/README.md -------------------------------------------------------------------------------- /benchmarks/clock_gettime.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/benchmarks/clock_gettime.h -------------------------------------------------------------------------------- /benchmarks/despacebenchmark.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/benchmarks/despacebenchmark.c -------------------------------------------------------------------------------- /bindings/d/generate.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/bindings/d/generate.sh -------------------------------------------------------------------------------- /bindings/d/src/despacer/despacer.d: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/bindings/d/src/despacer/despacer.d -------------------------------------------------------------------------------- /bindings/d/src/despacer/libc/despacer_AVX2.d: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/bindings/d/src/despacer/libc/despacer_AVX2.d -------------------------------------------------------------------------------- /bindings/d/src/despacer/libc/despacer_AVX2.dpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/bindings/d/src/despacer/libc/despacer_AVX2.dpp -------------------------------------------------------------------------------- /bindings/d/src/despacer/libc/despacer_SSE4_1.d: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/bindings/d/src/despacer/libc/despacer_SSE4_1.d -------------------------------------------------------------------------------- /bindings/d/src/despacer/libc/despacer_SSE4_1.dpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/bindings/d/src/despacer/libc/despacer_SSE4_1.dpp -------------------------------------------------------------------------------- /bindings/d/src/despacer/libc/despacer_SSE4_2.d: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/bindings/d/src/despacer/libc/despacer_SSE4_2.d -------------------------------------------------------------------------------- /bindings/d/src/despacer/libc/despacer_SSE4_2.dpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/bindings/d/src/despacer/libc/despacer_SSE4_2.dpp -------------------------------------------------------------------------------- /bindings/d/src/despacer/libc/despacer_SSSE3.d: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/bindings/d/src/despacer/libc/despacer_SSSE3.d -------------------------------------------------------------------------------- /bindings/d/src/despacer/libc/despacer_SSSE3.dpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/bindings/d/src/despacer/libc/despacer_SSSE3.dpp -------------------------------------------------------------------------------- /bindings/d/src/despacer/libc/despacer_generic.d: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/bindings/d/src/despacer/libc/despacer_generic.d -------------------------------------------------------------------------------- /bindings/d/src/despacer/libc/despacer_generic.dpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/bindings/d/src/despacer/libc/despacer_generic.dpp -------------------------------------------------------------------------------- /bindings/d/src/despacer/simd_check.d: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/bindings/d/src/despacer/simd_check.d -------------------------------------------------------------------------------- /dub.sdl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/dub.sdl -------------------------------------------------------------------------------- /include/despacer.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/include/despacer.h -------------------------------------------------------------------------------- /include/despacer_AVX2.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/include/despacer_AVX2.h -------------------------------------------------------------------------------- /include/despacer_AVX512.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/include/despacer_AVX512.h -------------------------------------------------------------------------------- /include/despacer_SSE4_1.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/include/despacer_SSE4_1.h -------------------------------------------------------------------------------- /include/despacer_SSE4_2.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/include/despacer_SSE4_2.h -------------------------------------------------------------------------------- /include/despacer_SSSE3.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/include/despacer_SSSE3.h -------------------------------------------------------------------------------- /include/despacer_generic.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/include/despacer_generic.h -------------------------------------------------------------------------------- /scripts/counts.py: -------------------------------------------------------------------------------- 1 | for i in range(1<<16): 2 | print(bin(i).count("1"),end=",") 3 | -------------------------------------------------------------------------------- /scripts/mask.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/scripts/mask.py -------------------------------------------------------------------------------- /scripts/twosmallmask.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/scripts/twosmallmask.py -------------------------------------------------------------------------------- /src/despacer.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/src/despacer.c -------------------------------------------------------------------------------- /src/despacer_tables.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/src/despacer_tables.h -------------------------------------------------------------------------------- /tests/unit.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lemire/despacer/HEAD/tests/unit.c --------------------------------------------------------------------------------