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>