Konstantinos Margaritis
83977db7ab
split arch-agnostic simd_utils.h functions into the common file
2020-10-16 12:30:34 +03:00
Konstantinos Margaritis
e7e1308d7f
fix compilation paths for cpuid_flags for x86
2020-10-16 12:29:45 +03:00
Konstantinos Margaritis
45bfed9b9d
add scalar versions of the vectorized functions for architectures that don't support 256-bit/512-bit SIMD vectors such as ARM
2020-10-15 16:30:18 +03:00
Konstantinos Margaritis
c5a7f4b846
add ARM simd_utils vectorized functions for 128-bit vectors
2020-10-15 16:26:49 +03:00
Konstantinos Margaritis
5b425bd5a6
add arm simple cpuid_flags
2020-10-15 16:26:04 +03:00
Konstantinos Margaritis
31ac6718dd
add ARM version of simd_utils.h
2020-10-13 09:19:56 +03:00
Konstantinos Margaritis
a9212174ee
add arm bitutils.h header
2020-10-08 20:50:55 +03:00
Konstantinos Margaritis
1c2c73becf
add C implementation of pdep64()
2020-10-08 20:50:18 +03:00
Konstantinos Margaritis
d2cf1a7882
move cpuid_flags.h header to common
2020-10-08 20:49:33 +03:00
Konstantinos Margaritis
5d773dd9db
use C implementation of popcount for arm
2020-10-07 14:28:45 +03:00
Konstantinos Margaritis
4c924cc920
add arm architecture basic defines
2020-10-07 14:28:12 +03:00
Konstantinos Margaritis
9a0494259e
minor fix
2020-10-07 14:26:41 +03:00
Konstantinos Margaritis
e91082d477
use right intrinsic
2020-10-06 13:45:52 +03:00
Konstantinos Margaritis
5952c64066
add necessary modifications to CMake system to enable building on ARM, add arm_neon.h intrinsic header to intrinsics.h
2020-10-06 12:44:23 +03:00
Konstantinos Margaritis
f0e70bc0ad
Revert "Revert "move x86 popcount.h implementations to util/arch/x86/popcount.h""
...
This reverts commit 04fbf2468140cc4d7ccabc62a2bdc4503a3d31c5.
2020-09-24 11:52:59 +03:00
Konstantinos Margaritis
04fbf24681
Revert "move x86 popcount.h implementations to util/arch/x86/popcount.h"
...
This reverts commit 6581aae90e55520353c03edb716de80ecc03521a.
2020-09-24 10:01:50 +03:00
Konstantinos Margaritis
5333467249
fix names, use own intrinsic instead of explicit _mm* ones
2020-09-23 11:51:21 +03:00
Konstantinos Margaritis
f7a6b8934c
add some set*() functions, harmonize names, rename setAxB to set1_AxB when using mm_set1_* internally
2020-09-23 11:49:26 +03:00
Konstantinos Margaritis
e8e188acaf
move x86 implementations of simd_utils.h to util/arch/x86/
2020-09-22 13:12:07 +03:00
Konstantinos Margaritis
e915d84864
no need to check for WIN32*
2020-09-22 13:10:52 +03:00
Konstantinos Margaritis
9f3ad89ed6
move andn helper function to bitutils.h
2020-09-22 12:17:27 +03:00
Konstantinos Margaritis
6581aae90e
move x86 popcount.h implementations to util/arch/x86/popcount.h
2020-09-22 11:45:24 +03:00
Konstantinos Margaritis
aac1f0f1dc
move x86 bitutils.h implementations to util/arch/x86/bitutils.h
2020-09-22 11:02:07 +03:00
Konstantinos Margaritis
8ed5f4ac75
fix include paths for masked_move
2020-09-18 12:55:57 +03:00
Konstantinos Margaritis
956b001613
move masked_move* AVX2 implementation to util/arch/x86
2020-09-18 12:51:39 +03:00
Konstantinos Margaritis
ea721c908f
move crc32 SSE42 implementation to util/arch/x86
2020-09-18 12:48:14 +03:00
Konstantinos Margaritis
6a40793719
move cpuid stuff to util/arch/x86
2020-09-17 20:35:39 +03:00
Konstantinos Margaritis
2d89df44ae
move x86 arch and SIMD types to x86 arch folder
2020-09-17 19:00:48 +03:00
Hong, Yang A
765b8f9fb9
literal API: remove HS_FLAG_MULTILINE flag support
...
fixes github issue #237
2020-05-25 13:47:53 +00:00
Hong, Yang A
88a18dcf98
add AVX512 support for vermicelli model
2020-05-25 13:47:53 +00:00
Hong, Yang A
3ff54f68e4
add Hyperscan version marcro in public header
2020-05-25 13:47:53 +00:00
Chang, Harry
e665e959a0
Revert to AVX2 Fat Teddy instead of AVX512 reinforced Fat Teddy.
2020-05-25 13:47:53 +00:00
Chang, Harry
43204dda48
AVX512VBMI Teddy.
2020-05-25 13:47:53 +00:00
Hong, Yang A
22991f2da1
update description of HS_FLAG_SOM_LEFTMOST to eliminate ambiguity
2020-05-25 13:47:53 +00:00
Hong, Yang A
8344395bfd
avoid crash in addLitExpression()
...
fixes github issue #205
2020-05-25 13:47:53 +00:00
Wang Xiang W
7c4490cfc9
smallwrite: add report dedupe check
2020-05-25 13:46:57 +00:00
Wang Xiang W
411317639b
Limex: fix acceleration path analysis
2020-05-25 13:46:42 +00:00
Wang Xiang W
f658c4e149
Noodle: avoid an extra convert instruction
...
fixes github issue #221
2020-05-25 13:46:42 +00:00
Hong, Yang A
6f6e2744df
Cyclic redundancy: change DFS termination condition into successors of cyclic vertex
2020-01-15 15:40:10 +00:00
Dmitry Yakovenko
17de350599
Fix platform compatibility check
2020-01-15 15:40:10 +00:00
Pavel Shlyak
3ca3602755
A tiny cleanup
2019-12-02 16:40:38 +00:00
Wang, Xiang W
49592833a7
Scratch: fix scratch free issue when memory allocation fails
...
Fixes github issue #174
2019-08-13 14:52:21 +08:00
Hong, Yang A
23e5f06594
add new Literal API for pure literal expressions:
...
Design compile time api hs_compile_lit() and hs_compile_lit_multi()
to handle pure literal pattern sets. Corresponding option --literal-on
is added for hyperscan testing suites. Extended parameters and part of
flags are not supported for this api.
2019-08-13 14:51:38 +08:00
Chang, Harry
8bfbf07f75
Do not free stream unless hs_close_stream returns success.
...
(by unit-hyperscan HyperscanArgChecks.CloseStreamNoScratch)
2019-08-13 14:50:45 +08:00
Chang, Harry
64ea43ea39
Logical Combination: avoid corruption of pending combination report
...
in streaming mode.
Fixes github issue #165
2019-08-13 14:50:16 +08:00
Chang, Harry
1f4c10a58d
Logical combination: support EOD match from purely negative case.
2019-08-13 14:50:07 +08:00
Mostafa Nazari
92edc37c1f
BUGFIX: fix Numerical result out of range error
...
Fix Error errno=34, fix Numerical result out of range error
issue: https://github.com/intel/hyperscan/issues/155
2019-08-13 14:49:24 +08:00
Derrick Lyndon Pallas
5a1b02bc10
Fix uninitialized use of scatter_unit_uX due to padding
...
These non-packed structures are placed into a std::vector. Later, they
contents of the vector are memcpy'd and the CRC of this space is taken.
Some compilers will zero the struct padding but GCC8.2 with -O2 at least
will not. This means that the CRC is based on uninitialized memory.
Since it is expected that these bytes will be memcpy'd, zero in place once
they're in the std::vector.
Found by Valgrind.
Q.v. Issue #148
2019-08-13 14:49:15 +08:00
Derrick Lyndon Pallas
356c0ab3d4
dispatcher: return correct function type from ifunc resolver
2019-08-13 14:49:00 +08:00
Hong, Yang A
bc37072d5b
Rose: add necessary instruction programs to avoid dead loop
...
Fixes github issue #141
2019-04-10 06:53:03 -04:00