80 Commits

Author SHA1 Message Date
Richard Patel
fd94a6c493 fuzz: add threads flag 2022-04-07 06:11:03 +02:00
Richard Patel
9c433919fc disasm-py: add opcode getter 2022-04-07 06:01:25 +02:00
Richard Patel
fcad8da86b document Python module 2022-04-07 05:58:09 +02:00
Richard Patel
fb65bc8e7d
Merge pull request #17 from terorie/auto-gen-isa
Auto-generate opcode detection, fields and printing
2022-04-07 05:45:28 +02:00
Richard Patel
6548c6ec5d bump version to 0.2.0 2022-04-07 05:45:01 +02:00
Richard Patel
d845d6c067 bump pyo3 to 0.16 2022-04-07 05:42:55 +02:00
Richard Patel
e667999a3d disasm-py: temporarily remove field accessors 2022-04-07 05:40:22 +02:00
Richard Patel
6391c87797 flow-graph: fix deprecated clap_app macro 2022-04-07 05:37:32 +02:00
Richard Patel
4c5735e403 more flexible modifier handling 2022-04-07 05:33:38 +02:00
Richard Patel
99c7f252f8 fix bcctr and bclr 2022-04-07 04:44:38 +02:00
Richard Patel
16f955947e fix bc opcode 2022-04-07 04:23:12 +02:00
Richard Patel
b8199e678c fix signed fields 2022-04-07 04:07:15 +02:00
Richard Patel
9e7f70444f update deps 2022-04-07 02:51:17 +02:00
Richard Patel
8a57bd9eb2 more tests 2022-04-07 02:36:49 +02:00
Richard Patel
b6ad3f4f2c make clippy happy 2022-04-07 02:14:11 +02:00
Richard Patel
1f5fec522a genisa: improve codegen 2022-04-07 01:55:07 +02:00
Richard Patel
95f93a761e update README.md 2022-04-07 01:48:21 +02:00
Richard Patel
5207876164 temporarily disable broken crates 2022-04-07 01:29:45 +02:00
Richard Patel
e8945a8e0d genisa: remove matcher 2022-04-07 01:27:04 +02:00
Richard Patel
82970d166b isa.yaml: use condition expressions instead of matchers 2022-04-07 01:25:20 +02:00
Richard Patel
ea364a52d8 isa.yaml: unquote everything 2022-04-07 01:20:28 +02:00
Richard Patel
e9041072e9 support simplified mnemonic conditions 2022-04-07 01:17:31 +02:00
Richard Patel
c8c1daaa64 progress mnemonics 2022-04-06 17:41:13 +02:00
Richard Patel
eb39f9fa47 add generated code 2022-04-06 15:14:03 +02:00
Richard Patel
5431836376 switch from macro to ahead-of-time generated code 2022-04-06 15:13:55 +02:00
Richard Patel
171666e6fc progress 2022-04-06 14:07:57 +02:00
Richard Patel
dff1075737 support permanent suffixes 2021-08-29 09:05:52 +02:00
Richard Patel
40142dcd9b support mnemonic suffixes 2021-08-29 09:02:31 +02:00
Richard Patel
756e23f240 fix fuzz and rand crates 2021-08-29 06:29:49 +02:00
Richard Patel
f04c68578b re-implement formatting 2021-08-29 06:06:08 +02:00
Richard Patel
5833e81236 generate def/use information 2021-08-29 04:25:39 +02:00
Richard Patel
d0409f599b cleanup, remove stale codegen defs 2021-08-25 03:37:02 +02:00
Richard Patel
7a6b4df8d4 big rewrite, everything half broken 2021-08-25 03:23:57 +02:00
Richard Patel
ec727af8dd isa.yaml: add fields 2021-08-24 03:30:03 +02:00
Richard Patel
e57fa2c659 dol: fix missing derives 2021-08-24 02:42:52 +02:00
Richard Patel
25f82bc26b isa.yaml: correct uses or rA zero special case 2021-08-24 02:40:58 +02:00
Richard Patel
a6a47156a3 add isa.yaml 2021-08-24 02:19:12 +02:00
Richard Patel
8c5ddf4057 Read from DOL 2021-08-22 04:09:51 +02:00
Richard Patel
7b63bfa533 Restructure, implement naive data ref detection 2021-08-22 03:09:49 +02:00
Richard Patel
7ddae6e170
add dol crate 2021-08-22 01:25:01 +02:00
Richard Patel
e7a257ac64
Implement control-flow graph detection (#12)
Closes #9
Closes #10

* add flow graph crate
* update authors
* implement control flow graph analysis
* detect if program flow falls through the end of a block
* relax itertools version constraint
2021-08-20 13:09:04 -04:00
Richard Patel
4fc2d32e02 zero-copy bytes passing 2021-08-19 01:13:19 +02:00
Richard Patel
57a317a6b2 add offset, size arguments to disasm_iter 2021-08-19 00:56:39 +02:00
Richard Patel
e55398cd01 Fix Doldecomp formatter 2021-08-17 01:21:26 +02:00
Richard Patel
a15c909240 Fix CI 2021-08-17 01:21:08 +02:00
Richard Patel
25cdef4d34 add Python module instructions 2021-08-17 00:53:29 +02:00
Richard Patel
66b8d92934 add Python module 2021-08-17 00:40:13 +02:00
Richard Patel
ea6545f7e3 rename ./lib to ./disasm 2021-08-16 22:54:20 +02:00
Richard Patel
169b206a05 formatting 2021-08-16 22:51:42 +02:00
Richard Patel
2382625a5f add unit tests 2021-08-16 22:26:41 +02:00