]> git.ipfire.org Git - thirdparty/vectorscan.git/log
thirdparty/vectorscan.git
2 years agoMerge pull request #123 from VectorCamp/feature/neon-shift-optimizations 124/head
Konstantinos Margaritis [Tue, 13 Sep 2022 06:13:05 +0000 (09:13 +0300)] 
Merge pull request #123 from VectorCamp/feature/neon-shift-optimizations

[NEON] simplify/optimize shift/align primitives

2 years ago[NEON] simplify/optimize shift/align primitives 123/head
Konstantinos Margaritis [Mon, 12 Sep 2022 13:09:51 +0000 (13:09 +0000)] 
[NEON] simplify/optimize shift/align primitives

2 years agoMerge pull request #121 from liquidaty/mingw64-develop
Konstantinos Margaritis [Fri, 9 Sep 2022 10:42:49 +0000 (13:42 +0300)] 
Merge pull request #121 from liquidaty/mingw64-develop

fix to enable successful build with mingw64

2 years agofix to enable successful build with mingw64 121/head
liquidaty [Thu, 8 Sep 2022 16:59:37 +0000 (09:59 -0700)] 
fix to enable successful build with mingw64

2 years agoMerge pull request #119 from VectorCamp/feature/vsx-optimizations
Konstantinos Margaritis [Thu, 8 Sep 2022 10:41:13 +0000 (13:41 +0300)] 
Merge pull request #119 from VectorCamp/feature/vsx-optimizations

VSX optimizations

2 years agouse correct intrinsic for lshiftbyte_m128 119/head
Konstantinos Margaritis [Wed, 7 Sep 2022 13:00:10 +0000 (16:00 +0300)] 
use correct intrinsic for lshiftbyte_m128

2 years agoprovide non-immediate versions of lshiftbyte/rshiftbyte on x86
Konstantinos Margaritis [Wed, 7 Sep 2022 12:07:20 +0000 (15:07 +0300)] 
provide non-immediate versions of lshiftbyte/rshiftbyte on x86

2 years agoreadd simd_onebit_masks for x86, needs more work
Konstantinos Margaritis [Wed, 7 Sep 2022 10:42:25 +0000 (13:42 +0300)] 
readd simd_onebit_masks for x86, needs more work

2 years ago[NEON] optimize mask1bit128, get rid of simd_onebit_masks
Konstantinos Margaritis [Wed, 7 Sep 2022 10:20:01 +0000 (10:20 +0000)] 
[NEON] optimize mask1bit128, get rid of simd_onebit_masks

2 years agoremove simd_onebit_masks from arm/x86 headers, as they moved to common
Konstantinos Margaritis [Wed, 7 Sep 2022 09:41:32 +0000 (12:41 +0300)] 
remove simd_onebit_masks from arm/x86 headers, as they moved to common

2 years ago[VSX] optimize alignr method
Konstantinos Margaritis [Wed, 7 Sep 2022 09:35:28 +0000 (12:35 +0300)] 
[VSX] optimize alignr method

2 years ago[VSX] optimize shift operators
Konstantinos Margaritis [Wed, 7 Sep 2022 09:16:14 +0000 (12:16 +0300)] 
[VSX] optimize shift operators

2 years ago[VSX] optimize shifting methods, replace template Unroller
Konstantinos Margaritis [Wed, 7 Sep 2022 08:52:08 +0000 (11:52 +0300)] 
[VSX] optimize shifting methods, replace template Unroller

2 years agooptimize comparemask implementation, clean up code, use union types instead of casts
Konstantinos Margaritis [Tue, 6 Sep 2022 23:02:11 +0000 (02:02 +0300)] 
optimize comparemask implementation, clean up code, use union types instead of casts

2 years ago[VSX] add algorithm for alignr w/o use of immediates
Konstantinos Margaritis [Tue, 6 Sep 2022 21:01:54 +0000 (00:01 +0300)] 
[VSX] add algorithm for alignr w/o use of immediates

2 years ago[VSX] correct lshiftbyte_m128/rshiftbyte_m128, variable_byte_shift
Konstantinos Margaritis [Tue, 6 Sep 2022 20:39:44 +0000 (23:39 +0300)] 
[VSX] correct lshiftbyte_m128/rshiftbyte_m128, variable_byte_shift

