• Oran Agra's avatar
    Sanitize dump payload: performance optimizations and tuning · e288430c
    Oran Agra authored
    First, if the ziplist header is surely inside the ziplist, do fast path
    decoding rather than the careful one.
    
    In that case, streamline the encoding if-else chain to be executed only
    once, and the encoding validity tested at the end.
    
    encourage inlining
    
    likely / unlikely hints for speculative execution
    
    Assertion used _exit(1) to tell the compiler that the code after them is
    not reachable and get rid of warnings.
    
    But in some cases assertions are placed inside tight loops, and any
    piece of code in them can slow down execution (code cache and other
    reasons), instead using either abort() or better yet, unreachable
    builtin.
    e288430c
config.h 8.41 KB