On Wed, Mar 11, 2026 at 10:22:18PM +0300, Nazir Bilal Yavuz wrote:
> Here is v14 which is v13-0001 + v13-0002.
Thanks! It's getting close.
> + /*
> + * Temporary variables are used here instead of passing the actual
> + * variables (especially input_buf_ptr) directly to the helper. Taking
> + * the address of a local variable might force the compiler to
> + * allocate it on the stack rather than in a register. Because
> + * input_buf_ptr is used heavily in the hot scalar path below, keeping
> + * it in a register is important for performance.
> + */
> + int temp_input_buf_ptr;
> + bool temp_hit_eof = hit_eof;
A few notes:
* Does using a temporary variable for hit_eof actually make a difference?
AFAICT that's only updated when loading more data.
* Does inlining the function produce the same results?
* Also, I'm curious what the usual benchmarks look like with and without
this hack for the latest patch.
--
nathan