microcode_filter_t Struct Referenceabstract

Generic microcode generator class. More...

Inheritance diagram for microcode_filter_t:

Public Member Functions

virtual bool match (codegen_t &cdg)=0
 check if the filter object is to be appied More...
virtual merror_t apply (codegen_t &cdg)=0
 generate microcode for an instruction More...

Detailed Description

Generic microcode generator class.

An instance of a derived class can be registered to be used for non-standard microcode generation. Before microcode generation for an instruction all registered object will be visited by the following way: if ( filter->match(cdg) ) code = filter->apply(cdg); if ( code == MERR_OK ) continue; // filter generated microcode, go to the next instruction

Definition at line 1223 of file hexrays.hpp.

Member Function Documentation

◆ apply()

virtual merror_t microcode_filter_t::apply ( codegen_t cdg)
pure virtual

generate microcode for an instruction

MERR_... code: MERR_OK - user-defined call generated, go to the next instruction MERR_INSN - not generated - the caller should try the standard way else - error

Implemented in udc_filter_t.

◆ match()

virtual bool microcode_filter_t::match ( codegen_t cdg)
pure virtual

check if the filter object is to be appied


Implemented in udc_filter_t.