Latest available version: IDA and decompilers v8.4.240320sp1 see all releases
Hex-Rays logo State-of-the-art binary code analysis tools
email icon
microcode_filter_t Struct Referenceabstract

Generic microcode generator class. More...

#include <hexrays.hpp>

Inheritance diagram for microcode_filter_t:
udc_filter_t

Public Member Functions

virtual bool match (codegen_t &cdg)=0
 check if the filter object is to be applied 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 1698 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

Returns
MERR_... code: MERR_OK - user-defined microcode 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 applied

Returns
success

Implemented in udc_filter_t.