2 years ago[VSX] huge optimization of movemask128
Konstantinos Margaritis [Tue, 6 Sep 2022 17:08:44 +0000 (20:08 +0300)] 
[VSX] huge optimization of movemask128

2 years ago[VSX] optimize and correct lshift_m128/rshift_m128
Konstantinos Margaritis [Tue, 6 Sep 2022 15:46:39 +0000 (18:46 +0300)] 
[VSX] optimize and correct lshift_m128/rshift_m128

2 years ago[VSX] optimized mask1bit128(), moved simd_onebit_masks to common
Konstantinos Margaritis [Tue, 6 Sep 2022 15:10:55 +0000 (18:10 +0300)] 
[VSX] optimized mask1bit128(), moved simd_onebit_masks to common

2 years agoadd popcount32x4, popcount64x4 helper functions
Konstantinos Margaritis [Fri, 2 Sep 2022 12:12:56 +0000 (15:12 +0300)] 
add popcount32x4, popcount64x4 helper functions

2 years agoMerge pull request #118 from VectorCamp/bugfix/hyperscan-backport-202208
Konstantinos Margaritis [Sat, 3 Sep 2022 06:32:43 +0000 (09:32 +0300)] 
Merge pull request #118 from VectorCamp/bugfix/hyperscan-backport-202208

Bugfix/hyperscan backport 202208

2 years agoAdd missing <memory> header 118/head
Konstantinos Margaritis [Tue, 30 Aug 2022 17:40:23 +0000 (20:40 +0300)] 
Add missing <memory> header

2 years agofix build with glibc-2.34
Liu Zixian [Mon, 27 Jun 2022 08:07:16 +0000 (16:07 +0800)] 
fix build with glibc-2.34

SIGTSKSZ is no long a constant after glibc 2.34
https://sourceware.org/pipermail/libc-alpha/2021-August/129718.html

2 years agoliteral API: add empty string check.
Hong, Yang A [Thu, 4 Mar 2021 16:13:46 +0000 (16:13 +0000)] 
literal API: add empty string check.

fixes github issue #302, #304

2 years agochimera: fix SKIP flag issue
Hong, Yang A [Thu, 28 Jul 2022 04:59:34 +0000 (04:59 +0000)] 
chimera: fix SKIP flag issue

fix github issue #360

2 years agoCorpus editor: fix random char value of UTF-8.
Chang, Harry [Thu, 12 May 2022 08:20:29 +0000 (08:20 +0000)] 
Corpus editor: fix random char value of UTF-8.

2 years agoCorpus generator: fix random char value of UTF-8.
Chang, Harry [Thu, 12 May 2022 02:15:07 +0000 (02:15 +0000)] 
Corpus generator: fix random char value of UTF-8.

fixes github issue #184

2 years agobugfix: fix overflow risk of strlen function
Hong, Yang A [Thu, 28 Apr 2022 10:11:32 +0000 (10:11 +0000)] 
bugfix: fix overflow risk of strlen function

