2150 Commits

Author SHA1 Message Date
Matthew Barr
3dc8bab78f Build convenience libraries as static libs 2016-04-20 13:34:55 +10:00
Matthew Barr
088347b437 Remove unused storeu macros 2016-04-20 13:34:55 +10:00
Matthew Barr
dd4c1eceb8 Remove unused loadu2x128 2016-04-20 13:34:55 +10:00
Justin Viiret
e034ccb9b4 mmbit_iterate_bounded: make block_width u64a 2016-04-20 13:34:55 +10:00
Matthew Barr
7a6c6f46ed remove HAVE_PTHREAD_H 2016-04-20 13:34:55 +10:00
Matthew Barr
18cfd11c0f remove ENABLE_TOOLS_THREADS 2016-04-20 13:34:55 +10:00
Justin Viiret
839c90594c mcclellan: Remove the use of state numbering
McClellan and Haig only need to know which states are not participants
(i.e. unused start, startDs)
2016-04-20 13:34:55 +10:00
Justin Viiret
5dd4aa9c13 ng_find_matches: Simplify and improve performance
Improve performance by using bitsets rather than sets of vertex
indices.
2016-04-20 13:34:55 +10:00
Justin Viiret
9ae908fd11 shufticompile: Remove unused mergeShuftiMask 2016-04-20 13:34:55 +10:00
Justin Viiret
2cd28a5fa4 scratch: Remove (now unused) tctxtToScratch 2016-04-20 13:34:54 +10:00
Justin Viiret
d0aa138ada castle/repeat: fix a number of bugs
- Add fits_in_len_bytes assertions for packed stores.
  Corrects the assertion formerly on line 888.

- In exclusive mode, don't overwrite packedCtrlSize with the max of the
  group; each repeat should know how many bytes it is using, even if
  they share the same stream state.

- Ensure that exclusive mode stream state is sized correctly.
2016-04-20 13:34:54 +10:00
Matthew Barr
e10d2eb269 PrintTo functions for google test and valgrind 2016-04-20 13:34:54 +10:00
Alex Coyte
4a482b07ea UE-2919: add termination checks around handleReportInternally 2016-04-20 13:34:54 +10:00
Justin Viiret
9c9eb2ca9a makeReport: remove unused param 2016-04-20 13:34:54 +10:00
Justin Viiret
ff7e101757 Rose: be more precise with CATCHUP instruction
- Fix bugs introduced by recent addition of the boundary program. It's
  not safe to do catchup there.
- Only do catchup once per report set, when necessary.
2016-04-20 13:34:54 +10:00
Justin Viiret
e466e67b79 AlignedAllocator: simplify and fix for MSVC, C++11
- Simplify thanks to minimal allocator requirements in C++11.
- Add required copy constructor.
2016-04-20 13:34:54 +10:00
Justin Viiret
93a262e54c Rose: use program for boundary reports
Use the program to handle report lists at boundaries, rather than the
previous list-of-reports approach.
2016-04-20 13:34:54 +10:00
Justin Viiret
24ccefa3d3 Rose: make all NFA callbacks take scratch as ctx 2016-04-20 13:34:54 +10:00
Justin Viiret
6af1ead0aa Rose: make HWLM callbacks take scratch as ctx 2016-04-20 13:34:54 +10:00
Justin Viiret
f7a40b200d Rose: remove dead function roseHandleMatch 2016-04-20 13:34:54 +10:00
Justin Viiret
b093616aff Rose build: move HWLM build code to own file
To reduce the size of rose_build_bytecode.cpp a little, move the code
that deals with HWLM literal tables into its own new file.
2016-04-20 13:34:54 +10:00
Justin Viiret
12921b7c97 Add hs_expression_ext_info() API function
This is a variant of hs_expression_info() that can also accept extended
parameters.
2016-04-20 13:34:54 +10:00
Justin Viiret
67b9784dae Rose: use program for all literal matches
Unifies all literal match paths so that the Rose program is used for all
of them. This removes the previous specialised "direct report" and
"multi direct report" paths. Some additional REPORT instruction work was
necessary for this.

Reworked literal construction path at compile time in prep for using
program offsets as literal IDs.

