Performance: split check deliver fast/slow paths
authorMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Sat, 16 Jul 2016 03:22:08 +0000 (23:22 -0400)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Sun, 21 Aug 2016 20:18:56 +0000 (16:18 -0400)
commitb07cd987c6856becc4ce1c20e5118b006f4431b0
treed59f182fc4c077916ba605ab0bb3ee5f8dfb0c18
parent77d7fa989f79f3c2cb14d26576cbbb54b0637594
Performance: split check deliver fast/slow paths

On ARMv7l (Cubietruck), the compiler generates a function call for each
lib_ring_buffer_check_deliver, even though it typically only do an
unlikely check. Split it into an inline fast path, and a function call
for the slow path. This brings a performance gain of about 500ns/event
on the Cubietruck.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
libringbuffer/frontend_internal.h
libringbuffer/ring_buffer_frontend.c
This page took 0.025404 seconds and 4 git commands to generate.