MTE - AshokBhat/notes GitHub Wiki
About
- Memory Tagging Extension (MTE)
- First introduced in Armv8.5-A
Features
- 64-bit only
- Two types of tags
- Every aligned 16 bytes of memory have a 4-bit tag stored separately
- Every pointer has a 4-bit tag stored in the top byte
- LD/ST instructions check both tags, raise exception on mismatch
- New instructions to manipulate the tags
Usage
- Tagging heap objects
- Tagging stack objects
Compiler support
- LLVM - Stack tagging in LLVM 9.0
- GNU - TBD
See also
- [Armv8.5-A]] ](/AshokBhat/notes/wiki/[[PAC) | BTI
Resources