Lines Matching refs:iBitStart
4309 * @param iBitStart The First bit to clear.
4312 DECLINLINE(void) ASMBitClearRange(volatile void *pvBitmap, int32_t iBitStart, int32_t iBitEnd)
4314 if (iBitStart < iBitEnd)
4316 volatile uint32_t *pu32 = (volatile uint32_t *)pvBitmap + (iBitStart >> 5);
4317 int iStart = iBitStart & ~31;
4320 *pu32 &= ((1 << (iBitStart & 31)) - 1) | ~((1 << (iBitEnd & 31)) - 1);
4324 if (iBitStart & 31)
4326 *pu32 &= (1 << (iBitStart & 31)) - 1;
4328 iBitStart = iStart + 32;
4332 if (iBitStart != iEnd)
4333 ASMMemZero32(pu32, (iEnd - iBitStart) >> 3);
4350 * @param iBitStart The First bit to set.
4353 DECLINLINE(void) ASMBitSetRange(volatile void *pvBitmap, int32_t iBitStart, int32_t iBitEnd)
4355 if (iBitStart < iBitEnd)
4357 volatile uint32_t *pu32 = (volatile uint32_t *)pvBitmap + (iBitStart >> 5);
4358 int iStart = iBitStart & ~31;
4361 *pu32 |= ((1 << (iBitEnd - iBitStart)) - 1) << iBitStart;
4365 if (iBitStart & 31)
4367 *pu32 |= ~((1 << (iBitStart & 31)) - 1);
4369 iBitStart = iStart + 32;
4373 if (iBitStart != iEnd)
4374 ASMMemFill32(pu32, (iEnd - iBitStart) >> 3, ~UINT32_C(0));