This patch changes hwasan inline instrumentation:
- Fixes address untagging for shadow address calculation (use 0xFF instead of 0x00 for the top byte).
- Emits brk instruction instead of hlt for the kernel and user space.
- Use 0x900 instead of 0x100 for brk immediate (0x100 - 0x800 are unavailable in the kernel).
- Fixes and adds appropriate tests.
Could we use 0x900 in the userspace as well? I assume 0x100 is not available in the kernel for some reason. There are no ABI concerns yet.