mirror of
https://github.com/RPCSX/llvm.git
synced 2024-12-03 01:12:59 +00:00
[asan] don't emit __asan_mapping_offset/__asan_mapping_scale by default -- they are currently used only for experiments
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153040 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
5587a8e094
commit
8c0134a776
@ -579,18 +579,23 @@ bool AddressSanitizer::runOnModule(Module &M) {
|
||||
if (ClGlobals)
|
||||
Res |= insertGlobalRedzones(M);
|
||||
|
||||
// Tell the run-time the current values of mapping offset and scale.
|
||||
GlobalValue *asan_mapping_offset =
|
||||
new GlobalVariable(M, IntptrTy, true, GlobalValue::LinkOnceODRLinkage,
|
||||
ConstantInt::get(IntptrTy, MappingOffset),
|
||||
kAsanMappingOffsetName);
|
||||
GlobalValue *asan_mapping_scale =
|
||||
new GlobalVariable(M, IntptrTy, true, GlobalValue::LinkOnceODRLinkage,
|
||||
ConstantInt::get(IntptrTy, MappingScale),
|
||||
kAsanMappingScaleName);
|
||||
// Read these globals, otherwise they may be optimized away.
|
||||
IRB.CreateLoad(asan_mapping_scale, true);
|
||||
IRB.CreateLoad(asan_mapping_offset, true);
|
||||
if (ClMappingOffsetLog >= 0) {
|
||||
// Tell the run-time the current values of mapping offset and scale.
|
||||
GlobalValue *asan_mapping_offset =
|
||||
new GlobalVariable(M, IntptrTy, true, GlobalValue::LinkOnceODRLinkage,
|
||||
ConstantInt::get(IntptrTy, MappingOffset),
|
||||
kAsanMappingOffsetName);
|
||||
// Read the global, otherwise it may be optimized away.
|
||||
IRB.CreateLoad(asan_mapping_offset, true);
|
||||
}
|
||||
if (ClMappingScale) {
|
||||
GlobalValue *asan_mapping_scale =
|
||||
new GlobalVariable(M, IntptrTy, true, GlobalValue::LinkOnceODRLinkage,
|
||||
ConstantInt::get(IntptrTy, MappingScale),
|
||||
kAsanMappingScaleName);
|
||||
// Read the global, otherwise it may be optimized away.
|
||||
IRB.CreateLoad(asan_mapping_scale, true);
|
||||
}
|
||||
|
||||
|
||||
for (Module::iterator F = M.begin(), E = M.end(); F != E; ++F) {
|
||||
|
Loading…
Reference in New Issue
Block a user