Yeah, It looks like I am doing exactly what's in Dwarf*.cpp files, yet I am getting blanks. George On Tue, Oct 2, 2012 at 2:10 PM, Eric Christopher <echristo at gmail.com> wrote:> On Tue, Oct 2, 2012 at 11:00 AM, George Baah <georgebaah at gmail.com> wrote: > > Hi Guys, > > How does one get the directory of the compilation unit in llvm? > > I am using DICompileUnit but for some reason I am getting blanks > > for the directory name. Here is my code ... > > > > MDNode *MD = I.getMetadata("dbg"); > > > > DICompileUnit compileUnit(MD); > > > > return compileUnit.getDirectory().str(); > > > > In general for these questions it's easier to look at how it's done in > DwarfDebug.cpp and DwarfCompileUnit.cpp. > > -eric >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20121003/947420cf/attachment.html>
Without knowing the code that you've written and the IR that you're running on I'm not sure what I can do to help you. -eric On Wed, Oct 3, 2012 at 9:32 AM, George Baah <georgebaah at gmail.com> wrote:> Yeah, It looks like I am doing exactly what's in Dwarf*.cpp files, yet I am > getting blanks. > > George > > On Tue, Oct 2, 2012 at 2:10 PM, Eric Christopher <echristo at gmail.com> wrote: >> >> On Tue, Oct 2, 2012 at 11:00 AM, George Baah <georgebaah at gmail.com> wrote: >> > Hi Guys, >> > How does one get the directory of the compilation unit in llvm? >> > I am using DICompileUnit but for some reason I am getting blanks >> > for the directory name. Here is my code ... >> > >> > MDNode *MD = I.getMetadata("dbg"); >> > >> > DICompileUnit compileUnit(MD); >> > >> > return compileUnit.getDirectory().str(); >> > >> >> In general for these questions it's easier to look at how it's done in >> DwarfDebug.cpp and DwarfCompileUnit.cpp. >> >> -eric > >
Here is the code. I am running on llvm 3.1 on Lion (Mac 10.7.4) *string getFileDirectory*(*const* Instruction &I){ MDNode *MD = I.getMetadata("dbg"); DICompileUnit compileUnit(MD); return compileUnit.getDirectory().str(); } George On Wed, Oct 3, 2012 at 12:40 PM, Eric Christopher <echristo at gmail.com>wrote:> Without knowing the code that you've written and the IR that you're > running on I'm > not sure what I can do to help you. > > -eric > > On Wed, Oct 3, 2012 at 9:32 AM, George Baah <georgebaah at gmail.com> wrote: > > Yeah, It looks like I am doing exactly what's in Dwarf*.cpp files, yet I > am > > getting blanks. > > > > George > > > > On Tue, Oct 2, 2012 at 2:10 PM, Eric Christopher <echristo at gmail.com> > wrote: > >> > >> On Tue, Oct 2, 2012 at 11:00 AM, George Baah <georgebaah at gmail.com> > wrote: > >> > Hi Guys, > >> > How does one get the directory of the compilation unit in llvm? > >> > I am using DICompileUnit but for some reason I am getting blanks > >> > for the directory name. Here is my code ... > >> > > >> > MDNode *MD = I.getMetadata("dbg"); > >> > > >> > DICompileUnit compileUnit(MD); > >> > > >> > return compileUnit.getDirectory().str(); > >> > > >> > >> In general for these questions it's easier to look at how it's done in > >> DwarfDebug.cpp and DwarfCompileUnit.cpp. > >> > >> -eric > > > > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20121004/913a57e4/attachment.html>