angie
eb11d93da9
Implement mfc2, mtc2, cfc2 and ctc2
2023-01-21 15:42:40 -03:00
angie
716d21f8ea
fix "emitted" typo
2022-12-26 20:24:41 -03:00
angie
027b3773fe
Expand list of instructions not emitted by C compilers
2022-12-26 19:59:23 -03:00
angie
5063702a07
modifiesF* and readsF
2022-12-20 00:42:27 -03:00
angie
ef2acdb328
Remove jalr_rd hack
2022-12-19 15:04:59 -03:00
angie
3735d91fcc
Pregenerate every table
2022-12-16 15:37:46 -03:00
angie
363aff8e5d
Fix descriptor logic errors
2022-12-15 16:55:31 -03:00
angie
920c79d700
set .readsR*
for every instruction
2022-12-14 20:53:32 -03:00
angie
96e2c465f6
Remove 3 non-existent RSP instructions
2022-12-14 15:22:06 -03:00
angie
6d49bb4abf
Remove signedness from access type and move it to doesUnsignedMemoryAccess
2022-10-16 17:02:50 -03:00
angie
5d0f9ad8f6
reads/modifies HI/LO
2022-10-14 14:58:14 -03:00
angie
7cec779b85
AccessType enum
2022-10-13 19:41:46 -03:00
angie
91f30645e8
Remove RabbitizerArchitectureVersion and deprecate RabbitizerInstrType
2022-10-13 16:12:07 -03:00
angie
faaf017aef
isJumpWithAddress
2022-10-13 14:32:36 -03:00
angie
ba09c10925
format tables
2022-10-13 13:32:22 -03:00
Angie
4ebd49711b
add missing operand to trap instructions
2022-10-09 18:29:31 -03:00
Angie
874863ab77
add userdefined instructionId placeholders
2022-10-09 17:48:46 -03:00
Angie
4effc73851
add missing bal metadata
2022-10-09 16:11:04 -03:00
Angie
15b254bf03
Add bal
support
2022-09-27 22:52:57 -03:00
Angie
69fe5ff69a
Use . + 4 + (X << 2)
notation for branches when no immOverride was given
2022-09-27 22:06:28 -03: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
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
b3ffb7a713
Rename isHiPair
and isLoPair
to canBeHi and canBeLo
2022-07-07 15:48:10 -04:00
angie
55de30256a
doesLoad and doesStore
2022-07-05 13:32:24 -04:00
angie
7eab5eb1df
Add architecture version to most cpu instructions
...
fp instructions are not done yet
2022-07-01 12:07:45 -04:00
angie
b3843f271e
starting to port RegistersTracker
2022-06-11 17:49:33 -04:00
angie
8b37e56e2e
Some fixes
2022-06-08 22:44:43 -04:00
angie
bab16d24a5
Add more stuff to Descriptor
2022-06-08 02:17:48 -04:00
angie
9c05b19866
rename RabbitizerRegisterType to RabbitizerOperandType
2022-06-07 23:30:01 -04:00
angie
118ee1cc89
rsp
2022-06-07 03:16:09 -04:00
angie
518953980c
more rsp stuff
2022-06-07 02:28:10 -04:00
angie
9b4ac24ca5
macro abuse on Disassemble
2022-06-07 00:49:37 -04:00
angie
185a934081
First batch of rsp stuff
2022-06-06 22:19:42 -04:00
angie
b561f3f4b9
Rename the instr id enums
2022-06-05 19:15:25 -04:00
angie
b01fc41a5a
Moving stuff around
2022-06-05 12:25:57 -04:00