[llvm] r311955 - [sanitizer-coverage] Return the array from CreatePCArray. NFC
Justin Bogner via llvm-commits
llvm-commits at lists.llvm.org
Mon Aug 28 16:46:11 PDT 2017
Author: bogner
Date: Mon Aug 28 16:46:11 2017
New Revision: 311955
URL: http://llvm.org/viewvc/llvm-project?rev=311955&view=rev
Log:
[sanitizer-coverage] Return the array from CreatePCArray. NFC
Be more consistent with CreateFunctionLocalArrayInSection in the API
of CreatePCArray, and assign the member variable in the caller like we
do for the guard and 8-bit counter arrays.
This also tweaks the order of method declarations to match the order
of definitions in the file.
Modified:
llvm/trunk/lib/Transforms/Instrumentation/SanitizerCoverage.cpp
Modified: llvm/trunk/lib/Transforms/Instrumentation/SanitizerCoverage.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Instrumentation/SanitizerCoverage.cpp?rev=311955&r1=311954&r2=311955&view=diff
==============================================================================
--- llvm/trunk/lib/Transforms/Instrumentation/SanitizerCoverage.cpp (original)
+++ llvm/trunk/lib/Transforms/Instrumentation/SanitizerCoverage.cpp Mon Aug 28 16:46:11 2017
@@ -204,8 +204,8 @@ private:
GlobalVariable *CreateFunctionLocalArrayInSection(size_t NumElements,
Function &F, Type *Ty,
const char *Section);
+ GlobalVariable *CreatePCArray(Function &F, ArrayRef<BasicBlock *> AllBlocks);
void CreateFunctionLocalArrays(Function &F, ArrayRef<BasicBlock *> AllBlocks);
- void CreatePCArray(Function &F, ArrayRef<BasicBlock *> AllBlocks);
void InjectCoverageAtBlock(Function &F, BasicBlock &BB, size_t Idx);
Function *CreateInitCallsForSections(Module &M, const char *InitFunctionName,
Type *Ty, const char *Section);
@@ -541,8 +541,9 @@ GlobalVariable *SanitizerCoverageModule:
return Array;
}
-void SanitizerCoverageModule::CreatePCArray(Function &F,
- ArrayRef<BasicBlock *> AllBlocks) {
+GlobalVariable *
+SanitizerCoverageModule::CreatePCArray(Function &F,
+ ArrayRef<BasicBlock *> AllBlocks) {
size_t N = AllBlocks.size();
assert(N);
SmallVector<Constant *, 32> PCs;
@@ -559,15 +560,17 @@ void SanitizerCoverageModule::CreatePCAr
ConstantInt::get(IntptrTy, 0), IntptrPtrTy));
}
}
- FunctionPCsArray = CreateFunctionLocalArrayInSection(N * 2, F, IntptrPtrTy,
- SanCovPCsSectionName);
- FunctionPCsArray->setInitializer(
+ auto *PCArray = CreateFunctionLocalArrayInSection(N * 2, F, IntptrPtrTy,
+ SanCovPCsSectionName);
+ PCArray->setInitializer(
ConstantArray::get(ArrayType::get(IntptrPtrTy, N * 2), PCs));
- FunctionPCsArray->setConstant(true);
+ PCArray->setConstant(true);
// We don't reference the PCs array in any of our runtime functions, so we
// need to prevent it from being dead stripped.
- appendToUsed(*F.getParent(), {FunctionPCsArray});
+ appendToUsed(*F.getParent(), {PCArray});
+
+ return PCArray;
}
void SanitizerCoverageModule::CreateFunctionLocalArrays(
@@ -579,7 +582,7 @@ void SanitizerCoverageModule::CreateFunc
Function8bitCounterArray = CreateFunctionLocalArrayInSection(
AllBlocks.size(), F, Int8Ty, SanCovCountersSectionName);
if (Options.PCTable)
- CreatePCArray(F, AllBlocks);
+ FunctionPCsArray = CreatePCArray(F, AllBlocks);
}
bool SanitizerCoverageModule::InjectCoverage(Function &F,
More information about the llvm-commits
mailing list