Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
19 commits
Select commit Hold shift + click to select a range
0c715b1
Normalize line endings with .gitattributes
scizzydo Oct 3, 2026
02dce90
Add SIMD scanning, compile-time-only patterns and a test suite
scizzydo Oct 3, 2026
35aeff5
Fix the fuzz test's alignment step on arm64
scizzydo Oct 3, 2026
916257d
Fix ArmPattern parsing and arm64 /d resolution, add test_arm
scizzydo Oct 3, 2026
7906eb7
Keep XORPattern plaintext out of optimized builds
scizzydo Oct 3, 2026
2866585
Detect arm64 from __aarch64__ and _M_ARM64, not only __arm64__
scizzydo Oct 3, 2026
a6dcae8
Add find_all, ArmXORPattern and XOR'd masks
scizzydo Oct 12, 2026
74e7123
Move headers to include/PatternScanner for header-only use
scizzydo Oct 12, 2026
f7d4350
Add PatternScanner::PatternScanner interface target
scizzydo Oct 12, 2026
07939e4
Per-pattern target architecture, RuntimeArmPattern, C++17 ArmPattern
scizzydo Oct 12, 2026
61da333
Add IDA plugin: search databases with PatternScanner patterns
scizzydo Oct 12, 2026
10006c5
Share the pattern parsers; test for compile-time leftovers in binaries
scizzydo Oct 12, 2026
480c303
test_artifacts: scan every pattern from one function, add LTO builds
scizzydo Oct 12, 2026
92b19ba
Add CI: library tests and IDA plugin build on Windows and macOS
scizzydo Oct 12, 2026
3b2a1b3
CI: library tests only
scizzydo Oct 12, 2026
3771066
Encode arm64 STP and MOV; warn about unsupported lines in the IDA plugin
scizzydo Oct 12, 2026
b613647
Encode arm64 B.cond, CMP/CMN/TST, AND/ANDS/EOR, byte/half/unscaled lo…
scizzydo Oct 12, 2026
f4bd686
Fix arm64 encodings and /d decoding, nibble wildcards, plugin crash
scizzydo Oct 12, 2026
d4dc2a5
test_arm: NOPs inside an ADRP chain
scizzydo Oct 12, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Stored with LF; checked out with the platform's line endings
* text=auto
22 changes: 22 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name: CI

on:
push:
branches: [master]
pull_request:
workflow_dispatch:

jobs:
# Library tests (tests/), including the compile-time leftovers matrix
tests:
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- run: cmake -S tests -B build -DCMAKE_BUILD_TYPE=Release
- run: cmake --build build --config Release --parallel
- run: ctest --test-dir build -C Release --output-on-failure

3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
.vscode/
.vscode/
build*/
9 changes: 9 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Header-only: for add_subdirectory / FetchContent users. Links as PatternScanner::PatternScanner.
# Tests are a separate project in tests/.
cmake_minimum_required(VERSION 3.16)
project(PatternScanner CXX)

add_library(PatternScanner INTERFACE)
add_library(PatternScanner::PatternScanner ALIAS PatternScanner)
target_include_directories(PatternScanner INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/include)
target_compile_features(PatternScanner INTERFACE cxx_std_17)
137 changes: 0 additions & 137 deletions CompileTimePattern.hpp

This file was deleted.

Loading
Loading