Keystone
view release on metacpan or search on metacpan
Keystone.xs view on Meta::CPAN
MODULE = Keystone PACKAGE = Keystone
# Wrapper to ks_version()
SV*
ks_version()
PREINIT:
int major, minor;
PPCODE:
ks_version(&major, &minor);
EXTEND(SP, 2);
XST_mIV(0, major);
XST_mIV(1, minor);
XSRETURN(2);
# Wrapper to ks_arch_supported
int
ks_arch_supported(arch)
Keystone.xs view on Meta::CPAN
ks_asm(handle,code,address)
ks_engine *handle
SV *code
UV address
PREINIT:
size_t size, i, count;
unsigned char *opcodes;
int ret;
PPCODE:
if(SvTYPE(code) != SVt_PV) {
croak("<code> argument not an array scalar");
}
ret = ks_asm(handle, SvPVbyte(code, SvCUR(code)), address, &opcodes, &size, &count);
if(!ret) {
for(i = 0; i < size; i++) {
PUSHs(newSViv(opcodes[i]));
}
( run in 0.876 second using v1.01-cache-2.11-cpan-5511b514fd6 )