mirror of
https://github.com/odin-lang/Odin.git
synced 2025-12-28 17:04:34 +00:00
Add sdl3_bits.odin
This commit is contained in:
17
vendor/sdl3/sdl3_bits.odin
vendored
Normal file
17
vendor/sdl3/sdl3_bits.odin
vendored
Normal file
@@ -0,0 +1,17 @@
|
||||
package sdl3
|
||||
|
||||
import "base:intrinsics"
|
||||
import "core:c"
|
||||
|
||||
@(require_results)
|
||||
MostSignificantBitIndex32 :: #force_inline proc "c" (x: Uint32) -> c.int {
|
||||
if x == 0 {
|
||||
return -1
|
||||
}
|
||||
return c.int(31 - intrinsics.count_leading_zeros(x))
|
||||
}
|
||||
|
||||
@(require_results)
|
||||
HasExactlyOneBitSet32 :: #force_inline proc "c" (x: Uint32) -> bool {
|
||||
return x != 0 && (x & (x - 1)) == 0
|
||||
}
|
||||
Reference in New Issue
Block a user