108 const uint32_t cpsr) {
109 const uint32_t cpsr_n = (cpsr >> 31) & 1u;
110 const uint32_t cpsr_z = (cpsr >> 30) & 1u;
111 const uint32_t cpsr_c = (cpsr >> 29) & 1u;
112 const uint32_t cpsr_v = (cpsr >> 28) & 1u;
116 return (cpsr_z == 1);
118 return (cpsr_z == 0);
120 return (cpsr_c == 1);
122 return (cpsr_c == 0);
124 return (cpsr_n == 1);
126 return (cpsr_n == 0);
128 return (cpsr_v == 1);
130 return (cpsr_v == 0);
132 return ((cpsr_c == 1) && (cpsr_z == 0));
134 return ((cpsr_c == 0) || (cpsr_z == 1));
136 return (cpsr_n == cpsr_v);
138 return (cpsr_n != cpsr_v);
140 return ((cpsr_z == 0) && (cpsr_n == cpsr_v));
142 return ((cpsr_z == 1) || (cpsr_n != cpsr_v));