outPtr.lz4CompressBlockGreedyCore
private fn
size_t lz4CompressBlockGreedyCore(
const(ubyte) * srcPtr, size_t srcLen,
ubyte * outPtr, size_t maxOut,
uint * hashTblPtr, uint hashBits) nothrow @trusted @nogcCore greedy compression loop operating entirely on raw pointers.
Uses a malloc-allocated hash table (passed as a raw uint*) to keep the hot loop completely free of GC involvement — no safepoint polls, no bounds checking, no GC scanning of the table.
Parameters
srcPtr | Pointer to input data. |
srcLen | Length of input data in bytes. |
outPtr | Pointer to pre-allocated output buffer. |
maxOut | Capacity of the output buffer. |
hashTblPtr | Raw pointer to malloc'd hash table (filled with 0xFFFF_FFFF). |
hashBits | Number of hash bits (log2 of table size). |
Returns
Number of bytes written to