【发布时间】:2018-12-23 00:46:03
【问题描述】:
我一直在寻找有关编写 GCC 插件的在线资源。我目前正在使用 GCC 版本 7.3.0。我尝试编写一个简单的插件,其中包含一个将在PLUGIN_FINISH_TYPE 上调用的回调。效果很好。
接下来,我正在尝试编写一个使用“gimple pass”的插件,类似于here 列出的示例。但是,struct gimple_opt_pass 似乎并不存在。
我尝试查找声明此结构的头文件。我发现 tree-pass.h 有以下代码块:-
/* Description of GIMPLE pass. */
class gimple_opt_pass : public opt_pass
{
protected:
gimple_opt_pass (const pass_data& data, gcc::context *ctxt)
: opt_pass (data, ctxt)
{
}
};
- 如何从我的插件中看到这个?我似乎无法按照上面链接中描述的方式使用它。
- 使用当前的 GCC 插件 API,是否可以编写纯 C 插件(而不是必须使用 C++)。
【问题讨论】:
标签: gcc gimple gcc-plugins