capstone icon indicating copy to clipboard operation
capstone copied to clipboard

padduw not implemented on MIPS

Open GovanifY opened this issue 8 years ago • 4 comments

govanify@ThinkPadW500 ~ $ cat test.py 
from capstone import *

CODE= b"\x28\x0c\x00\x70"
md = Cs(CS_ARCH_MIPS, CS_MODE_32)
for i in md.disasm(CODE, 0x1000):
    print("0x%x:\t%s\t%s" %(i.address, i.mnemonic, i.op_str))
govanify@ThinkPadW500 ~ $ python test.py 
govanify@ThinkPadW500 ~ $ 

280c0070 should be disassembled as "padduw at, zero, zero" but is instead not implemented by capstone

GovanifY avatar May 31 '17 23:05 GovanifY

i am already planning to get a major update to Mips & other archs.

can you list all the missing instructions you can find here, for reference?

aquynh avatar May 31 '17 23:05 aquynh

sure will check what I can for tomorrow, can't say it'll be a full list but I'll see what I can find missing

GovanifY avatar May 31 '17 23:05 GovanifY

This cannot be patched because LLVM does not support MIPS EE SIMD instruction set.

Reference: https://psi-rockin.github.io/ps2tek/ (archived)

wargio avatar Aug 28 '24 15:08 wargio

For anyone bumping into this issue. There is the possibility to write the table gen file for the extension in LLVM. It will like not be up-streamed to LLVM because the extension is no longer in use. But we can use it to generate our files and support it in Capstone. This is how we do it for the PPC PS extension.

Rot127 avatar Aug 29 '24 07:08 Rot127