summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorEric Christopher <echristo@gmail.com>2014-02-27 01:24:56 +0000
committerEric Christopher <echristo@gmail.com>2014-02-27 01:24:56 +0000
commit0181303087b3b341e32e8b9a4abd38e9af812318 (patch)
treed30cdb8eef98b7cbb8ba482f5c4265758f5bd551 /include
parentdac5e919df13fd004e637126af7e658f4bb8ab4e (diff)
downloadllvm-0181303087b3b341e32e8b9a4abd38e9af812318.tar.gz
llvm-0181303087b3b341e32e8b9a4abd38e9af812318.tar.bz2
llvm-0181303087b3b341e32e8b9a4abd38e9af812318.tar.xz
Add a debug info code generation level to the compile unit metadata
and update everything accordingly. This can be used to conditionalize the amount of output in the backend based on the amount of debug requested/metadata emission scheme by a front end (e.g. clang). Paired with a commit to clang. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@202332 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r--include/llvm/DIBuilder.h4
-rw-r--r--include/llvm/DebugInfo.h1
2 files changed, 4 insertions, 1 deletions
diff --git a/include/llvm/DIBuilder.h b/include/llvm/DIBuilder.h
index 0afa9ab580..d47bae5fc6 100644
--- a/include/llvm/DIBuilder.h
+++ b/include/llvm/DIBuilder.h
@@ -87,6 +87,7 @@ namespace llvm {
public:
explicit DIBuilder(Module &M);
enum ComplexAddrKind { OpPlus=1, OpDeref };
+ enum DebugEmissionKind { FullDebug=1, LineTablesOnly };
/// finalize - Construct any deferred debug info descriptors.
void finalize();
@@ -111,7 +112,8 @@ namespace llvm {
StringRef Dir, StringRef Producer,
bool isOptimized, StringRef Flags,
unsigned RV,
- StringRef SplitName = StringRef());
+ StringRef SplitName = StringRef(),
+ DebugEmissionKind Kind = FullDebug);
/// createFile - Create a file descriptor to hold debugging information
/// for a file.
diff --git a/include/llvm/DebugInfo.h b/include/llvm/DebugInfo.h
index ccf62ffb81..930f7eba67 100644
--- a/include/llvm/DebugInfo.h
+++ b/include/llvm/DebugInfo.h
@@ -427,6 +427,7 @@ public:
DIArray getImportedEntities() const;
StringRef getSplitDebugFilename() const { return getStringField(12); }
+ unsigned getEmissionKind() const { return getUnsignedField(13); }
/// Verify - Verify that a compile unit is well formed.
bool Verify() const;