Re: [cfe-users] No macros in DI metadata

2021-07-14 Thread David Blaikie via cfe-users
On Wed, Jul 14, 2021 at 10:16 AM Bella V wrote: > > Thanks a lot! It works. > > Also there is no IR code generated for macros. Is there a way to relate > llvm::value's that refer to macros. Not that I know of, no. If you're interested in doing source analysis like this - you might want to use a

Re: [cfe-users] No macros in DI metadata

2021-07-14 Thread Bella V via cfe-users
Thanks a lot! It works. Also there is no IR code generated for macros. Is there a way to relate llvm::value's that refer to macros. Many Thanks. On Tue, Jul 13, 2021 at 7:06 PM David Blaikie wrote: > You could check where the macro is defined, I guess? > If it's in a DIMacroFile i guess it's n

Re: [cfe-users] No macros in DI metadata

2021-07-13 Thread David Blaikie via cfe-users
You could check where the macro is defined, I guess? If it's in a DIMacroFile i guess it's not a compiler builtin. It might still be from a system header, etc, if that matters to you - so then you'd have to filter by the DIMacroFile's 'file' attribute. On Tue, Jul 13, 2021 at 7:00 PM Bella V wrot

Re: [cfe-users] No macros in DI metadata

2021-07-13 Thread Bella V via cfe-users
Thanks David for the helpful information. Is there a way to filter the predefined macros such as __clang__, __GNUC__, etc. I could not get the macros defined in my C code with the below code: DIMacroNodeArray Macros = DICompUnit->getMacros(); for (auto *MN : Macros) { if (auto *M = dyn_cast(MN

Re: [cfe-users] No macros in DI metadata

2021-07-13 Thread David Blaikie via cfe-users
Add -fdebug-macro On Tue, Jul 13, 2021 at 4:05 PM Bella V via cfe-users wrote: > > Hello All, > > I'm trying to build a list of macros in a compilation unit using > CU->getMacros(). > I do not see the macros field in DICompileUnit output. > https://godbolt.org/z/b8cM1Yf7v > > Please let me know

[cfe-users] No macros in DI metadata

2021-07-13 Thread Bella V via cfe-users
Hello All, I'm trying to build a list of macros in a compilation unit using CU-> getMacros (). I do not see the macros field in DICompileUnit output. *https://godbolt.org/z/b8cM1Yf7v