ADDIUPC rt, imm |
nanoMIPS, availability varies by format. |
Add Immediate (Untrapped) to PC |
Add Immediate (Untrapped) to PC. Compute address by adding immediate value imm to thePC and placing the result in register $rt, not trapping on overflow.
nanoMIPS, availability varies by format.
|
000001 |
rt |
s[20:1] |
s[21] |
|
6 |
5 |
20 |
1 |
if pointers_are_64_bits():
raise behaves_like('DADDIUPC[32]')
s = sign_extend(s[21] @ s[20:1] @ '0')
imm = s + 4
|
011000 |
rt |
00011 |
s[15:0] |
s[31:16] |
|
6 |
5 |
5 |
16 |
16 |
if C0.Config5.NMS == 1:
raise exception('RI')
if pointers_are_64_bits():
raise behaves_like('DADDIUPC[48]')
s = sign_extend(s[31:16] @ s[15:0])
imm = s + 6
GPR[rt] = effective_address(CPU.next_pc, s)
Reserved Instruction for ADDIUPC[48] format on NMS cores.