]> git.ipfire.org Git - thirdparty/zstd.git/commitdiff
HINT_INLINE ZSTD_storeSeq()
authorNick Terrell <terrelln@fb.com>
Fri, 20 Sep 2019 23:39:27 +0000 (16:39 -0700)
committerNick Terrell <terrelln@fb.com>
Fri, 20 Sep 2019 23:39:27 +0000 (16:39 -0700)
Clang on Mac wasn't inlining `ZSTD_storeSeq()` in level 1, which was
causing a 5% performance regression. This fixes it.

lib/compress/zstd_compress_internal.h

index e80686cca32fe6001e254f7b643a008f1d541829..42660e1e029e1294fe99db8001f179356acbc2b1 100644 (file)
@@ -361,7 +361,7 @@ static void ZSTD_safecopyLiterals(BYTE* op, BYTE const* ip, BYTE const* const ie
  *  `mlBase` : matchLength - MINMATCH
  *  Allowed to overread literals up to litLimit.
 */
-MEM_STATIC void ZSTD_storeSeq(seqStore_t* seqStorePtr, size_t litLength, const BYTE* literals, const BYTE* litLimit, U32 offCode, size_t mlBase)
+HINT_INLINE void ZSTD_storeSeq(seqStore_t* seqStorePtr, size_t litLength, const BYTE* literals, const BYTE* litLimit, U32 offCode, size_t mlBase)
 {
     BYTE const* const litLimit_w = litLimit - WILDCOPY_OVERLENGTH;
     BYTE const* const litEnd = literals + litLength;