G.E.
f872c289bd
one more place to fix where clang in bsd is more picky than gcc in linux
2024-04-15 11:44:22 +03:00
G.E.
b054e6c488
added copyright info for modified src files
2024-04-11 09:49:43 +03:00
G.E.
feeb6a57ac
moved HAVE_BUILTIN_POPCOUNT def to cmake
2024-03-12 14:22:39 +02:00
G.E.
33444e7ce0
incremental improvement in cleanliness
2024-03-12 12:37:08 +02:00
G.E.
205bcbb060
support building on NetBSD
2024-03-06 10:48:56 +01:00
Konstantinos Margaritis
a4d1779945
Merge pull request #225 from VectorCamp/feature/cleanup-compiler-warnings
...
According to https://buildbot-ci.vectorcamp.gr/#/changes/93
most builds succceded and with no compiler warnings. The build failures were only on x86 and Arm for SIMDe builds: x86 because of a bug in SIMDe emulation of own x86 intrinsics in non-native mode and Arm due to clang, unsure if this is actually a bug in SIMDe or clang itself. All the remaining compiler warnings that were suppressed was because they were not possible to fix for the scope of this project.
This PR will close #170 , code quality improvements however will continue with the integration of #222 or similar static code analyzer to CI and continuous refactoring.
2024-01-20 22:41:00 +02:00
Konstantinos Margaritis
7a2179c793
Revert "if we don't have a 256/512-bit SIMD engine, there is no need to have 32/64-byte alignment and gcc complains anyway"
...
This reverts commit 9134cd6250 .
2024-01-19 15:23:11 +02:00
Konstantinos Margaritis
7b928cf35e
use snprintf() instead
2024-01-18 23:40:38 +02:00
Konstantinos Margaritis
60dde08d81
remove unused constants
2024-01-18 22:08:19 +02:00
Yoan Picchi
6652d4a837
Make the match component of SVE truffle constant time
...
There are no significant speed up for 128b vectors but we expect some speedup
for wider vectors compared to the previous linear time implementation of the
match.hpp component
Signed-off-by: Yoan Picchi <yoan.picchi@arm.com >
2024-01-18 11:53:45 +00:00
Konstantinos Margaritis
9bb2243858
if we don't have a 256/512-bit SIMD engine, there is no need to have 32/64-byte alignment and gcc complains anyway
2024-01-18 00:42:36 +02:00
Konstantinos Margaritis
fdc067861e
check the correct define
2024-01-18 00:41:56 +02:00
Konstantinos Margaritis
8aebaa742f
initialize variable
2024-01-17 17:16:02 +02:00
Konstantinos Margaritis
f3b9af09c9
remove redundant moves
2024-01-17 17:15:32 +02:00
Konstantinos Margaritis
f399dfa586
remove unused constant
2024-01-17 17:13:51 +02:00
Yoan Picchi
c67076ce22
Add truffle SVE implementation
...
Signed-off-by: Yoan Picchi <yoan.picchi@arm.com >
2024-01-09 16:50:03 +00:00
Konstantinos Margaritis
50675d0af6
add fallback pdep64 for x86 if no HAVE_BMI2
2023-12-20 08:25:30 +02:00
Konstantinos Margaritis
192bf38d56
add missing pdep64 for x86 bitutils
2023-12-20 00:12:15 +02:00
Konstantinos Margaritis
38231b2a5e
add missing pdep64 for arm and ppc64le
2023-12-19 23:15:27 +02:00
Konstantinos Margaritis
c5849a435f
add missing pdep64 for common bitutils
2023-12-19 23:09:03 +02:00
Konstantinos Margaritis
4f75310595
fix failing allbits test for ppc64le on clang15
2023-11-29 01:39:05 +02:00
Konstantinos Margaritis
5cb3a69edc
make diffrich384 available on all arches
2023-11-28 12:06:46 +00:00
Konstantinos Margaritis
64d106e582
fix compilation for SIMDe
2023-11-27 20:52:52 +00:00
Konstantinos Margaritis
1fb601f3a9
fix SIMDe emulation builds on Arm, add native translation from x86 for comparison
2023-11-27 12:21:58 +00:00
Konstantinos Margaritis
b0d9c7f879
existing scalar implementations were incorrect -but never tested, ported from arm/ppc64le
2023-11-23 16:09:10 +00:00
Konstantinos Margaritis
9cf061b89b
add missing intrinsics for SIMDe backend
2023-11-23 16:08:26 +00:00
Konstantinos Margaritis
5d8ea9b1ae
SIMDE is a valid platform
2023-11-23 13:07:28 +00:00
Konstantinos Margaritis
99807c17a6
enable SIMDe backend
2023-11-21 17:13:33 +00:00
Konstantinos Margaritis
50a664b5c3
add SIMDe ports of simd_utils and supervector
2023-11-21 17:12:04 +00:00
Konstantinos Margaritis
4e231c6009
Move VERM16 enums to the end of the list
...
This was causing a hard-to-track segfault with Fat Runtime on SVE2 hw,
because of the macro-based hard-coded way to calculate offsets for each
implementation. This needs a rewrite.
2023-11-17 03:50:30 +08:00
Konstantinos Margaritis
a2de63088c
Merge pull request #186 from VectorCamp/bugfix/fix-compilation-arm-ubuntu-20.04
...
Ubuntu 20.04 gcc does not define HWCAP2_SVE2 #180
2023-10-25 13:53:44 +03:00
Konstantinos Margaritis
bc88821057
Merge pull request #185 from VectorCamp/bugfix/fix-inconsistent-version-header
...
Fix version getting out of sync #175
2023-10-11 19:52:22 +03:00
Konstantinos Margaritis
1ca4dc8b39
Ubuntu 20.04 gcc does not define HWCAP2_SVE2 #180
2023-10-10 18:30:12 +08:00
Konstantinos Margaritis
3f9c05d57f
fix cmake refactor for arm builds
2023-10-09 10:03:53 +00:00
Konstantinos Margaritis
abcc974d1d
add missing file
2023-10-07 12:10:42 +03:00
Konstantinos Margaritis
df944ac347
__builtin_constant_p is true in the wrong case on gcc 13.2. Exclude for now
2023-10-06 11:44:41 +03:00
Konstantinos Margaritis
bbeec16894
use the right type of cast
2023-10-04 23:35:10 +03:00
Konstantinos Margaritis
ba81576d28
clang 16 as well
2023-10-04 22:07:34 +03:00
Konstantinos Margaritis
948ef96759
missed one pragma
2023-10-04 20:54:57 +03:00
Konstantinos Margaritis
4ae1aebc1b
use the conditional in the right way
2023-10-04 20:35:58 +03:00
Konstantinos Margaritis
bfe1aa52f1
add conditional for __clang__
2023-10-04 20:28:35 +03:00
Konstantinos Margaritis
b5d87d3877
clang 15 (but not 16) fails on ppc64le with -Wdeprecate-lax-vec-conv-all
2023-10-04 20:09:45 +03:00
Konstantinos Margaritis
0c51d60392
fix -Wunused warnings on debug
2023-10-04 07:16:45 +00:00
Konstantinos Margaritis
3ed0c593f4
Fix 'unqualified call to std::move' errors in clang 15+
2023-10-03 20:24:39 +03:00
Konstantinos Margaritis
790bc9d4dc
Fix version getting out of sync #175
2023-10-03 09:57:10 +03:00
Konstantinos Margaritis
89a85a8e90
HWCAP is only available on Linux
2023-09-08 10:08:44 +03:00
Hong, Yang A
3db9710564
remove invalid nfa dump info
2023-09-05 13:58:24 +03:00
Hong, Yang A
e4ffd75282
scratch: remove quick validity check
...
Roll back fix for github issue #350
About Scratch Usage:
For compile time, scratch space is strongly recommended to be
allocated immediately after database generation.
For runtime, besides using scratch for corresponding database,
Hyperscan also allows user to use larger scratch space allocated
for another database.
When multiple concurrent threads need to use the same databases
and a new scratch space is required, cloning the largest one is
always safe. This is realized based on API hs_scratch_size() and
hs_clone_scratch().
Behaviors beyond above are discouraged and results are undefined.
2023-09-05 13:58:17 +03:00
Hong, Yang A
b8eb6af76b
fix nfa dump error
2023-09-05 13:51:22 +03:00
Hong, Yang A
3a56b1b787
scratch: add quick validity check
...
fix github issue #350
2023-09-05 13:51:15 +03:00