[12/12] patch series to port ASAN for riscv64
These changes allow using HWASAN on RISCV64 architecture.
The majority of existing tests are passing with a few exceptions(see below).
The tests were run on QEMU, since currently there're no hardware with support
for J-extension.
For this feature to work the system must support PR_{SET,GET}_TAGGED_ADDR_CTRL
syscall. For now this is only available for a patched Linux kernel and QEMU with
enabled experimental J-extension.
Results of running HWASAN lit tests for RISC-V:
Unsupported : 5 Passed : 79 Expectedly Failed : 3
Current RISC-V code models and existing relocation symbols don't allow us to
tag global variables. This will be addressed in further patches.
These tests are marked as expected to fail since they check tagging globals:
HWAddressSanitizer-riscv64 :: TestCases/global-with-reduction.c (21 of 87) HWAddressSanitizer-riscv64 :: TestCases/global.c (22 of 87) HWAddressSanitizer-riscv64 :: TestCases/exported-tagged-global.c (52 of 87)
Depends On D131344