J 指令类包括从(PC 相对)立即地址值获取目标地址的分支指令(跳转和调用)。 J 指令可在slot 2 和slot 3 上执行。
将程序流程更改为子程序。 该指令首先将下一个程序计数器 (NPC) 值传送到链接寄存器,然后跳转到目标地址。
该指令可以出现在插槽 2 或 3 中。

Class: J (slots 2,3)
注意
编码

| 字段名称 | 描述 |
|---|---|
| ICLASS | 指令类 |
| DN | Dot-new |
| Parse | 数据包/循环解析位 |
| u2 | 编码寄存器 u 的字段 |
比较两个寄存器,或者一个寄存器和立即数,并用结果写一个谓词。 然后使用谓词结果有条件地跳转到一个PC相对的目标地址。
可用作操作数的寄存器仅限于 R0-R7 和 R16-R23。 谓词目的地仅限于 P0 和 P1。
在汇编语法中,该指令在数据包中显示为两条指令:比较和单独的条件跳转。 汇编器可以将相邻的比较和跳转指令转换为复合比较跳转形式。


Class: J (slots 0,1,2,3)
编码



| 字段名称 | 描述 |
|---|---|
| ICLASS | 指令类 |
| Parse | 数据包/循环解析位 |
| s4 | 编码寄存器 s 的字段 |
| t4 | 编码寄存器 t 的字段 |
将程序流程更改为目标地址。 该指令将程序计数器更改为相对于 PC 地址的目标地址。 与当前 PC 地址的偏移量包含在指令编码中。
推测的跳转指令包括指定条件表达式的预期值的提示(“采用”或“未采用”)。 如果谓词的实际生成值与此预期值不同,则跳转指令会导致性能损失。
该指令可以出现在插槽 2 或 3 中。

Class: J (slots 0,1,2,3)
注意
编码

| 字段名称 | 描述 |
|---|---|
| ICLASS | 指令类 |
| DN | Dot-new |
| PT | 预测 |
| Parse | 数据包/循环解析位 |
| u2 | 编码寄存器 u 的字段 |
进行推测跳跃。
如果新生成的谓词的 LSB 为真,则跳转。 谓词必须在与推测的跳转指令相同的数据包中生成。
推测的跳转指令包括指定条件表达式的预期值的提示(“采用”或“未采用”)。 如果谓词的实际生成值与此预期值不同,则跳转指令会导致性能损失。
该指令可以出现在插槽 2 或 3 中。

Class: J (slots 0,1,2,3)
注意
编码

| 字段名称 | 描述 |
|---|---|
| ICLASS | 指令类 |
| DN | Dot-new |
| PT | 预测 |
| Parse | 数据包/循环解析位 |
| u2 | 编码寄存器 u 的字段 |
执行寄存器条件跳转。
如果指定的寄存器表达式为真则跳转。
寄存器条件跳转包括一个提示(“采用”或“未采用”),它指定寄存器表达式的预期值。 如果表达式的实际生成值与此预期值不同,则跳转指令会导致性能损失。
该指令只能出现在插槽 3 中。

Class: J (slot 3)
注意
编码

| 字段名称 | 描述 |
|---|---|
| sm | 仅主管模式 |
| ICLASS | 指令类 |
| Parse | 数据包/循环解析位 |
| s5 | 编码寄存器 s 的字段 |
将无符号立即数或寄存器值移动到目标寄存器并无条件跳转。 在汇编语法中,该指令在数据包中显示为两条指令,一条传输和一条单独的跳转。 汇编器可以将相邻的传输和跳转指令转换为复合传输-跳转形式。

Class: J (slots 2,3)
编码

| 字段名称 | 描述 |
|---|---|
| ICLASS | 指令类 |
| Parse | 数据包/循环解析位 |
| d4 | 编码寄存器 d 的字段 |
| s4 | 编码寄存器 s 的字段 |