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
380
381
382
383
384
385
386
387
388
389
390
391
392
393
|
# File 'ext/asmjit/asmjit.cc', line 380
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
76
77
78
|
# File 'lib/asmjit.rb', line 76
def emit(*args)
_emit(*(args.map { |arg| Helpers.parse_operand(arg) }))
end
|