Tracking Issue for LLVM AllocToken and Heap Partitioning Support for Rust
Open
@rcvalle is already working on this.
Since Jul 10, 2026.
A-sanitizers
C-tracking-issue
PG-exploit-mitigations
- Dominant language
- Rust
- Stars
- 119k
- Forks
- 16.1k
- PR merge metrics
- PR metrics pending
Description
This is a tracking issue for the LLVM AllocToken and Heap Partitioning Support for Rust project (see the design document draft).
Steps
- Add option to the Rust compiler driver and frontend (i.e.,
-Zsanitizer=alloc-tokenand related options). - Add support for emitting allocation token function attributes, module flags, and allocation token hint metadata to the Rust compiler code generation.
- Implement the default
pointer-splitheap partitioning scheme in therustc_sanitizerscrate. - Define allocation token classifications and type name encodings for cross-language LLVM AllocToken and heap partitioning support.
- Change the initial implementation to use the defined classifications and type name encodings for cross-language LLVM AllocToken and heap partitioning support.
- Add typed allocation paths and allocation token hints to the Rust standard library.
- Add token-enabled allocator interface support to the Rust standard library and to the Rust compiler allocator shim generation.
- Add the alloc_token_infer intrinsic.
- Create documentation and tests.
Unresolved Questions
None.
Implementation history
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.