Rename variable. add comment.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104274 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Devang Patel 2010-05-20 20:35:24 +00:00
parent 402d43529c
commit 6ed0ce3240
2 changed files with 6 additions and 3 deletions

View File

@ -677,7 +677,7 @@ namespace llvm {
DIVariable CreateVariable(unsigned Tag, DIDescriptor Context,
StringRef Name,
DIFile F, unsigned LineNo,
DIType Ty, bool OptimizedBuild = false);
DIType Ty, bool AlwaysPreserve = false);
/// CreateComplexVariable - Create a new descriptor for the specified
/// variable which has a complex address expression for its address.

View File

@ -1028,7 +1028,7 @@ DIVariable DIFactory::CreateVariable(unsigned Tag, DIDescriptor Context,
StringRef Name,
DIFile F,
unsigned LineNo,
DIType Ty, bool OptimizedBuild) {
DIType Ty, bool AlwaysPreserve) {
Value *Elts[] = {
GetTagConstant(Tag),
Context,
@ -1038,7 +1038,10 @@ DIVariable DIFactory::CreateVariable(unsigned Tag, DIDescriptor Context,
Ty,
};
MDNode *Node = MDNode::get(VMContext, &Elts[0], 6);
if (OptimizedBuild) {
if (AlwaysPreserve) {
// The optimizer may remove local variable. If there is an interest
// to preserve variable info in such situation then stash it in a
// named mdnode.
NamedMDNode *NMD = M.getOrInsertNamedMetadata("llvm.dbg.lv");
NMD->addOperand(Node);
}