hw-json-simd 0.1.0.1 → 0.1.0.2
raw patch · 8 files changed
+27/−24 lines, 8 filesdep ~optparse-applicativePVP ok
version bump matches the API change (PVP)
Dependency ranges changed: optparse-applicative
API changes (from Hackage documentation)
Files
- cbits/debug.h +5/−11
- cbits/intrinsics.h +7/−0
- cbits/simd-phi-table-32.c +2/−1
- cbits/simd-spliced.c +2/−2
- cbits/simd-state.c +4/−5
- cbits/simd-transition-table-32.c +2/−1
- cbits/simd.h +2/−2
- hw-json-simd.cabal +3/−2
cbits/debug.h view
@@ -1,8 +1,8 @@-#include <immintrin.h>-#include <mmintrin.h> #include <stdint.h> #include <stdio.h> +#include "intrinsics.h"+ #if defined __AVX2__ inline void hw_simd_json_fprint256_num(FILE *file, __m256i var) { uint8_t *val = (uint8_t*)&var;@@ -76,15 +76,9 @@ #if defined __AVX2__ inline void hw_simd_json_print_bits_128(__m128i v) {- int i = 0;-- for (i = 0; i < 2; ++i) {- if (i > 0) {- printf("-");- }-- hw_simd_json_print_bits_64(_mm_extract_epi64(v, i));- }+ hw_simd_json_print_bits_64(_mm_extract_epi64(v, 0));+ printf("-");+ hw_simd_json_print_bits_64(_mm_extract_epi64(v, 1)); } #endif//__AVX2__
+ cbits/intrinsics.h view
@@ -0,0 +1,7 @@+#ifndef intrinsics_h___+#define intrinsics_h___++#include <immintrin.h>+#include <mmintrin.h>++#endif//intrinsics_h___
cbits/simd-phi-table-32.c view
@@ -1,5 +1,6 @@+#include "intrinsics.h"+ #include <stdint.h>-#include <immintrin.h> uint32_t hw_json_simd_phi_table_32[] = { 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
cbits/simd-spliced.c view
@@ -1,8 +1,8 @@+#include "intrinsics.h"+ #include <stdlib.h> #include <string.h> #include <stdio.h>-#include <immintrin.h>-#include <mmintrin.h> #include "simd.h"
cbits/simd-state.c view
@@ -1,12 +1,11 @@+#include "debug.h"+#include "intrinsics.h"+#include "simd.h"+ #include <stdint.h> #include <stdio.h> #include <stdlib.h> #include <string.h>-#include <immintrin.h>--#include "debug.h"--#include "simd.h" void hw_json_simd_sm_process_chunk(
cbits/simd-transition-table-32.c view
@@ -1,5 +1,6 @@+#include "intrinsics.h"+ #include <stdint.h>-#include <immintrin.h> uint32_t hw_json_simd_transition_table_32[] = { 0x00010100, 0x00010100, 0x00010100, 0x00010100, 0x00010100, 0x00010100, 0x00010100, 0x00010100
cbits/simd.h view
@@ -1,5 +1,5 @@-#include <immintrin.h>-#include <mmintrin.h>+#include "intrinsics.h"+ #include <stdint.h> #include <stdio.h>
hw-json-simd.cabal view
@@ -1,7 +1,7 @@ cabal-version: 2.2 name: hw-json-simd-version: 0.1.0.1+version: 0.1.0.2 synopsis: SIMD-based JSON semi-indexer description: Please see the README on GitHub at <https://github.com/haskell-works/hw-json-simd#readme> category: Data@@ -13,10 +13,11 @@ license: BSD-3-Clause license-file: LICENSE build-type: Simple-tested-with: GHC == 8.6.1, GHC == 8.4.3, GHC == 8.2.2, GHC == 7.10.3, GHC == 8.0.2+tested-with: GHC == 8.6.3, GHC == 8.4.4, GHC == 8.2.2, GHC == 8.0.2 extra-source-files: cbits/debug.h cbits/simd.h+ cbits/intrinsics.h cbits/simd.c cbits/simd-spliced.c cbits/simd-state.c