-/* inlining this will help show what fn that is taking time during profiling. */
-static inline void buf_set_u32(uint8_t* buffer, unsigned int first, unsigned int num, uint32_t value)
+/**
+ * Sets @c num bits in @c _buffer, starting at the @c first bit,
+ * using the bits in @c value. This routine fast-paths writes
+ * of little-endian, byte-aligned, 32-bit words.
+ * @param _buffer The buffer whose bits will be set.
+ * @param first The bit offset in @c _buffer to start writing (0-31).
+ * @param num The number of bits from @c value to copy (1-32).
+ * @param value Up to 32 bits that will be copied to _buffer.
+ */
+static inline void buf_set_u32(void *_buffer,
+ unsigned first, unsigned num, uint32_t value)