Skip to content

Effect of fully inlining try_read_unlock

Laurynas Biveinis edited this page Oct 14, 2021 · 7 revisions

In the cold OLC algorithm paths, GCC 11 calls try_read_unlock instead of inlining it even though it should compile down to a single instruction, saving code size. Try forcing inlining by __attribute__((always_inline,flatten)).

baseline commit, patch

  • micro_benchmark_key_prefix:

Clone this wiki locally