mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-25 20:23:11 +01:00
Add the source language into the compile unit.
llvm-svn: 151143
This commit is contained in:
parent
61c6749e44
commit
32802595f6
@ -32,8 +32,9 @@
|
||||
using namespace llvm;
|
||||
|
||||
/// CompileUnit - Compile unit constructor.
|
||||
CompileUnit::CompileUnit(unsigned I, DIE *D, AsmPrinter *A, DwarfDebug *DW)
|
||||
: ID(I), CUDie(D), Asm(A), DD(DW), IndexTyDie(0) {
|
||||
CompileUnit::CompileUnit(unsigned I, unsigned L, DIE *D, AsmPrinter *A,
|
||||
DwarfDebug *DW)
|
||||
: ID(I), Language(L), CUDie(D), Asm(A), DD(DW), IndexTyDie(0) {
|
||||
DIEIntegerOne = new (DIEValueAllocator) DIEInteger(1);
|
||||
}
|
||||
|
||||
|
@ -36,6 +36,10 @@ class CompileUnit {
|
||||
///
|
||||
unsigned ID;
|
||||
|
||||
/// Language - The DW_AT_language of the compile unit
|
||||
///
|
||||
unsigned Language;
|
||||
|
||||
/// Die - Compile unit debug information entry.
|
||||
///
|
||||
const OwningPtr<DIE> CUDie;
|
||||
@ -76,11 +80,12 @@ class CompileUnit {
|
||||
DenseMap<DIE *, const MDNode *> ContainingTypeMap;
|
||||
|
||||
public:
|
||||
CompileUnit(unsigned I, DIE *D, AsmPrinter *A, DwarfDebug *DW);
|
||||
CompileUnit(unsigned I, unsigned L, DIE *D, AsmPrinter *A, DwarfDebug *DW);
|
||||
~CompileUnit();
|
||||
|
||||
// Accessors.
|
||||
unsigned getID() const { return ID; }
|
||||
unsigned getLanguage() const { return Language; }
|
||||
DIE* getCUDie() const { return CUDie.get(); }
|
||||
const StringMap<DIE*> &getGlobalTypes() const { return GlobalTypes; }
|
||||
|
||||
|
@ -550,7 +550,7 @@ CompileUnit *DwarfDebug::constructCompileUnit(const MDNode *N) {
|
||||
unsigned ID = GetOrCreateSourceID(FN, CompilationDir);
|
||||
|
||||
DIE *Die = new DIE(dwarf::DW_TAG_compile_unit);
|
||||
CompileUnit *NewCU = new CompileUnit(ID, Die, Asm, this);
|
||||
CompileUnit *NewCU = new CompileUnit(ID, DIUnit.getLanguage(), Die, Asm, this);
|
||||
NewCU->addString(Die, dwarf::DW_AT_producer, DIUnit.getProducer());
|
||||
NewCU->addUInt(Die, dwarf::DW_AT_language, dwarf::DW_FORM_data2,
|
||||
DIUnit.getLanguage());
|
||||
|
Loading…
Reference in New Issue
Block a user