summaryrefslogtreecommitdiffstats
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorWalter Lee <waltl@google.com>2018-05-18 04:09:45 +0000
committerWalter Lee <waltl@google.com>2018-05-18 04:09:45 +0000
commitce26498e3f949398694a511a9005c4f72f8e633b (patch)
tree4c6f42f01268a52a5a67f61cac05c95334346b44 /clang/lib/Frontend/CompilerInvocation.cpp
parent68f2218e1efdb74442987a2040876e2e41f7d90e (diff)
downloadbcm5719-llvm-ce26498e3f949398694a511a9005c4f72f8e633b.tar.gz
bcm5719-llvm-ce26498e3f949398694a511a9005c4f72f8e633b.zip
[asan] Add support for Myriad RTEMS memory map
The Myriad RTEMS memory system has a few unique aspects that require support in the ASan run-time. - A limited amount of memory (currently 512M). - No virtual memory, no memory protection. - DRAM starts at address 0x80000000. Other parts of memory may be used for MMIO, etc. - The second highest address bit is the "cache" bit, and 0x80000000 and 0x84000000 alias to the same memory. To support the above, we make the following changes: - Use a ShadowScale of 5, to reduce shadow memory overhead. - Adjust some existing macros to remove assumption that the lowest memory address is 0. - add a RawAddr macro that on Myriad strips the cache bit from the input address, before using the address for shadow memory (for other archs this does nothing). - We must check that an address is in DRAM range before using it to index into shadow memory. Differential Revision: https://reviews.llvm.org/D46456 llvm-svn: 332690
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud