5
INSTRUCTION SET
38
EPSON
S1C33 FAMILY C33 PE CORE MANUAL
31
0
Before execution of
popn
low address
31
0
After execution of
popn
r15
r14
r13
r12
:
:
r1
r0
low address
r15
r14
r13
r12
:
:
r1
r0
SP
SP
Data is popped off the stack into the registers before the stack pointer is updated.
[SP]
→
rd
, SP = SP +
4
Figure
5
.
13
.
2
Successive Pop of General-Purpose Registers
Example
2
:
pushs %ahr
Push special registers onto the stack successively
pops %ahr
Pop special registers off the stack successively
31
0
Before execution of
pushs
low address
31
0
After execution of
pushs
ahr
alr
low address
SP
SP
Figure
5
.
13
.
3
Successive Push of Special Registers
31
0
Before execution of
pops
low address
31
0
After execution of
pops
ahr
alr
ahr
alr
low address
SP
SP
Figure
5
.
13
.
4
Successive Pop of Special Registers
Example
3
:
push
%rs
Push any general-purpose register onto the stack
pop
%rd
Pop any general-purpose register off the stack
31
0
Before execution of
push
low address
31
0
After execution of
push
rs
low address
SP
SP
Figure
5
.
13
.
5
Single Push of a General-Purpose Register
31
0
Before execution of
pop
low address
31
0
After execution of
pop
rd
rd
low address
SP
SP
Figure
5
.
13
.
6
Single Pop of a General-Purpose Register