gallium/util: libunwind support
[mesa.git] / src / gallium / auxiliary / util / u_math.h
index a9232711bf1264efec54d2f7f32b47ee733c4435..2ab5f03a6628b79bc4801ad4b1f8d26c1a035aa7 100644 (file)
@@ -429,6 +429,18 @@ util_logbase2(unsigned n)
 #endif
 }
 
+/**
+ * Returns the ceiling of log n base 2, and 0 when n == 0. Equivalently,
+ * returns the smallest x such that n <= 2**x.
+ */
+static inline unsigned
+util_logbase2_ceil(unsigned n)
+{
+   if (n <= 1)
+      return 0;
+
+   return 1 + util_logbase2(n - 1);
+}
 
 /**
  * Returns the smallest power of two >= x