selfpatch-slr/plugin/main.cpp

26 lines
872 B
C++

#include <iostream>
#include "gcc_includes.h"
#include "attrib.h"
#include "access_discover.h"
int plugin_is_GPL_compatible;
int plugin_init(plugin_name_args *plugin_info, plugin_gcc_version *version) {
if (!plugin_default_version_check(version, &gcc_version)) {
std::cerr << "GCC version mismatch!" << std::endl;
return 1;
}
register_callback(plugin_info->base_name, PLUGIN_ATTRIBUTES, register_attributes, NULL);
struct register_pass_info access_discover_pass_info;
access_discover_pass_info.pass = new access_discover_pass(nullptr);
access_discover_pass_info.ref_pass_instance_number = 1;
access_discover_pass_info.reference_pass_name = ACCESS_DISCOVER_PASS_REFPASS;
access_discover_pass_info.pos_op = ACCESS_DISCOVER_PASS_POSOP;
register_callback(plugin_info->base_name, PLUGIN_PASS_MANAGER_SETUP, nullptr, &access_discover_pass_info);
return 0;
}