Lines Matching defs:u32

359  * @param   u32     The 32-bit value to assign to *pu32.
362 DECLASM(uint32_t) ASMAtomicXchgU32(volatile uint32_t *pu32, uint32_t u32);
364 DECLINLINE(uint32_t) ASMAtomicXchgU32(volatile uint32_t *pu32, uint32_t u32)
369 "=r" (u32)
370 : "1" (u32),
374 u32 = _InterlockedExchange((long *)pu32, u32);
381 mov eax, u32
383 mov [u32], eax
386 mov eax, u32
388 mov [u32], eax
392 return u32;
1375 uint32_t volatile u32;
1376 ASMAtomicXchgU32(&u32, 0);
2084 * @param u32 The 32-bit value to assign to *pu32.
2086 DECLINLINE(void) ASMAtomicWriteU32(volatile uint32_t *pu32, uint32_t u32)
2088 ASMAtomicXchgU32(pu32, u32);
2096 * @param u32 The 32-bit value to assign to *pu32.
2098 DECLINLINE(void) ASMAtomicUoWriteU32(volatile uint32_t *pu32, uint32_t u32)
2101 *pu32 = u32;
2449 * @param u32 Number to add.
2452 DECLASM(uint32_t) ASMAtomicAddU32(uint32_t volatile *pu32, uint32_t u32);
2454 DECLINLINE(uint32_t) ASMAtomicAddU32(uint32_t volatile *pu32, uint32_t u32)
2457 u32 = _InterlockedExchangeAdd((long *)pu32, u32);
2458 return u32;
2462 : "=r" (u32),
2464 : "0" (u32),
2467 return u32;
2471 mov eax, [u32]
2479 mov [u32], eax
2481 return u32;
2596 * @param u32 Number to subtract.
2598 DECLINLINE(uint32_t) ASMAtomicSubU32(uint32_t volatile *pu32, uint32_t u32)
2600 return ASMAtomicAddU32(pu32, (uint32_t)-(int32_t)u32);
2691 uint32_t u32;
2693 u32 = _InterlockedIncrement((long *)pu32);
2694 return u32;
2698 : "=r" (u32),
2703 return u32+1;
2715 mov u32, eax
2717 return u32+1;
2808 uint32_t u32;
2810 u32 = _InterlockedDecrement((long *)pu32);
2811 return u32;
2815 : "=r" (u32),
2820 return u32-1;
2832 mov u32, eax
2834 return u32-1;
2916 * @param pu32 Pointer to the pointer variable to OR u32 with.
2917 * @param u32 The value to OR *pu32 with.
2920 DECLASM(void) ASMAtomicOrU32(uint32_t volatile *pu32, uint32_t u32);
2922 DECLINLINE(void) ASMAtomicOrU32(uint32_t volatile *pu32, uint32_t u32)
2925 _InterlockedOr((long volatile *)pu32, (long)u32);
2930 : "ir" (u32),
2935 mov eax, [u32]
2952 * @param pi32 Pointer to the pointer variable to OR u32 with.
3009 * @param pu32 Pointer to the pointer variable to AND u32 with.
3010 * @param u32 The value to AND *pu32 with.
3013 DECLASM(void) ASMAtomicAndU32(uint32_t volatile *pu32, uint32_t u32);
3015 DECLINLINE(void) ASMAtomicAndU32(uint32_t volatile *pu32, uint32_t u32)
3018 _InterlockedAnd((long volatile *)pu32, u32);
3023 : "ir" (u32),
3028 mov eax, [u32]
3102 * @param pu32 Pointer to the pointer variable to OR u32 with.
3103 * @param u32 The value to OR *pu32 with.
3106 DECLASM(void) ASMAtomicUoOrU32(uint32_t volatile *pu32, uint32_t u32);
3108 DECLINLINE(void) ASMAtomicUoOrU32(uint32_t volatile *pu32, uint32_t u32)
3113 : "ir" (u32),
3118 mov eax, [u32]
3135 * @param pi32 Pointer to the pointer variable to OR u32 with.
3189 * @param pu32 Pointer to the pointer variable to AND u32 with.
3190 * @param u32 The value to AND *pu32 with.
3193 DECLASM(void) ASMAtomicUoAndU32(uint32_t volatile *pu32, uint32_t u32);
3195 DECLINLINE(void) ASMAtomicUoAndU32(uint32_t volatile *pu32, uint32_t u32)
3200 : "ir" (u32),
3205 mov eax, [u32]
3284 uint32_t u32;
3287 : "=r" (u32),
3292 return u32 + 1;
3304 mov u32, eax
3306 return u32 + 1;
3323 uint32_t u32;
3326 : "=r" (u32),
3331 return u32 - 1;
3343 mov u32, eax
3345 return u32 - 1;
3479 * @param u32 The value to fill with.
3482 DECLASM(void) ASMMemFill32(volatile void *pv, size_t cb, uint32_t u32);
3484 DECLINLINE(void) ASMMemFill32(volatile void *pv, size_t cb, uint32_t u32)
3489 __stosq((unsigned __int64 *)pv, RT_MAKE_U64(u32, u32), cb / 8);
3492 __stosd((unsigned long *)pv, u32, cb / 4);
3500 "a" (u32)
3514 mov eax, [u32]
3612 * @returns Pointer to the first value which doesn't equal u32.
3613 * @returns NULL if all equal to u32.
3617 * @param u32 The value it's supposed to be filled with.
3621 DECLINLINE(uint32_t *) ASMMemIsAllU32(void const *pv, size_t cb, uint32_t u32)
3626 if (RT_UNLIKELY(*pu32 != u32))
3968 union { bool f; uint32_t u32; uint8_t u8; } rc;
3976 : "=q" (rc.u32),
3994 mov [rc.u32], eax
4017 union { bool f; uint32_t u32; uint8_t u8; } rc;
4025 : "=q" (rc.u32),
4043 mov [rc.u32], eax
4069 union { bool f; uint32_t u32; uint8_t u8; } rc;
4077 : "=q" (rc.u32),
4095 mov [rc.u32], eax
4120 union { bool f; uint32_t u32; uint8_t u8; } rc;
4129 : "=q" (rc.u32),
4147 mov [rc.u32], eax
4173 union { bool f; uint32_t u32; uint8_t u8; } rc;
4181 : "=q" (rc.u32),
4199 mov [rc.u32], eax
4222 union { bool f; uint32_t u32; uint8_t u8; } rc;
4228 : "=q" (rc.u32),
4246 mov [rc.u32], eax
4272 union { bool f; uint32_t u32; uint8_t u8; } rc;
4274 rc.u32 = _bittest((long *)pvBitmap, iBit);
4280 : "=q" (rc.u32)
4297 mov [rc.u32], eax
4493 uint32_t u32 = ~pau32Bitmap[iBitPrev / 32] >> iBit;
4497 if (_BitScanForward(&ulBit, u32))
4506 : "r" (u32));
4510 mov edx, [u32]
4647 uint32_t u32 = pau32Bitmap[iBitPrev / 32] >> iBit;
4651 if (_BitScanForward(&ulBit, u32))
4660 : "r" (u32));
4664 mov edx, [u32]
4702 * @param u32 Integer to search for set bits.
4706 DECLASM(unsigned) ASMBitFirstSetU32(uint32_t u32);
4708 DECLINLINE(unsigned) ASMBitFirstSetU32(uint32_t u32)
4712 if (_BitScanForward(&iBit, u32))
4726 : "rm" (u32));
4731 bsf eax, [u32]
4767 * @param u32 Integer to search for set bits.
4771 DECLASM(unsigned) ASMBitLastSetU32(uint32_t u32);
4773 DECLINLINE(unsigned) ASMBitLastSetU32(uint32_t u32)
4777 if (_BitScanReverse(&iBit, u32))
4791 : "rm" (u32));
4796 bsr eax, [u32]
4857 * @param u32 32-bit integer value.
4860 DECLASM(uint32_t) ASMByteSwapU32(uint32_t u32);
4862 DECLINLINE(uint32_t) ASMByteSwapU32(uint32_t u32)
4865 u32 = _byteswap_ulong(u32);
4867 __asm__ ("bswapl %0" : "=r" (u32) : "0" (u32));
4871 mov eax, [u32]
4873 mov [u32], eax
4876 return u32;
4903 * @param u32 The value to rotate.
4906 DECLINLINE(uint32_t) ASMRotateLeftU32(uint32_t u32, uint32_t cShift)
4909 return _rotl(u32, cShift);
4911 __asm__ __volatile__("roll %b1, %0" : "=g" (u32) : "Ic" (cShift), "0" (u32));
4912 return u32;
4915 return (u32 << cShift) | (u32 >> (32 - cShift));
4924 * @param u32 The value to rotate.
4927 DECLINLINE(uint32_t) ASMRotateRightU32(uint32_t u32, uint32_t cShift)
4930 return _rotr(u32, cShift);
4932 __asm__ __volatile__("rorl %b1, %0" : "=g" (u32) : "Ic" (cShift), "0" (u32));
4933 return u32;
4936 return (u32 >> cShift) | (u32 << (32 - cShift));