Skip to content

Commit cbeb039

Browse files
authored
Merge pull request #86 from chaoticgd/interlock
Fix disassembly of interlock bit in cfc2/ctc2/qmfc2/qmtc2 instructions
2 parents 25514bb + eeed946 commit cbeb039

File tree

3 files changed

+10
-6
lines changed

3 files changed

+10
-6
lines changed

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
# Changelog
22

3+
## v2.1.22
4+
5+
- Fixed disassembly of interlock bit in cfc2/ctc2/qmfc2/qmtc2 instructions.
6+
37
## v2.1.21
48

59
- Added support for Ghidra 11.2.1.

data/languages/cop2.sinc

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -173,13 +173,13 @@ with : prime=18 {
173173
goto Rel16;
174174
}
175175

176-
:cfc2.I RT, vuccid is vuop_21_25=0b00010 & RT & vuccid & vuop_1_10=0b0000000000 & I
176+
:cfc2^I RT, vuccid is vuop_21_25=0b00010 & RT & vuccid & vuop_1_10=0b0000000000 & I
177177
{ RT = _cfc2(vuccid:4); }
178-
:ctc2.I RTsrc, vuccid is vuop_21_25=0b00110 & RTsrc & vuccid & vuop_1_10=0b0000000000 & I
178+
:ctc2^I RTsrc, vuccid is vuop_21_25=0b00110 & RTsrc & vuccid & vuop_1_10=0b0000000000 & I
179179
{ tmp:4 = _ctc2(RTsrc:4); vuccid = tmp; }
180-
:qmfc2.I RT128, vufd_qmc2 is vuop_21_25=0b00001 & RT128 & vufd_qmc2 & I
180+
:qmfc2^I RT128, vufd_qmc2 is vuop_21_25=0b00001 & RT128 & vufd_qmc2 & I
181181
{ RT128 = _qmfc2(vufd_qmc2:4); }
182-
:qmtc2.I RT128, vufd_qmc2 is vuop_21_25=0b00101 & RT128 & vufd_qmc2 & vuop_1_10=0b0000000000 & I
182+
:qmtc2^I RT128, vufd_qmc2 is vuop_21_25=0b00101 & RT128 & vufd_qmc2 & vuop_1_10=0b0000000000 & I
183183
{ vufd_qmc2 = _qmtc2(RT128:4); }
184184
:vcallms imm15 is vuco=1 & vudest=0b0000 & imm15 & vuop_0_5=0b111000
185185
{ _vcallms(imm15:4 * 8); }

data/languages/vuupper.sinc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -83,8 +83,8 @@ define pcodeop _vsubaq;
8383
define pcodeop _vsubabc;
8484
define pcodeop _vwaitq;
8585

86-
I: "NI" is vuinterlock=0 { export 0:1; }
87-
I: "I" is vuinterlock=1 { export 0:1; }
86+
I: "" is vuinterlock=0 { export 0:1; }
87+
I: ".I" is vuinterlock=1 { export 0:1; }
8888

8989
dest: "" is vudest=0b0000 { export 0:1; }
9090
dest: ".w" is vudest=0b0001 { export 0:1; }

0 commit comments

Comments
 (0)