Skip to content

Conversation

@riptl
Copy link
Contributor

@riptl riptl commented Jul 23, 2022

I've recently added paired-singles support to Capstone in capstone-engine/capstone#1898 and capstone-engine/capstone#1900.

This means we can finally remove some doldisasm wrapper hacks.

It would take too long to wait for a new Capstone release so I've updated pip requirements to point to the latest Capstone v5 commit. pip install -r requirements.txt will work as before but now compiles Capstone from source instead of using a binary from PyPI.

  • Remove doldisasm wrappers
  • Update py requirements
  • Add C compiler to CI
  • Test locally

@riptl riptl marked this pull request as ready for review July 23, 2022 15:12
@riptl riptl requested a review from snailspeed3 July 23, 2022 15:12
if len(insn.operands) > 0 and insn.operands[len(insn.operands)-1].type == CS_OP_IMM:
op_str = insn.op_str[:insn.op_str.rfind(" ") + 1]
dest = insn.operands[len(insn.operands)-1].imm - insn.address
return f"{insn.mnemonic} {op_str}{hex(dest)}"
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Something is weird about this. Seems like Capstone v5 disassembles the jump target of unconditional branches as relative but "bc" opcode branches as absolute.

@riptl
Copy link
Contributor Author

riptl commented Jan 18, 2023

Abandoning this, I think we'd rather want to use the ppc750cl stuff or whatever. Who cares about the duct tape as long as it assembles

@riptl riptl closed this Jan 18, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants