rizin/test/unit
Rot127 2d7b178c84
String search performance improvement (#5383)
* Add speed up search for unaligned buffers and string encodings.

The new search mode adjusts the buffer's data (swap endianness, fix alignment)
so the buffer can be searched with PCRE2 without scanning.

It also enables RzRegexMulti opbjects to have their own JIT stack.
This makes them usable in a thread safe manner.

* Fix regex compilation on big endian systems

* Update the scanning check (UTF needs no scanning anymore).
2025-09-18 00:42:03 +08:00
..
auxiliary Use add_global_arguments instead of passing cflags/ldflags all around (#2812) 2022-07-17 21:33:51 +08:00
cpp Replace rz_core_cmd0 calls in tui/panels.c and port cmd_help commands to RzShell as cmd_math (#3421) 2023-03-30 18:36:48 +08:00
.gitignore
meson.build Add: Mark API (#5313) 2025-09-01 22:06:01 +00:00
minunit.h Use Rizin specific macros instead of the ones from SDB 2022-07-17 12:11:13 +02:00
mock_io.inl Change len parameter type to size_t in RzIO API (#4012) 2023-12-03 19:28:16 +08:00
rz_arch_buffer.h
rz_test_cmd_test
test_addr_interval.c
test_agraph.c Add (i)CFG node type annotations + bug fix (#4221) 2024-02-14 23:40:00 +08:00
test_analysis_block.c Remove Global/Static variables in path.c to make it thread safe (#5148) 2025-06-13 21:34:33 +08:00
test_analysis_block_invars.inl Convert basic block into RzPVector (#4349) 2024-03-10 15:59:15 +08:00
test_analysis_cc.c Remove Global/Static variables in path.c to make it thread safe (#5148) 2025-06-13 21:34:33 +08:00
test_analysis_class_graph.c Add different types of RzGraphNodeInfos. (#4189) 2024-02-09 22:23:36 +08:00
test_analysis_coverage.c Fix: add meta size in code count (#5054) 2025-04-02 10:54:52 +08:00
test_analysis_function.c Remove Global/Static variables in path.c to make it thread safe (#5148) 2025-06-13 21:34:33 +08:00
test_analysis_hints.c Remove Global/Static variables in path.c to make it thread safe (#5148) 2025-06-13 21:34:33 +08:00
test_analysis_meta.c Remove Global/Static variables in path.c to make it thread safe (#5148) 2025-06-13 21:34:33 +08:00
test_analysis_op.c Remove Global/Static variables in path.c to make it thread safe (#5148) 2025-06-13 21:34:33 +08:00
test_analysis_var.c Remove Global/Static variables in path.c to make it thread safe (#5148) 2025-06-13 21:34:33 +08:00
test_analysis_xrefs.c Remove Global/Static variables in path.c to make it thread safe (#5148) 2025-06-13 21:34:33 +08:00
test_annotated_code.c Add missing vector foreach macros to clang-format cfg (#4456) 2024-04-22 07:16:46 +08:00
test_base16.c librz/util: base64, base85, base36, base32, base16 support and refactor (#5216) (#5271) 2025-08-17 15:26:25 +08:00
test_base32.c librz/util: base64, base85, base36, base32, base16 support and refactor (#5216) (#5271) 2025-08-17 15:26:25 +08:00
test_base36.c librz/util: base64, base85, base36, base32, base16 support and refactor (#5216) (#5271) 2025-08-17 15:26:25 +08:00
test_base64.c test: some base64 unit tests to demonstrate bugs 2023-10-13 09:42:50 +08:00
test_base85.c librz/util: base64, base85, base36, base32, base16 support and refactor (#5216) (#5271) 2025-08-17 15:26:25 +08:00
test_big.c
test_bin_lines.c
test_bin_mach0.c Fix dyldcache reading tests with optimization (Fix #3459) (#5035) 2025-03-25 08:12:09 +01:00
test_bits.c Add several memory helpers (required for speed up of string search). (#5372) 2025-09-17 00:07:44 +08:00
test_bitvector.c Adding missing operation in bitvector lib and core theory (#4078) 2024-01-08 23:10:14 +08:00
test_buf.c RzBuffer consistency and make buffer type public (#4666) 2024-10-12 11:27:21 +02:00
test_cmd.c Make code compilable under checks_level 0 and 3 (#5102) 2025-05-10 23:29:19 +08:00
test_compare.c
test_config.c
test_config.h.in test: allow to run unit tests without installation 2022-05-10 16:57:44 +02:00
test_cons.c Remove global RzLine instance 2024-01-07 22:40:25 +08:00
test_contrbtree.c Improve cmd_help.yaml and fix random number generator (#3452) 2023-04-07 20:22:01 +08:00
test_core_analysis_stats.c Refactor rz_core_analysis_get_stats() and fix edge cases (#2645) 2022-05-30 04:59:47 +00:00
test_core_bin.c Refactor the maps in RzBinPlugin from list to pvector (#4081) 2024-01-07 12:42:54 +08:00
test_core_cmd.c Make code compilable under checks_level 0 and 3 (#5102) 2025-05-10 23:29:19 +08:00
test_core_seek.c
test_core_task.c rz_core_task_join: Return fine-grained error values (#4505) 2024-05-22 12:03:35 +08:00
test_crypto.c Fix plugin removal and clean code (#3277) 2023-01-16 13:32:46 +01:00
test_debruijn.c Finish conversion of w commands to rzshell (#2412) 2022-03-16 11:20:29 +00:00
test_debug.c Move RzBreakpoint into RzDebug (#5124) 2025-05-13 01:57:37 +08:00
test_debug_session.c sdb: remove unused cas and expire features (#4487) 2024-05-12 18:27:54 +08:00
test_diff.c Remove agd and add rz_analysis_similarity/match + refactoring 2022-10-04 20:02:35 +02:00
test_ebcdic.c
test_encodings.c Improve performance of string search. (#5262) 2025-09-11 22:29:20 +08:00
test_endian.c Add several memory helpers (required for speed up of string search). (#5372) 2025-09-17 00:07:44 +08:00
test_event.c
test_file.c Introduce rz_file_dos_basename() API 2022-03-29 09:27:51 +08:00
test_flags.c Make rz_flag_set_next() try the addr before incremental numbers as suffix (#3986) 2023-11-18 23:15:50 +01:00
test_flirt.c
test_float.c librz/util/float: fix cast of negative zero to integer. (#5291) 2025-08-06 00:06:43 +08:00
test_glob.c
test_graph.c Enable generation of inter-procedual control flow graph. (#4001) 2023-12-14 22:34:43 +08:00
test_hash.c Add calculation of total information content and information temperature (#5167) 2025-05-30 00:30:24 +08:00
test_hex.c String/Hex-Search 1/9: Add hexadecimal number helpers, doxygen and type annotations. 2025-02-22 04:12:49 +08:00
test_ht.c util: implement iterator for hash tables and sets (#4639) 2024-09-24 21:36:54 +08:00
test_id_storage.c
test_idpool.c
test_idstorage.c
test_il_definitions.c
test_il_helpers.c Enable RzIL VM to halt on exceptions. (#5305) 2025-08-25 12:43:01 +00:00
test_il_reg.c Enable RzIL VM to halt on exceptions. (#5305) 2025-08-25 12:43:01 +00:00
test_il_validate.c Add HtSP, HtSS, HtSU, SetS (#4415) 2024-04-16 20:27:48 +08:00
test_il_vm.c Enable RzIL VM to halt on exceptions. (#5305) 2025-08-25 12:43:01 +00:00
test_inflate_deflate.c
test_intervaltree.c struct timezone is obsolete/deprecated (#4672) 2024-10-16 17:13:17 +08:00
test_io.c librz/core: Fix disassembly (e.g. pd) with unmapped gaps (#4932) 2025-02-26 22:59:44 +08:00
test_io_ihex.c
test_itv.c librz/util: implement a bounded interval. (#4977) 2025-03-09 15:24:07 +08:00
test_json.c RzUtil add new API 2023-08-25 23:32:05 +08:00
test_list.c Add unit test for rz_list_sorted_uniq (#5032) 2025-03-24 21:56:05 +08:00
test_log.c Add rz_log and rz_core_notify functions usable with not-formatted strings. (#4448) 2024-04-22 07:31:37 +08:00
test_lzma.c Add liblzma subproject 2022-07-02 10:12:26 +02:00
test_marks.c Add: Mark API (#5313) 2025-09-01 22:06:01 +00:00
test_mem.c Add several memory helpers (required for speed up of string search). (#5372) 2025-09-17 00:07:44 +08:00
test_ovf.c
test_pj.c
test_rbtree.c
test_reg.c Rewrite RzReg to use RzBitVector 2022-11-01 10:58:16 +08:00
test_regex.c Improve performance of string search. (#5262) 2025-09-11 22:29:20 +08:00
test_rop.c Expose APIs for rz-solver (#4648) 2024-10-16 16:23:10 +08:00
test_rop_constraint.c Expose APIs for rz-solver (#4648) 2024-10-16 16:23:10 +08:00
test_run.c
test_rz_test.c Revert #4506 (#4519) 2024-05-27 21:50:58 +08:00
test_sdb.h DWARF improve DWARF5 support and refactor 2023-08-25 23:32:05 +08:00
test_sdb_array.c sdb: remove unused cas and expire features (#4487) 2024-05-12 18:27:54 +08:00
test_sdb_diff.c sdb: remove unused cas and expire features (#4487) 2024-05-12 18:27:54 +08:00
test_sdb_sdb.c refactor: remove sdb_fmt() and replace it with rz_strf() (#5276) 2025-07-18 22:07:23 +08:00
test_sdb_util.c Move SDB into RzUtil 2022-07-19 08:45:20 +02:00
test_serialize_analysis.c Remove Global/Static variables in path.c to make it thread safe (#5148) 2025-06-13 21:34:33 +08:00
test_serialize_config.c sdb: remove unused cas and expire features (#4487) 2024-05-12 18:27:54 +08:00
test_serialize_debug.c sdb: remove unused cas and expire features (#4487) 2024-05-12 18:27:54 +08:00
test_serialize_flag.c sdb: remove unused cas and expire features (#4487) 2024-05-12 18:27:54 +08:00
test_serialize_mark.c Add: Mark API (#5313) 2025-09-01 22:06:01 +00:00
test_serialize_seek.c sdb: remove unused cas and expire features (#4487) 2024-05-12 18:27:54 +08:00
test_serialize_spaces.c sdb: remove unused cas and expire features (#4487) 2024-05-12 18:27:54 +08:00
test_serialize_types.c sdb: remove unused cas and expire features (#4487) 2024-05-12 18:27:54 +08:00
test_skiplist.c Add user pointer to RzListComparator (#4204) 2024-02-11 13:28:33 +08:00
test_skyline.c
test_socket.c Rewrite and fix non-libuv tcp server (Rt command) 2022-08-06 13:20:52 +02:00
test_spaces.c
test_sparse.c
test_stack.c
test_str.c Improve performance of string search. (#5262) 2025-09-11 22:29:20 +08:00
test_str_search.c String search performance improvement (#5383) 2025-09-18 00:42:03 +08:00
test_strbuf.c RzStrBuf: remove weakref related code 2023-08-15 09:00:22 +08:00
test_subprocess.c Add *pty API (#3221) 2022-12-29 20:38:39 +08:00
test_table.c util/table: add basic query tests 2025-06-21 01:31:53 +08:00
test_task.c
test_threads.c Allow RzThreadIterator to be stopped. (#4904) 2025-02-14 03:30:38 +08:00
test_tokens.c Remove Global/Static variables in path.c to make it thread safe (#5148) 2025-06-13 21:34:33 +08:00
test_tree.c
test_type.c sdb: remove unused cas and expire features (#4487) 2024-05-12 18:27:54 +08:00
test_uleb128.c
test_unum.c librz/util/num: handling minimum st64 in rz_num_abs (#4952) 2025-03-02 22:44:09 +08:00
test_util.c Remove Global/Static variables in path.c to make it thread safe (#5148) 2025-06-13 21:34:33 +08:00
test_vector.c Add rz_pvector_enumerate macro (#4462) 2024-04-27 11:07:06 +08:00
test_yank.c