From e071cd86dfc78e27710cd7df86d587afecbbbbf4 Mon Sep 17 00:00:00 2001 From: Jonas Hahnfeld Date: Fri, 1 Mar 2019 17:15:21 +0000 Subject: [PATCH] Hide two unused debugging methods, NFCI. GCC correctly moans that PlainCFGBuilder::isExternalDef(llvm::Value*) and StackSafetyDataFlowAnalysis::verifyFixedPoint() are defined but not used in Release builds. Hide them behind 'ifndef NDEBUG'. llvm-svn: 355205 --- llvm/lib/Analysis/StackSafetyAnalysis.cpp | 4 ++++ llvm/lib/Transforms/Vectorize/VPlanHCFGBuilder.cpp | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/llvm/lib/Analysis/StackSafetyAnalysis.cpp b/llvm/lib/Analysis/StackSafetyAnalysis.cpp index 2bca7cf60fdd..4cf235db86eb 100644 --- a/llvm/lib/Analysis/StackSafetyAnalysis.cpp +++ b/llvm/lib/Analysis/StackSafetyAnalysis.cpp @@ -415,7 +415,9 @@ class StackSafetyDataFlowAnalysis { updateOneNode(F.first, F.second); } void runDataFlow(); +#ifndef NDEBUG void verifyFixedPoint(); +#endif public: StackSafetyDataFlowAnalysis( @@ -526,11 +528,13 @@ void StackSafetyDataFlowAnalysis::runDataFlow() { } } +#ifndef NDEBUG void StackSafetyDataFlowAnalysis::verifyFixedPoint() { WorkList.clear(); updateAllNodes(); assert(WorkList.empty()); } +#endif StackSafetyGlobalInfo StackSafetyDataFlowAnalysis::run() { runDataFlow(); diff --git a/llvm/lib/Transforms/Vectorize/VPlanHCFGBuilder.cpp b/llvm/lib/Transforms/Vectorize/VPlanHCFGBuilder.cpp index 0550253c21d8..df96f67288f1 100644 --- a/llvm/lib/Transforms/Vectorize/VPlanHCFGBuilder.cpp +++ b/llvm/lib/Transforms/Vectorize/VPlanHCFGBuilder.cpp @@ -63,7 +63,9 @@ private: void setVPBBPredsFromBB(VPBasicBlock *VPBB, BasicBlock *BB); void fixPhiNodes(); VPBasicBlock *getOrCreateVPBB(BasicBlock *BB); +#ifndef NDEBUG bool isExternalDef(Value *Val); +#endif VPValue *getOrCreateVPOperand(Value *IRVal); void createVPInstructionsForVPBB(VPBasicBlock *VPBB, BasicBlock *BB); @@ -118,6 +120,7 @@ VPBasicBlock *PlainCFGBuilder::getOrCreateVPBB(BasicBlock *BB) { return VPBB; } +#ifndef NDEBUG // Return true if \p Val is considered an external definition. An external // definition is either: // 1. A Value that is not an Instruction. This will be refined in the future. @@ -153,6 +156,7 @@ bool PlainCFGBuilder::isExternalDef(Value *Val) { // Check whether Instruction definition is in loop body. return !TheLoop->contains(Inst); } +#endif // Create a new VPValue or retrieve an existing one for the Instruction's // operand \p IRVal. This function must only be used to create/retrieve VPValues