sfeed

Simple RSS and Atom feed parser
git clone https://git.sinitax.com/codemadness/sfeed
Log | Files | Refs | README | LICENSE | Upstream | sfeed.txt

commit a211bea6a5f0ad811a679458cffed1e263c0ccfa
parent 675cfe6a73b369d1eb7adefa6e59dc37259a513d
Author: Hiltjo Posthuma <hiltjo@codemadness.org>
Date:   Tue, 27 Apr 2021 18:30:02 +0200

enable unlocked I/O by default

getchar_unlocked is part of POSIX and should be supported by most platforms. On
all tested platforms it has a performance benefit, sometimes smallish (<12%),
sometimes large (~40%).

Diffstat:
MMakefile | 4++++
Mxml.h | 2+-
2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/Makefile b/Makefile @@ -15,6 +15,10 @@ SFEED_CFLAGS = ${CFLAGS} SFEED_LDFLAGS = ${LDFLAGS} SFEED_CPPFLAGS = -D_POSIX_C_SOURCE=200809L -D_XOPEN_SOURCE=700 -D_BSD_SOURCE +# uncomment for convervative locked I/O. +#SFEED_CPPFLAGS = -D_POSIX_C_SOURCE=200809L -D_XOPEN_SOURCE=700 -D_BSD_SOURCE \ +# -DGETNEXT=getchar + BIN = \ sfeed\ sfeed_atom\ diff --git a/xml.h b/xml.h @@ -24,7 +24,7 @@ typedef struct xmlparser { #ifndef GETNEXT /* GETNEXT overridden to reduce function call overhead and further context optimizations. */ - #define GETNEXT getchar + #define GETNEXT getchar_unlocked #endif /* current tag */