Class: AsmJIT::X86::Assembler
Class Method Summary
collapse
Instance Method Summary
collapse
Methods inherited from BaseEmitter
#_emit, #bind, #new_label
Class Method Details
.new(code_holder) ⇒ Object
260
261
262
263
264
265
266
267
268
269
270
271
272
273
|
# File 'ext/asmjit/asmjit.cc', line 260
VALUE x86_assembler_new(VALUE self, VALUE code_holder) {
BaseEmitterWrapper *wrapper = static_cast<BaseEmitterWrapper *>(xmalloc(sizeof(CodeHolderWrapper)));
CodeHolderWrapper *code_wrapper;
TypedData_Get_Struct(code_holder, CodeHolderWrapper, &code_holder_type, code_wrapper);
x86::Assembler *assembler = new x86::Assembler(code_wrapper->code);
assembler->addDiagnosticOptions(DiagnosticOptions::kValidateAssembler);
wrapper->code_holder = code_holder;
wrapper->emitter = assembler;
return TypedData_Wrap_Struct(self, &base_emitter_type, wrapper);
}
|
Instance Method Details
#emit(*args) ⇒ Object
66
67
68
|
# File 'lib/asmjit.rb', line 66
def emit(*args)
_emit(*(args.map { |arg| Helpers.parse_operand(arg) }))
end
|