Lines Matching refs:shamt
57 ArmStaticInst::shift_rm_imm(uint32_t base, uint32_t shamt,
60 assert(shamt < 32);
67 return base << shamt;
69 if (shamt == 0)
72 return base >> shamt;
74 if (shamt == 0)
77 return (base >> shamt) | -((base & (1 << 31)) >> shamt);
79 if (shamt == 0)
82 return (base << (32 - shamt)) | (base >> shamt);
177 ArmStaticInst::shift_rm_rs(uint32_t base, uint32_t shamt,
186 if (shamt >= 32)
189 return base << shamt;
191 if (shamt >= 32)
194 return base >> shamt;
196 if (shamt >= 32)
199 return (base >> shamt) | -((base & (1 << 31)) >> shamt);
201 shamt = shamt & 0x1f;
202 if (shamt == 0)
205 return (base << (32 - shamt)) | (base >> shamt);
217 ArmStaticInst::shift_carry_imm(uint32_t base, uint32_t shamt,
226 if (shamt == 0)
229 return (base >> (32 - shamt)) & 1;
231 if (shamt == 0)
234 return (base >> (shamt - 1)) & 1;
236 if (shamt == 0)
239 return (base >> (shamt - 1)) & 1;
241 shamt = shamt & 0x1f;
242 if (shamt == 0)
245 return (base >> (shamt - 1)) & 1;
257 ArmStaticInst::shift_carry_rs(uint32_t base, uint32_t shamt,
263 if (shamt == 0)
269 if (shamt > 32)
272 return (base >> (32 - shamt)) & 1;
274 if (shamt > 32)
277 return (base >> (shamt - 1)) & 1;
279 if (shamt > 32)
280 shamt = 32;
281 return (base >> (shamt - 1)) & 1;
283 shamt = shamt & 0x1f;
284 if (shamt == 0)
285 shamt = 32;
286 return (base >> (shamt - 1)) & 1;