Skip to content

feat: Cache-aligned bytecode storage#343

Merged
zharinov merged 1 commit intomasterfrom
feat/aligned-bytecode-storage
Jan 14, 2026
Merged

feat: Cache-aligned bytecode storage#343
zharinov merged 1 commit intomasterfrom
feat/aligned-bytecode-storage

Conversation

@zharinov
Copy link
Member

Summary

  • Add AlignedVec type using Vec<Block> trick for 64-byte alignment
  • Add include_query_aligned! macro for zero-copy embedded bytecode
  • Update ByteStorage enum with Static and Aligned variants
  • New Module API: from_aligned, from_static, from_path, load
  • Deprecate Module::from_bytes

Why

Bytecode sections are 64-byte aligned internally. For DFA deserialization and cache efficiency, the buffer itself must start at a 64-byte boundary. Standard Vec<u8> provides no alignment guarantees.

@zharinov zharinov enabled auto-merge (squash) January 14, 2026 19:50
@zharinov zharinov force-pushed the feat/aligned-bytecode-storage branch from 9e97d5f to 46ec364 Compare January 14, 2026 22:35
@zharinov zharinov changed the title feat: 64-byte aligned bytecode storage feat: Cache-aligned bytecode storage Jan 14, 2026
@zharinov zharinov merged commit 62d6aff into master Jan 14, 2026
3 checks passed
@zharinov zharinov deleted the feat/aligned-bytecode-storage branch January 14, 2026 22:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant