summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-objcopy/Object.cpp
diff options
context:
space:
mode:
authorAlex Shlyapnikov <alekseys@google.com>2018-04-20 20:04:04 +0000
committerAlex Shlyapnikov <alekseys@google.com>2018-04-20 20:04:04 +0000
commit99cf54baa65e03e027da5b6b928eec2759398056 (patch)
treef4fcdfe112bad87359db9b95440f59b93755572b /llvm/tools/llvm-objcopy/Object.cpp
parentc3ec1643f186e6c2a3ae20bc9d9d01858a857152 (diff)
downloadbcm5719-llvm-99cf54baa65e03e027da5b6b928eec2759398056.tar.gz
bcm5719-llvm-99cf54baa65e03e027da5b6b928eec2759398056.zip
[HWASan] Introduce non-zero based and dynamic shadow memory (LLVM).
Summary: Support the dynamic shadow memory offset (the default case for user space now) and static non-zero shadow memory offset (-hwasan-mapping-offset option). Keeping the the latter case around for functionality and performance comparison tests (and mostly for -hwasan-mapping-offset=0 case). The implementation is stripped down ASan one, picking only the relevant parts in the following assumptions: shadow scale is fixed, the shadow memory is dynamic, it is accessed via ifunc global, shadow memory address rematerialization is suppressed. Keep zero-based shadow memory for kernel (-hwasan-kernel option) and calls instreumented case (-hwasan-instrument-with-calls option), which essentially means that the generated code is not changed in these cases. Reviewers: eugenis Subscribers: srhines, llvm-commits Differential Revision: https://reviews.llvm.org/D45840 llvm-svn: 330475
Diffstat (limited to 'llvm/tools/llvm-objcopy/Object.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud