1 # Move To Special Purpose Register
5 n <- spr[5:9] || spr[0:4]
8 case(808, 809, 810, 811):
10 if length(SPR(n)) = 64 then
13 SPR(n) <- (RS) [32:63]
15 # Move From Special Purpose Register
19 n <- spr[5:9] || spr[0:4]
21 case(129): see Book III
22 case(808, 809, 810, 811):
24 if length(SPR(n)) = 64 then
27 RT <- [0]*32 || SPR(n)
29 # Move to CR from XER Extended
33 CR[4×BF+32:4×BF+35] <- XER[OV] || XER[OV32] || XER[CA] || XER[CA32]
35 # Move To One Condition Register Field
45 CR[4*n+32:4*n+35] <- (RS)[4*n+32:4*n+35]
48 # Move To Condition Register Fields
52 mask <- FXM[0]*4 || FXM[1]*4 || ... FXM[7]*4
53 CR <- ((RS)[32:63] & mask) | (CR & ¬mask)
55 # Move From One Condition Register Field
67 RT[4 *n+32:4*n+35] <- CR[4*n+32:4* n+35]
69 # Move From Condition Register
79 if CR[4×BFA+32] = 1 then
80 RT <- 0xFFFF_FFFF_FFFF_FFFF
81 else if CR[4×BFA+33]=1 then
82 RT <- 0x0000_0000_0000_0001
84 RT <- 0x0000_0000_0000_0000