Completely removed the anchored log runtime, which is no longer worth
the extra complexity.
2016-04-20 13:34:54 +10:00
Mohammad Abdul Awal
b58d05dfec Fixed some DEBUG_OUTPUT format string. 2016-04-20 13:34:53 +10:00
Justin Viiret
1bc12139a2 ComponentCondReference: mark ctors explicit 2016-04-20 13:34:53 +10:00
Justin Viiret
4e80d22d79 Use using directives to silence hiding warning 2016-04-20 13:34:53 +10:00
Justin Viiret
60dcd0c160 Remove CMake tests for pthread barriers 2016-04-20 13:34:53 +10:00
Matthew Barr
78b780c550 Don't enable -Werror for release builds
Using -Werror is a very good thing during development, but it has the
potential to break the user's build, for example, if they are using a slightly
different compiler combination to one that has been tested previously.
2016-03-01 11:42:49 +11:00
Matthew Barr
82438a567f Fix typo 2016-03-01 11:42:49 +11:00
Matthew Barr
5537f9da78 Install pkgconfig file everywhere but Windows 2016-03-01 11:42:49 +11:00
Justin Viiret
ec223e3622 Always init NFAContext::cached_br
Now that it's on stack, this should be initialised. Silences a warning
from valgrind.
2016-03-01 11:36:22 +11:00
Matthew Barr
90ea5b6010 Correct asserts 2016-03-01 11:36:22 +11:00
Xiang Wang
a7daa70942 Castle: exclusive analysis for multiple subcastle chunks
Apply clique analysis to subcastle chunks if the number of
subcastles is large and check the status of each chunk
separately at runtime.
2016-03-01 11:36:10 +11:00
Justin Viiret
6bcccb4c5d Rose: further generalise literal dedupe work 2016-03-01 11:36:10 +11:00
Justin Viiret
f519fd9bcd Rose: don't assume roles with >1 lit need dedupe
We only require dedupe for such roles when they have literals that can
arrive simultaneously (i.e. one literal overlaps with the suffix of
another).
2016-03-01 11:36:10 +11:00
Justin Viiret
0d9422eed7 Rose: make DR runtime path external report only 2016-03-01 11:36:10 +11:00
Justin Viiret
b62711a18f Rose: only use direct reports for external reports 2016-03-01 11:36:10 +11:00
Justin Viiret
cc5db61686 Rose: allow DR literals to share vertices 2016-03-01 11:36:09 +11:00
Justin Viiret
31dea6c275 Rose: allow direct reports to be aliased 2016-03-01 11:36:09 +11:00
Justin Viiret
6294b8a89b Rose: assign DRs in allocateFinalLiteralId
Previously, direct reports were allocated earlier; now all final IDs are
assigned in the same place.
2016-03-01 11:36:09 +11:00
Matthew Barr
d77ee0839d Improved test for AVX2 support
Test for xsave and XMM/YMM registers. Use ICC dynamic feature detection
where available.
2016-03-01 11:36:09 +11:00
Justin Viiret
6e8f394d8d Make comparison signed (fix warning) 2016-03-01 11:36:09 +11:00
Justin Viiret
c055f81398 Dump: give abs jump targets in output 2016-03-01 11:35:09 +11:00
Justin Viiret
129578f970 Rose program: Improvements to debug/assertions
- Add current pc to debug printf.
- Assert that pc doesn't escape the RoseEngine structure.
2016-03-01 11:35:09 +11:00
Justin Viiret
030cc2a487 Update Rose state layout description
Many of the things in this list no longer existed.
2016-03-01 11:35:09 +11:00
Justin Viiret
5a1dd54049 Split CHECK_LEFTFIX into CHECK_{INFIX,PREFIX} 2016-03-01 11:35:08 +11:00
Justin Viiret
7a775e5fab reduceInfixQueue: factor out any_work check 2016-03-01 11:34:57 +11:00
Justin Viiret
4d5710a84a Rename rosePrefixCheckMiracles to roseLeftfix... 2016-03-01 11:34:57 +11:00
Justin Viiret
8f3471dd4e Rename reduceQueue to reduceInfixQueue 2016-03-01 11:34:57 +11:00
Justin Viiret
bba8b62635 Use rose_inline rather than really_inline 2016-03-01 11:34:57 +11:00