Rev. 1.50, 10/04, page 304 of 448
10.1.58 RTS (Return from Subroutine): Branch Instruction
Format
Operation
Instruction Code
Cycle
T Bit
RTS
PR
→
PC
0000000000001011
1 —
Description:
This instruction returns from a subroutine procedure by restoring the PC from PR.
Processing continues from the address indicated by the restored PC value. This instruction can be
used to return from a subroutine procedure called by a BSR or JSR instruction to the source of the
call.
Notes:
As this is a delayed branch instruction, the instruction following this instruction is executed
before the branch destination instruction.
Interrupts are not accepted between this instruction and the following instruction. If the following
instruction is a branch instruction, it is identified as a slot illegal instruction.
The instruction that restores PR must be executed before the RTS instruction. This restore
instruction cannot be in the RTS delay slot.
Operation:
RTS( ) /* RTS */
{
unsigned int temp;
temp = PC;
PC = PR;
Delay_Slot(temp+2);
}
Summary of Contents for SuperH SH-4A
Page 2: ...Rev 1 50 10 04 page ii of xx ...
Page 8: ...Rev 1 50 10 04 page viii of xx ...
Page 116: ...Rev 1 50 10 04 page 96 of 448 ...
Page 178: ...Rev 1 50 10 04 page 158 of 448 ...
Page 206: ...Rev 1 50 10 04 page 186 of 448 ...
Page 231: ...Rev 1 50 10 04 page 211 of 448 Possible Exceptions Slot illegal instruction exception ...
Page 235: ...Rev 1 50 10 04 page 215 of 448 Possible Exceptions Slot illegal instruction exception ...
Page 238: ...Rev 1 50 10 04 page 218 of 448 Possible Exceptions Slot illegal instruction exception ...
Page 408: ...Rev 1 50 10 04 page 388 of 448 Possible Exceptions Inexact Not generated when FPSCR PR 1 ...
Page 446: ...Rev 1 50 10 04 page 426 of 448 ...
Page 468: ...Rev 1 50 10 04 page 448 of 448 ...
Page 471: ......
Page 472: ...SH 4A Software Manual ...