2 years agoFix segfaults on allocation failure (#4)
hongyang7 [Thu, 16 Dec 2021 11:02:17 +0000 (19:02 +0800)] 
Fix segfaults on allocation failure (#4)

Throw std::bad_alloc instead of returning nullptr from
ue2::AlignedAllocator. Allocators for STL containers are expected never
to return with an invalid pointer, and instead must throw on failure.
Violating this expectation can lead to invalid pointer dereferences.

Co-authored-by: johanngan <johanngan.us@gmail.com>
fixes github issue #317 (PR #320)

2 years agoLogical Combination: bypass combination flag in hs_expression_info.
Chang, Harry [Wed, 10 Mar 2021 07:20:01 +0000 (07:20 +0000)] 
Logical Combination: bypass combination flag in hs_expression_info.

Fixes github issue #291

2 years agoupdate year for bugfix #302-#305
Hong, Yang A [Thu, 11 Mar 2021 15:20:55 +0000 (15:20 +0000)] 
update year for bugfix #302-#305

2 years agomcclellan: improve wide-state checking in Sherman optimization
Hong, Yang A [Thu, 4 Mar 2021 17:00:34 +0000 (17:00 +0000)] 
mcclellan: improve wide-state checking in Sherman optimization

fixes github issue #305

2 years agoliteral API: add instruction support
Hong, Yang A [Thu, 4 Mar 2021 16:50:14 +0000 (16:50 +0000)] 
literal API: add instruction support

fixes github issue #303

3 years agoMerge pull request #116 from pareenaverma/develop
Konstantinos Margaritis [Wed, 20 Jul 2022 20:08:11 +0000 (23:08 +0300)] 
Merge pull request #116 from pareenaverma/develop

Fixed the PCRE download location

3 years agoMerge pull request #113 from danlark1/develop
Konstantinos Margaritis [Wed, 20 Jul 2022 13:41:33 +0000 (16:41 +0300)] 
Merge pull request #113 from danlark1/develop

Optimize vectorscan for aarch64 by using shrn instruction

3 years agoFixed the PCRE download location 116/head
Ubuntu [Wed, 20 Jul 2022 13:26:52 +0000 (13:26 +0000)] 
Fixed the PCRE download location

3 years agoFix avx512 movemask call 113/head
Danila Kutenin [Wed, 20 Jul 2022 08:03:50 +0000 (09:03 +0100)] 
Fix avx512 movemask call

3 years agoFix ppc64el debug
Danila Kutenin [Sun, 26 Jun 2022 23:05:17 +0000 (23:05 +0000)] 
Fix ppc64el debug

3 years agoMinor fix
Danila Kutenin [Sun, 26 Jun 2022 23:02:02 +0000 (23:02 +0000)] 
Minor fix

3 years agoFix formatting of a couple files
Danila Kutenin [Sun, 26 Jun 2022 22:59:58 +0000 (22:59 +0000)] 
Fix formatting of a couple files

3 years agoOptimize vectorscan for aarch64 by using shrn instruction
Danila Kutenin [Sun, 26 Jun 2022 22:50:05 +0000 (22:50 +0000)] 
Optimize vectorscan for aarch64 by using shrn instruction

This optimization is based on the thread
https://twitter.com/Danlark1/status/1539344279268691970 and uses
shift right and narrow by 4 instruction https://developer.arm.com/documentation/ddi0596/2020-12/SIMD-FP-Instructions/SHRN--SHRN2--Shift-Right-Narrow--immediate--

To achieve that, I needed to redesign a little movemask into comparemask
and have an additional step towards mask iteration. Our benchmarks
showed 10-15% improvement on average for long matches.

3 years agoMerge pull request #102 from danlark1/patch-2 103/head
Konstantinos Margaritis [Mon, 18 Apr 2022 17:56:26 +0000 (20:56 +0300)] 
Merge pull request #102 from danlark1/patch-2

Optimized and correct version of movemask128 for ARM

3 years agoOptimized and correct version of movemask128 for ARM 102/head
Daniel Kutenin [Mon, 18 Apr 2022 12:37:53 +0000 (13:37 +0100)] 
Optimized and correct version of movemask128 for ARM

Closes #99

https://gcc.godbolt.org/z/cTjKqzcvn

Previous version was not correct because movemask thought of having bytes 0xFF. We can fully match the semantics + do it faster with USRA instructions.

Re-submission to a develop branch

3 years agoMerge pull request #94 from a16bitsysop/fat_runtime
Konstantinos Margaritis [Mon, 18 Apr 2022 08:08:29 +0000 (11:08 +0300)] 
Merge pull request #94 from a16bitsysop/fat_runtime

change FAT_RUNTIME to a normal option so it can be set to off

3 years agoMerge pull request #93 from danlark1/master
Konstantinos Margaritis [Mon, 18 Apr 2022 08:07:18 +0000 (11:07 +0300)] 
Merge pull request #93 from danlark1/master

Fix all ASAN issues in vectorscan

3 years agomove to original position 94/head
Duncan Bellamy [Tue, 22 Feb 2022 19:21:18 +0000 (19:21 +0000)] 
move to original position

3 years agochange FAT_RUNTIME to a normal option so it can be set to off
Duncan Bellamy [Sun, 20 Feb 2022 13:14:11 +0000 (13:14 +0000)] 
change FAT_RUNTIME to a normal option so it can be set to off

fixes #89

3 years agoFix a couple of tests 93/head
Danila Kutenin [Fri, 18 Feb 2022 19:31:03 +0000 (19:31 +0000)] 
Fix a couple of tests

3 years agoAdd sanitize options
Danila Kutenin [Fri, 18 Feb 2022 18:35:26 +0000 (18:35 +0000)] 
Add sanitize options

3 years agoFix all ASAN issues in vectorscan 92/head
Danila Kutenin [Fri, 18 Feb 2022 17:14:51 +0000 (17:14 +0000)] 
Fix all ASAN issues in vectorscan

3 years agoMerge pull request #90 from BigRedEye/vectorscan-master
Konstantinos Margaritis [Tue, 8 Feb 2022 07:20:34 +0000 (09:20 +0200)] 
Merge pull request #90 from BigRedEye/vectorscan-master

Fix word boundary assertions under C++20

3 years agofix: Mark operator bool explicit 90/head
BigRedEye [Sat, 8 Jan 2022 01:12:16 +0000 (04:12 +0300)] 
fix: Mark operator bool explicit

3 years agoMerge pull request #86 from VectorCamp/develop vectorscan/5.4.6
Konstantinos Margaritis [Fri, 21 Jan 2022 10:25:40 +0000 (12:25 +0200)] 
Merge pull request #86 from VectorCamp/develop

New release 5.4.6

3 years agoMerge pull request #87 from VectorCamp/feature/move-debian-package-to-separate-branch 86/head
Konstantinos Margaritis [Fri, 21 Jan 2022 10:24:03 +0000 (12:24 +0200)] 
Merge pull request #87 from VectorCamp/feature/move-debian-package-to-separate-branch

keep debian folder in a separate branch

3 years agokeep debian folder in a separate branch 87/head
Konstantinos Margaritis [Fri, 21 Jan 2022 10:07:25 +0000 (12:07 +0200)] 
keep debian folder in a separate branch

3 years agoMerge pull request #85 from VectorCamp/feature/add-debian-package
Konstantinos Margaritis [Fri, 21 Jan 2022 08:12:04 +0000 (10:12 +0200)] 
Merge pull request #85 from VectorCamp/feature/add-debian-package

Feature/add debian package

3 years agochange source format to native, as we include debian folder 85/head
Konstantinos Margaritis [Thu, 20 Jan 2022 19:03:02 +0000 (21:03 +0200)] 
change source format to native, as we include debian folder

3 years agofix description, remove sse4.2-support from b-depends
Konstantinos Margaritis [Thu, 20 Jan 2022 19:02:46 +0000 (21:02 +0200)] 
fix description, remove sse4.2-support from b-depends

3 years agoadd ITP bug report
Konstantinos Margaritis [Thu, 20 Jan 2022 19:02:30 +0000 (21:02 +0200)] 
add ITP bug report

3 years agoadd sse4.2-support package to enforce such dependency
Konstantinos Margaritis [Wed, 19 Jan 2022 13:08:52 +0000 (15:08 +0200)] 
add sse4.2-support package to enforce such dependency

3 years agoremove preinst script, not needed as we bumped our deps
Konstantinos Margaritis [Wed, 19 Jan 2022 13:08:04 +0000 (15:08 +0200)] 
remove preinst script, not needed as we bumped our deps

3 years agoadd our copyrights, minor fixes
Konstantinos Margaritis [Wed, 19 Jan 2022 12:31:59 +0000 (14:31 +0200)] 
add our copyrights, minor fixes

3 years agodefer setting arch/tune flags for FAT_RUNTIME
Konstantinos Margaritis [Tue, 18 Jan 2022 18:34:45 +0000 (20:34 +0200)] 
defer setting arch/tune flags for FAT_RUNTIME

3 years agoenable FAT_RUNTIME
Konstantinos Margaritis [Tue, 18 Jan 2022 18:32:22 +0000 (20:32 +0200)] 
enable FAT_RUNTIME

3 years agofix DEB_CMAKE_FLAGS depending on DEB_HOST_ARCH
Konstantinos Margaritis [Wed, 22 Dec 2021 11:25:29 +0000 (13:25 +0200)] 
fix DEB_CMAKE_FLAGS depending on DEB_HOST_ARCH

3 years agoInitial attempt at debian packaging, modified hyperscan packaging
Konstantinos Margaritis [Wed, 22 Dec 2021 11:13:12 +0000 (13:13 +0200)] 
Initial attempt at debian packaging, modified hyperscan packaging

3 years agoMerge pull request #82 from VectorCamp/feature/add-macos-support
Konstantinos Margaritis [Sat, 11 Dec 2021 23:13:14 +0000 (01:13 +0200)] 
Merge pull request #82 from VectorCamp/feature/add-macos-support

Minor changes to enable compilation on Mac M1

3 years agoMinor changes to enable compilation on Mac M1 82/head
Konstantinos Margaritis [Sat, 11 Dec 2021 13:43:55 +0000 (15:43 +0200)] 
Minor changes to enable compilation on Mac M1

3 years agoMerge pull request #81 from VectorCamp/feature/add-clang-support
Konstantinos Margaritis [Tue, 7 Dec 2021 20:16:38 +0000 (22:16 +0200)] 
Merge pull request #81 from VectorCamp/feature/add-clang-support

Feature/add clang support

3 years agominor fixes 81/head
Konstantinos Margaritis [Tue, 7 Dec 2021 08:49:59 +0000 (08:49 +0000)] 
minor fixes

3 years agofix clang-release-arm compilation
Konstantinos Margaritis [Tue, 7 Dec 2021 08:43:52 +0000 (08:43 +0000)] 
fix clang-release-arm compilation

3 years agofix wrong castings for NEON
Konstantinos Margaritis [Mon, 6 Dec 2021 21:35:51 +0000 (21:35 +0000)] 
fix wrong castings for NEON

3 years agolower gcc minver to 9 to enable building on Ubuntu 20 LTS
Konstantinos Margaritis [Mon, 6 Dec 2021 21:35:37 +0000 (21:35 +0000)] 
lower gcc minver to 9 to enable building on Ubuntu 20 LTS

3 years agoupdate Jenkinsfile for all configurations
Konstantinos Margaritis [Mon, 6 Dec 2021 18:38:01 +0000 (18:38 +0000)] 
update Jenkinsfile for all configurations

3 years agofix typo
Konstantinos Margaritis [Mon, 6 Dec 2021 18:33:37 +0000 (20:33 +0200)] 
fix typo

3 years agofix compilation with clang and some incomplete/wrong implementations for arm this...
Konstantinos Margaritis [Mon, 6 Dec 2021 18:22:58 +0000 (18:22 +0000)] 
fix compilation with clang and some incomplete/wrong implementations for arm this time

3 years agouse Jenkinsfile in git
Konstantinos Margaritis [Fri, 3 Dec 2021 16:27:21 +0000 (18:27 +0200)] 
use Jenkinsfile in git

3 years agofix build failures with clang on x86, make sure compilation works on other Power...
Konstantinos Margaritis [Fri, 3 Dec 2021 14:24:58 +0000 (16:24 +0200)] 
fix build failures with clang on x86, make sure compilation works on other Power as well

3 years agoclang is more strict
Konstantinos Margaritis [Thu, 2 Dec 2021 21:09:53 +0000 (23:09 +0200)] 
clang is more strict

3 years agodon't fail if mtune does not return a valid configuration
Konstantinos Margaritis [Thu, 2 Dec 2021 21:09:34 +0000 (23:09 +0200)] 
don't fail if mtune does not return a valid configuration

3 years agoPower does not use -march
Konstantinos Margaritis [Thu, 2 Dec 2021 16:01:26 +0000 (18:01 +0200)] 
Power does not use -march

3 years agofix build with clang, in particular VSX uses long long instead of int64_t, gcc allows...
Konstantinos Margaritis [Thu, 2 Dec 2021 16:01:00 +0000 (18:01 +0200)] 
fix build with clang, in particular VSX uses long long instead of int64_t, gcc allows this, clang does not

3 years agouse same definition of the union for all types
Konstantinos Margaritis [Thu, 2 Dec 2021 16:00:02 +0000 (18:00 +0200)] 
use same definition of the union for all types

3 years agoset -msse4.2 only on Intel
Konstantinos Margaritis [Wed, 1 Dec 2021 21:45:31 +0000 (21:45 +0000)] 
set -msse4.2 only on Intel

3 years agorework CMakeLists.txt to ensure it works with clang
Konstantinos Margaritis [Wed, 1 Dec 2021 21:23:37 +0000 (23:23 +0200)] 
rework CMakeLists.txt to ensure it works with clang

3 years agofix misompilations with clang++, as it is more strict
Konstantinos Margaritis [Wed, 1 Dec 2021 21:22:15 +0000 (23:22 +0200)] 
fix misompilations with clang++, as it is more strict

3 years agobump base requirements to SSE4.2
Konstantinos Margaritis [Wed, 1 Dec 2021 21:19:43 +0000 (23:19 +0200)] 
bump base requirements to SSE4.2

3 years agofix miscompilation with clang
Konstantinos Margaritis [Wed, 1 Dec 2021 21:18:57 +0000 (23:18 +0200)] 
fix miscompilation with clang

3 years agoMerge pull request #80 from VectorCamp/bugfix/fix-SVE2-build
Konstantinos Margaritis [Thu, 25 Nov 2021 20:19:12 +0000 (22:19 +0200)] 
Merge pull request #80 from VectorCamp/bugfix/fix-SVE2-build

fix SVE2 build after the changes

3 years agofix SVE2 build after the changes 80/head
Konstantinos Margaritis [Thu, 25 Nov 2021 16:48:24 +0000 (18:48 +0200)] 
fix SVE2 build after the changes

3 years agoMerge pull request #79 from Apostolos00tapsas/feature/complete-power9-VSX-support
Konstantinos Margaritis [Thu, 25 Nov 2021 16:40:17 +0000 (18:40 +0200)] 
Merge pull request #79 from Apostolos00tapsas/feature/complete-power9-VSX-support

Feature/complete power9 vsx support

3 years agofix unit-internal release builds using __builtin_constant_p() as well 79/head
Konstantinos Margaritis [Thu, 25 Nov 2021 13:09:01 +0000 (15:09 +0200)] 
fix unit-internal release builds using __builtin_constant_p() as well

3 years agonit
Konstantinos Margaritis [Thu, 25 Nov 2021 06:21:07 +0000 (06:21 +0000)] 
nit

3 years agouse __builtin_constant_p() instead for arm as well
Konstantinos Margaritis [Thu, 25 Nov 2021 06:20:53 +0000 (06:20 +0000)] 
use __builtin_constant_p() instead for arm as well

3 years agoRemoved duplicates
Apostolos Tapsas [Wed, 24 Nov 2021 15:09:53 +0000 (15:09 +0000)] 
Removed duplicates

3 years ago*fix palignr implementation for VSX Release mode
Apostolos Tapsas [Wed, 24 Nov 2021 15:03:49 +0000 (15:03 +0000)] 
*fix palignr implementation for VSX Release mode
*add unit test for palignr
*enable unit test building for Release mode

3 years agoRemoved accidentaly included header file
Apostolos Tapsas [Wed, 24 Nov 2021 12:11:21 +0000 (12:11 +0000)] 
Removed accidentaly included header file

3 years agofound and solved very hard to track bug of intrinsic function palignr, that manifeste...
Apostolos Tapsas [Wed, 24 Nov 2021 11:18:18 +0000 (11:18 +0000)] 
found and solved very hard to track bug of intrinsic function palignr, that manifested only in Release builds and not Debug builds in a particular number of tests

3 years agoWIP:tracking last bugs in failing tests for release build
Apostolos Tapsas [Tue, 16 Nov 2021 15:24:22 +0000 (15:24 +0000)] 
WIP:tracking last bugs in failing tests for release build

3 years agovermicelli and match implementations for ppc64el added
Apostolos Tapsas [Sat, 13 Nov 2021 19:36:46 +0000 (19:36 +0000)] 
vermicelli and match implementations for ppc64el added