diff options
Diffstat (limited to 'clang/lib/CodeGen/CGLoopInfo.h')
-rw-r--r-- | clang/lib/CodeGen/CGLoopInfo.h | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/clang/lib/CodeGen/CGLoopInfo.h b/clang/lib/CodeGen/CGLoopInfo.h index ec3390677fa..7b9980c6183 100644 --- a/clang/lib/CodeGen/CGLoopInfo.h +++ b/clang/lib/CodeGen/CGLoopInfo.h @@ -18,6 +18,7 @@ #include "llvm/ADT/ArrayRef.h" #include "llvm/ADT/DenseMap.h" #include "llvm/ADT/SmallVector.h" +#include "llvm/IR/DebugLoc.h" #include "llvm/IR/Value.h" #include "llvm/Support/Compiler.h" @@ -63,7 +64,8 @@ struct LoopAttributes { class LoopInfo { public: /// \brief Construct a new LoopInfo for the loop with entry Header. - LoopInfo(llvm::BasicBlock *Header, const LoopAttributes &Attrs); + LoopInfo(llvm::BasicBlock *Header, const LoopAttributes &Attrs, + llvm::DebugLoc Location); /// \brief Get the loop id metadata for this loop. llvm::MDNode *getLoopID() const { return LoopID; } @@ -95,12 +97,14 @@ public: /// \brief Begin a new structured loop. The set of staged attributes will be /// applied to the loop and then cleared. - void push(llvm::BasicBlock *Header); + void push(llvm::BasicBlock *Header, + llvm::DebugLoc Location = llvm::DebugLoc()); /// \brief Begin a new structured loop. Stage attributes from the Attrs list. /// The staged attributes are applied to the loop and then cleared. void push(llvm::BasicBlock *Header, clang::ASTContext &Ctx, - llvm::ArrayRef<const Attr *> Attrs); + llvm::ArrayRef<const Attr *> Attrs, + llvm::DebugLoc Location = llvm::DebugLoc()); /// \brief End the current loop. void pop(); |