Discussing the work being done to bring HardwareAddressSanitizer and automatic MTE instrumentation to GCC.
Both of these introduce automatic checking of memory accesses into your code in a manner similar to ASAN. They use AArch64 architecture features to perform this memory checking with lower overheads.
We will introduce the approach, highlight what has already been done in LLVM by engineers at Google, and discuss some of the potential difficulties in rollout of these features.
We're especially keen to publicise the existing `pointer-compare` sanitizer that checks for a particular type of Undefined Behaviour which rarely causes problems in code without these features but can produce difficult to understand problems once HWASAN or MTE instrumentation is added.
Software Engineer (Arm)
After discovering software during a PhD in Physics I now have a particular interest in debugging and data visualisation/presentation. I work at Arm on GNU tools.