Slide 9
Slide 9 text
#define IGNITION_HANDLER(Name, BaseAssembler) \!
class Name##Assembler : public BaseAssembler { \!
public: \!
explicit Name##Assembler(compiler::CodeAssemblerState* state, \!
Bytecode bytecode, OperandScale scale) \!
: BaseAssembler(state, bytecode, scale) {} \!
static void Generate(compiler::CodeAssemblerState* state, \!
OperandScale scale); \!
\!
private: \!
void GenerateImpl(); \!
DISALLOW_COPY_AND_ASSIGN(Name##Assembler); \!
}; \!
void Name##Assembler::Generate(compiler::CodeAssemblerState* state, \!
OperandScale scale) { \!
Name##Assembler assembler(state, Bytecode::k##Name, scale); \!
state->SetInitialDebugInformation(#Name, __FILE__, __LINE__); \!
assembler.GenerateImpl(); \!
} \!
void Name##Assembler::GenerateImpl()!