mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-17 04:24:00 +00:00
Use separate named MDNode to hold each function's local variable info.
This speeds up local variable handling in DwarfDebug. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106075 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -2259,8 +2259,9 @@ void DwarfDebug::collectVariableInfo(const MachineFunction *MF) {
|
||||
}
|
||||
|
||||
// Collect info for variables that were optimized out.
|
||||
if (NamedMDNode *NMD =
|
||||
MF->getFunction()->getParent()->getNamedMetadata("llvm.dbg.lv")) {
|
||||
const Twine FnLVName = Twine("llvm.dbg.lv.", MF->getFunction()->getName());
|
||||
if (NamedMDNode *NMD =
|
||||
MF->getFunction()->getParent()->getNamedMetadataUsingTwine(FnLVName)) {
|
||||
for (unsigned i = 0, e = NMD->getNumOperands(); i != e; ++i) {
|
||||
DIVariable DV(cast_or_null<MDNode>(NMD->getOperand(i)));
|
||||
if (!DV || !Processed.insert(DV))
|
||||
|
Reference in New Issue
Block a user