51
2.7 Instruction Overview
2.7.2 Branch Instructions without Delay Slots

Instructions including branch instructions without delay slots are executed in order of

coding.

Branch Instructions Without Delay Slots
The instructions represented as follows execute branchin g without delay slots:
Theory of Operation of Branch Instructions Without Delay Slots
Instructions including branch instructions witho ut delay slots are executed in order of coding.
The instruction provided immediately before the branch ins truction is not executed before
branching.
[Example]
The number of execution cycles for a branch in struction withou t a dela y slot is two c ycles wh en
it involves branching, or one cycle when it does not involve branching.
Since no dummy instruction is placed in the delay slo t, the instr uction c oding eff iciency i s better
than that of a branch instruction with a delay slot containi ng a NOP instruction.
Selecting an operation with a delay slot when an effecti ve i nstruct ion can be p la ced in th e d elay
slot and selecting an operation without a delay slo t o therwise can s atis fy both exec ution speed s
and coding efficiency.
JMP @Ri CALL label12 CALL @Ri RET
BRA label9 BNO label9 BEQ label9 BNE lab el9
BC label9 BNC label9 BN label9 BP label9
BV label9 BNV label9 BLT label9 BGE label9
BLE label9 BGT label9 BLS label 9 BHI label9
; Instruction list
ADD R1, R2 ;
BRA LABEL ; Branch ins truction (without a delay slot)
MOV R2, R3 ; Not executed
:
LABEL : ST R3, @R4 ; Branch destinati on