How to determine source location of pragma?
I am new to GCC internals. I'm trying to create a plugin to operate on pragmas. Currently have this working using c_register_pragma with a callback. The callback performs pragma_lex and is able to retrieve the string token of the pragma based on this example. https://github.com/wh5a/gcc-plugin/blob/master/pragma_plugin.c How can I determine the line number of the pragma? I tried DECL_SOURCE_LINE on the tree type but this returns 0. Do I have to interact with cpplib? Regards, Vanush
Re: How to determine source location of pragma?
Thanks Manuel. Is there anyway to get this information with gcc 4.x.x? Regards, Vanush On Tue, Jan 12, 2016 at 5:17 AM, Manuel López-Ibáñez wrote: > On 11/01/16 01:08, Vanush Vaswani wrote: >> >> I am new to GCC internals. >> >> I'm trying to create a plugin to operate on pragmas. Currently have >> this working using c_register_pragma with a callback. >> >> The callback performs pragma_lex and is able to retrieve the string >> token of the pragma based on this example. >> https://github.com/wh5a/gcc-plugin/blob/master/pragma_plugin.c >> >> How can I determine the line number of the pragma? I tried >> DECL_SOURCE_LINE on the tree type but this returns 0. Do I have to >> interact with cpplib? > > > pragma_lex in GCC 6 has an optional &loc parameter. See > handle_pragma_diagnostic() in c-pragma.c to see how it is used. > > Cheers, > > Manuel. >
How to avoid instrumenting function in a particular section?
Is it possible to avoid instrumenting functions (-finstrument-functions) if they are in a particular section?
gcc plugin : access to gimple post inlining
I'm writing a gcc plugin. Is there a recommended way to have a custom gimple pass with access to the post-inlined version of the function? Kind regards Vanush