1901 Commits

Author SHA1 Message Date
Brad Larsen
bd7423f4f0 Add CMake options for more build granularity
This adds three new CMake options, all defaulting to true, making it
possible to opt-out of building parts of Vectorscan that are not
essential for deployment of the matching runtime.

These new options:

- `BUILD_UNIT`: control whether the `unit` directory is included
- `BUILD_DOC`: control whether the `doc` directory is included
- `BUILD_TOOLS`: control whether the `tools` directory is included
2024-03-06 16:32:12 -05:00
Konstantinos Margaritis
71f3e7d994
Merge pull request #229 from ProBrian/bugfix/pcre_check_error
fix the pcre versio check error on clang 16
2024-01-29 20:26:57 +02:00
Jingbo Chen
24786ae332 fix the pcre versio check error on clang 16 2024-01-29 10:50:16 +08:00
Konstantinos Margaritis
98eb459ac2
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
01658be05d remove unused warning exceptions 2024-01-20 19:52:31 +02:00
Konstantinos Margaritis
8cd365121d Revert "fix more unused-variable warnings"
This reverts commit afb1a1705f8073ba43b38845d3aa1329634083ed.
2024-01-20 17:46:29 +02:00
Konstantinos Margaritis
68dab83799 Revert "fix unused-variable warning"
This reverts commit ac02b589beebad99820a8b42e6b96e598e7da929.
2024-01-20 17:46:29 +02:00
Konstantinos Margaritis
5fa5e142b9 add -Wno-deprecate-lax-vec-conv-all on clang 15 for Power only 2024-01-20 17:45:56 +02:00
Konstantinos Margaritis
528a165c20 Revert "don't demand 32/64-byte alignment if there is no 256/512-bit SIMD engine"
This reverts commit 719e1c9be6fd6fd316889ac7625253d0ad9c5fd5.
2024-01-19 17:41:40 +02:00
Konstantinos Margaritis
1a4e878abe 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 9134cd6250f47034e15ef42981a3257ae4e3d506.
2024-01-19 15:23:11 +02:00
Konstantinos Margaritis
4fb8cee35f -Wno-pass-failed is only for ppc64le 2024-01-19 11:23:17 +02:00
Konstantinos Margaritis
3d0df318b8 use snprintf() instead 2024-01-18 23:40:38 +02:00
Konstantinos Margaritis
5d38d0d0a5 add needed deprecation warning exceptions for SIMDe on Power VSX 2024-01-18 23:37:59 +02:00
Konstantinos Margaritis
a1258680ac remove unused constants 2024-01-18 22:08:19 +02:00
Konstantinos Margaritis
ffa6926608 set x86-64-v2 as baseline arch for fat runtime 2024-01-18 22:08:05 +02:00
Konstantinos Margaritis
634c884204 use x86-64-v2 as default x86 arch for SIMDe 2024-01-18 21:24:38 +02:00
Konstantinos Margaritis
b5ae828e61
Merge pull request #226 from ypicchi-arm/opti/remove_unused_instruction_truffle_sve
Make the match component of SVE truffle constant time
2024-01-18 21:20:47 +02:00
Konstantinos Margaritis
719e1c9be6 don't demand 32/64-byte alignment if there is no 256/512-bit SIMD engine 2024-01-18 18:37:27 +02:00
Yoan Picchi
01d8a2d768 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
b6e3c66015 WIP: after cleaning up the code, remove the warnings from compilation flags 2024-01-18 00:47:44 +02:00
Konstantinos Margaritis
b106c10b4d use arch set in cflags-x86.cmake 2024-01-18 00:43:32 +02:00
Konstantinos Margaritis
9e4789d374 fix some build misconfigurations on x86 2024-01-18 00:43:11 +02:00
Konstantinos Margaritis
9134cd6250 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
593299e7bb check the correct define 2024-01-18 00:41:56 +02:00
Konstantinos Margaritis
f6387e34da add info message 2024-01-18 00:41:23 +02:00
Konstantinos Margaritis
73f70e3d2e WIP: only keep the absolutely necessary warning exceptions 2024-01-17 17:18:12 +02:00
Konstantinos Margaritis
6b9068db0f initialize variable 2024-01-17 17:16:02 +02:00
Konstantinos Margaritis
5e1972efce remove redundant moves 2024-01-17 17:15:32 +02:00
Konstantinos Margaritis
9fac2bf78d remove unused constant 2024-01-17 17:13:51 +02:00
Konstantinos Margaritis
afb1a1705f fix more unused-variable warnings 2024-01-17 17:03:19 +02:00
Konstantinos Margaritis
4d2bcff7b4 remove unused variable 2024-01-17 17:02:32 +02:00
Konstantinos Margaritis
ac02b589be fix unused-variable warning 2024-01-17 17:02:08 +02:00
Konstantinos Margaritis
f8fdd979f1 set default x86 architecture to baseline 2024-01-17 17:00:47 +02:00
Konstantinos Margaritis
46488b8097
Merge pull request #219 from VectorCamp/bugfix/make-sqlite-optional
Make sqlite optional, use OS installed
2024-01-15 16:57:11 +02:00
Konstantinos Margaritis
8b2ebeb06b make pkgconf not a hard requirement 2024-01-15 13:17:20 +02:00
Konstantinos Margaritis
e2439685a9
Merge pull request #221 from VectorCamp/bugfix/bug202-unit-internal
Do not assume unit-internal is built for unit target
2024-01-11 16:26:01 +02:00
Konstantinos Margaritis
1988ff5a6d Do not assume unit-internal is built for unit target 2024-01-11 13:23:37 +02:00
Konstantinos Margaritis
6e1c3a10fa
Merge pull request #220 from VectorCamp/feature/fatruntime-enabled-on-x86
Feature/fatruntime enabled on x86
2024-01-10 22:47:23 +02:00
Konstantinos Margaritis
6f4409365a enable AVX2,AVX512,AVX512 for fat runtimes on x86 2024-01-10 18:26:12 +02:00
Konstantinos Margaritis
f68a1e526c Enable Fat runtime on x86 by default to help migration from hyperscan 2024-01-10 18:25:31 +02:00
Konstantinos Margaritis
d9ebb20010 Make sqlite optional, use OS installed 2024-01-10 14:28:06 +02:00
Konstantinos Margaritis
eca4049ce4
Merge pull request #217 from ypicchi-arm/feature/Add-truffle-SVE-implementation
Add truffle SVE implementation
2024-01-09 22:53:09 +02:00
Yoan Picchi
8e5abfebf0 Add truffle SVE implementation
Signed-off-by: Yoan Picchi <yoan.picchi@arm.com>
2024-01-09 16:50:03 +00:00
Konstantinos Margaritis
17fb9f41f6
Merge pull request #215 from VectorCamp/feature/use-ccache
use ccache if available
2023-12-22 01:18:22 +02:00
Konstantinos Margaritis
ad70693999 use ccache if available 2023-12-21 12:59:56 +00:00
Konstantinos Margaritis
3113d1ca30
Merge pull request #212 from VectorCamp/bugfix/fix-simde-build
SIMDe on Clang needs SIMDE_NO_CHECK_IMMEDIATE_CONSTANT defined and other SIMDe related fixes now that SIMDe is part of the CI pipeline.

Some issue with SIMDe on x86 still remains because of an upstream bug:

https://github.com/simd-everywhere/simde/issues/1119

Similarly SIMDe native with clang on Arm also poses a non-high priority build failure:

https://buildbot-ci.vectorcamp.gr/#/builders/129/builds/11

Possibly a SIMDe issue as well, need to investigate but will merge this PR as these are non-blockers.
2023-12-21 11:04:32 +02:00
Konstantinos Margaritis
10d957477a fix typo in baseline x86 arch definition 2023-12-20 22:21:00 +02:00
Konstantinos Margaritis
ef37e6015a native CPU on SIMDe will enable all sorts of features in an unpredicted manner, set sane defaults 2023-12-20 16:43:38 +00:00
Konstantinos Margaritis
306e8612be GREATER_EQUAL 2023-12-20 15:27:56 +00:00
Konstantinos Margaritis
a7a12844e7 reorganize OS detection 2023-12-20 17:16:45 +02:00