Commit Graph

188 Commits

Author SHA1 Message Date
Angie
45cb94d3cc format 2022-09-17 17:27:27 -03:00
Angie
2c77b650a1 undo typo 2022-09-17 17:23:10 -03:00
Angie
a4752d28e4 version bump 2022-09-17 17:15:41 -03:00
angie
b9037c70e3 Avoid not fitting value on LoPairingInfo 2022-09-16 14:51:05 -03:00
angie
bae12a18e8 Fix From2Complement for bits=32 2022-09-14 16:58:58 -03:00
angie
7cd1f136a0 Prioritize moving when one register has value and the other doesn't 2022-09-14 15:45:48 -03:00
angie
917a24808f Fix RabbitizerRegistersTracker_moveRegisters not considering gpGot 2022-09-14 15:12:00 -03:00
angie
8a61b1d658 Expose TrackedRegisterState as a debugging measure 2022-09-14 14:31:13 -03:00
angie
edc172323d RegistersTracker.processGpLoad 2022-09-13 17:04:06 -03:00
angie
04b31eff1a RegistersTracker.preprocessLoAndGetInfo 2022-09-13 14:05:42 -03:00
angie
ac37df1398 name make ci 2022-09-09 23:41:47 -04:00
angie
baf3ce83ee Fix missing braces warning 2022-09-09 23:19:45 -04:00
angie
ea935b8358 refactor operand names 2022-09-09 23:13:23 -04:00
Angie
8009c4da15 Add workflow to check building with makefile 2022-08-27 13:03:54 -04:00
Angie
dcad3e2246 version bump 2022-08-27 13:03:25 -04:00
Anghelo Carvajal
7d6635273b
Merge pull request #6 from Decompollaborate/develop
1.1.0: RSP and R5900 support
2022-08-27 12:46:15 -04:00
Anghelo Carvajal
136fb7a09a
Add R5900 support (#5)
* starting r5900 stuff

* operands of pmaddh

* expose R5900 to python

* fix merge issues

* move to subtables

* mmi0 and mmi3

* the rest of mmi instructions

* normal, special, regimm and cop0

* fpu_s

* cop2 special1

* starting cop2 special2

* the rest of special2

* operands for normal, special, mmi and mmi0

* mmi1 and mmi2

* Fix mmi

* sync.p

* mmi3 and cop1

* add r5900 opcodes to InstrId.pyi

* add invalid bits to unknown instruction comment

* progress on cop2 special1

* kinda finish cop2 special1

* cop2 special2 progress

* Special case for R5900 cvt.w.s -> trunc.w.s

* R5900 c.olt.s and c.ole.s

* Fix a bunch of VU0 instructions

* I'm getting tired of this bullshit

* vlqi, vsqi, vlqd, vsqd

* fix some operands

* fix div1

* lqc2 and sqc2

* sqrt.s and mult

* fix mtsa and bc2

* Remove redundant .instrType=RABBITIZER_INSTR_TYPE_UNKNOWN

* RabbitizerInstrSuffix

* Impleme instr suffix type

* add instr suffix to remaining instructions

* ifdef out xyzw suffix from registers

* format

* fix warnings

* uncomment stuff on InstrId.pyi

* readme
2022-08-27 12:22:48 -04:00
Angie
d4cb445cc1 Add -Wpedantic to makefile 2022-08-23 15:12:55 -04:00
Angie
c9a9845a65 finish up rsp tables 2022-08-23 15:07:25 -04:00
Angie
75e129b3dd make tables for rsp normal, special, regimm and cop0 2022-08-23 14:06:52 -04:00
Angie
5b59b2dff7 finish up cpu instructions 2022-08-23 12:31:03 -04:00
Angie
2ebb5f7712 Tables for cpu except cop1 2022-08-23 10:55:14 -04:00
Angie
5ec08f914d Start including the case bits on the tables themselves 2022-08-23 09:32:24 -04:00
Anghelo Carvajal
f8979ede3e
Fix RSP instruction decoding (#4)
* Use the proper registers on RSP GPR instructions

* Add IMM_base operand to RSP instructions

* Use `ra` on RSP GPR registers

* Fix RABBITIZER_OPERAND_TYPE_RSP_rd

* ??

* fix vector register element index

* fix RSP mfc2 and mtc2

* fix vmov and similar instructions

* format

* update readme

* version pump
2022-08-22 16:27:51 -04:00
Angie
74d01f2b90 Merge remote-tracking branch 'origin/master' into develop 2022-08-18 16:18:56 -04:00
angie
e95a1f1f1d starting docs 2022-07-13 11:15:07 -04:00
angie
557345f95c version bump 2022-07-13 11:14:52 -04:00
Anghelo Carvajal
ebb4b84fbe
Merge pull request #3 from Decompollaborate/develop
1.0.1
2022-07-12 19:25:18 -04:00
Angie
9300da772e Allow taking None in Abi.fromStr 2022-07-12 19:01:36 -04:00
Angie
a5ef766311 Utils.escapeString 2022-07-10 16:04:39 -04:00
angie
a539a8a39d Annotate functions with attributes 2022-07-09 19:19:53 -04:00
angie
a870363644 ci builds again... 2022-07-09 18:15:17 -04:00
angie
ef1ce2634c add more checks to clang tidy 2022-07-09 18:12:21 -04:00
angie
ef49315db0 tidy target on makefile 2022-07-09 17:55:57 -04:00
angie
baaef2f242 Format files with clang-format and add a format rule to makefile 2022-07-09 17:40:53 -04:00
angie
63eb1cb152 Don't use "all" for linux ci builds 2022-07-09 17:17:54 -04:00
angie
f17c0ee5dc setup header dependencies on makefile 2022-07-09 17:13:37 -04:00
angie
ecc8de8df2 Add a makefile for testing and fix one warning 2022-07-09 16:54:42 -04:00
angie
5e59c935e8 hopefully fix windows ci builds 2022-07-09 16:06:04 -04:00
angie
5b68266148 Build for every supported architecture on ci builds 2022-07-09 15:51:19 -04:00
Angie
ac1dd252a6 Add build-backend to pyproject 2022-07-09 14:48:56 -04:00
Anghelo Carvajal
937c7b79e7
Merge pull request #2 from Decompollaborate/develop
1.0.0
2022-07-07 19:48:31 -04:00
angie
1135a9d8da simplify nop checking 2022-07-07 19:27:41 -04:00
angie
ccb0af3011 whoops, wrong default 2022-07-07 19:20:48 -04:00
angie
b3ffb7a713 Rename isHiPair and isLoPair to canBeHi and canBeLo 2022-07-07 15:48:10 -04:00
angie
dc314098d0 hasDelaySlot 2022-07-07 15:12:26 -04:00
angie
19579a183a Allow pickling Instruction type 2022-07-07 14:22:41 -04:00
Angie
d5b4b096b4 Allow disabling upper case for immediates 2022-07-07 00:44:30 -04:00
Angie
3d70f9d285 Option to omit the 0x on small hex immediates 2022-07-07 00:25:05 -04:00
Angie
64239b7565 Simplify logic of RabbitizerOperandType_processImmediate 2022-07-07 00:16:21 -04:00