mirror of
				https://github.com/c64scene-ar/llvm-6502.git
				synced 2025-10-31 08:16:47 +00:00 
			
		
		
		
	DebugInfo: Simplify retrieving filename/directory name for line table entry building.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@208911 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
		| @@ -1611,32 +1611,12 @@ void DwarfDebug::recordSourceLine(unsigned Line, unsigned Col, const MDNode *S, | ||||
|   StringRef Dir; | ||||
|   unsigned Src = 1; | ||||
|   unsigned Discriminator = 0; | ||||
|   if (S) { | ||||
|     DIDescriptor Scope(S); | ||||
|  | ||||
|     if (Scope.isCompileUnit()) { | ||||
|       DICompileUnit CU(S); | ||||
|       Fn = CU.getFilename(); | ||||
|       Dir = CU.getDirectory(); | ||||
|     } else if (Scope.isFile()) { | ||||
|       DIFile F(S); | ||||
|       Fn = F.getFilename(); | ||||
|       Dir = F.getDirectory(); | ||||
|     } else if (Scope.isSubprogram()) { | ||||
|       DISubprogram SP(S); | ||||
|       Fn = SP.getFilename(); | ||||
|       Dir = SP.getDirectory(); | ||||
|     } else if (Scope.isLexicalBlockFile()) { | ||||
|       DILexicalBlockFile DBF(S); | ||||
|       Fn = DBF.getFilename(); | ||||
|       Dir = DBF.getDirectory(); | ||||
|     } else if (Scope.isLexicalBlock()) { | ||||
|       DILexicalBlock DB(S); | ||||
|       Fn = DB.getFilename(); | ||||
|       Dir = DB.getDirectory(); | ||||
|       Discriminator = DB.getDiscriminator(); | ||||
|     } else | ||||
|       llvm_unreachable("Unexpected scope info"); | ||||
|   if (DIScope Scope = DIScope(S)) { | ||||
|     assert(Scope.isScope()); | ||||
|     Fn = Scope.getFilename(); | ||||
|     Dir = Scope.getDirectory(); | ||||
|     if (Scope.isLexicalBlock()) | ||||
|       Discriminator = DILexicalBlock(S).getDiscriminator(); | ||||
|  | ||||
|     unsigned CUID = Asm->OutStreamer.getContext().getDwarfCompileUnitID(); | ||||
|     Src = static_cast<DwarfCompileUnit &>(*InfoHolder.getUnits()[CUID]) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user