Arm Porting LLVM's Hardware-Assisted Address Sanitizer To GCC
The latest of LLVM's "sanitizers" being ported for the GCC compiler stack is the hardware-assisted address sanitizer (HWASAN).
Arm has been working on this port of the LLVM HWASAN sanitizer to GCC, similar to GCC's other ports of sanitizers. With the work being done by Arm, the HWASAN code is only being wired up for AArch64 (64-bit ARM) but at least lays the groundwork for getting it working on other architectures moving forward -- pending capable hardware assistance.
The Hardware-assisted AddressSanitizer is an optimized version of the conventional AddressSanitizer that relies upon hardware support. HWASAN/ASAN is able to find buffer-overflows and use-after-free bugs within code. More details on the upstream HWASAN at the LLVM documentation.
The initial GCC patches of the HWASAN port can be found via the GCC-patches list.
Arm has been working on this port of the LLVM HWASAN sanitizer to GCC, similar to GCC's other ports of sanitizers. With the work being done by Arm, the HWASAN code is only being wired up for AArch64 (64-bit ARM) but at least lays the groundwork for getting it working on other architectures moving forward -- pending capable hardware assistance.
The Hardware-assisted AddressSanitizer is an optimized version of the conventional AddressSanitizer that relies upon hardware support. HWASAN/ASAN is able to find buffer-overflows and use-after-free bugs within code. More details on the upstream HWASAN at the LLVM documentation.
The initial GCC patches of the HWASAN port can be found via the GCC-patches list.
3 Comments