coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
lz4_wrapper.c File Reference
#include <commonlib/bsd/compression.h>
#include <commonlib/bsd/helpers.h>
#include <commonlib/bsd/sysincludes.h>
#include <stdint.h>
#include <string.h>
#include "lz4.c.inc"
Include dependency graph for lz4_wrapper.c:

Go to the source code of this file.

Data Structures

struct  lz4_frame_header
 
struct  lz4_block_header
 

Macros

#define FORCE_INLINE   static __always_inline
 
#define likely(expr)   __builtin_expect((expr) != 0, 1)
 
#define unlikely(expr)   __builtin_expect((expr) != 0, 0)
 
#define LZ4F_MAGICNUMBER   0x184D2204
 
#define RESERVED0   0x03
 
#define HAS_CONTENT_CHECKSUM   0x04
 
#define HAS_CONTENT_SIZE   0x08
 
#define HAS_BLOCK_CHECKSUM   0x10
 
#define INDEPENDENT_BLOCKS   0x20
 
#define VERSION   0xC0
 
#define VERSION_SHIFT   6
 
#define RESERVED1_2   0x8F
 
#define MAX_BLOCK_SIZE   0x70
 
#define BH_SIZE   0x7FFFFFFF
 
#define NOT_COMPRESSED   0x80000000
 

Typedefs

typedef uint8_t BYTE
 
typedef uint16_t U16
 
typedef uint32_t U32
 
typedef int32_t S32
 
typedef uint64_t U64
 

Functions

static uint16_t LZ4_readLE16 (const void *src)
 
static void LZ4_copy8 (void *dst, const void *src)
 
size_t ulz4fn (const void *src, size_t srcn, void *dst, size_t dstn)
 
size_t ulz4f (const void *src, void *dst)
 

Variables

struct lz4_frame_header __packed
 

Macro Definition Documentation

◆ BH_SIZE

#define BH_SIZE   0x7FFFFFFF

Definition at line 87 of file lz4_wrapper.c.

◆ FORCE_INLINE

#define FORCE_INLINE   static __always_inline

Definition at line 57 of file lz4_wrapper.c.

◆ HAS_BLOCK_CHECKSUM

#define HAS_BLOCK_CHECKSUM   0x10

Definition at line 71 of file lz4_wrapper.c.

◆ HAS_CONTENT_CHECKSUM

#define HAS_CONTENT_CHECKSUM   0x04

Definition at line 69 of file lz4_wrapper.c.

◆ HAS_CONTENT_SIZE

#define HAS_CONTENT_SIZE   0x08

Definition at line 70 of file lz4_wrapper.c.

◆ INDEPENDENT_BLOCKS

#define INDEPENDENT_BLOCKS   0x20

Definition at line 72 of file lz4_wrapper.c.

◆ likely

#define likely (   expr)    __builtin_expect((expr) != 0, 1)

Definition at line 58 of file lz4_wrapper.c.

◆ LZ4F_MAGICNUMBER

#define LZ4F_MAGICNUMBER   0x184D2204

Definition at line 64 of file lz4_wrapper.c.

◆ MAX_BLOCK_SIZE

#define MAX_BLOCK_SIZE   0x70

Definition at line 77 of file lz4_wrapper.c.

◆ NOT_COMPRESSED

#define NOT_COMPRESSED   0x80000000

Definition at line 88 of file lz4_wrapper.c.

◆ RESERVED0

#define RESERVED0   0x03

Definition at line 68 of file lz4_wrapper.c.

◆ RESERVED1_2

#define RESERVED1_2   0x8F

Definition at line 76 of file lz4_wrapper.c.

◆ unlikely

#define unlikely (   expr)    __builtin_expect((expr) != 0, 0)

Definition at line 59 of file lz4_wrapper.c.

◆ VERSION

#define VERSION   0xC0

Definition at line 73 of file lz4_wrapper.c.

◆ VERSION_SHIFT

#define VERSION_SHIFT   6

Definition at line 74 of file lz4_wrapper.c.

Typedef Documentation

◆ BYTE

typedef uint8_t BYTE

Definition at line 51 of file lz4_wrapper.c.

◆ S32

typedef int32_t S32

Definition at line 54 of file lz4_wrapper.c.

◆ U16

typedef uint16_t U16

Definition at line 52 of file lz4_wrapper.c.

◆ U32

typedef uint32_t U32

Definition at line 53 of file lz4_wrapper.c.

◆ U64

typedef uint64_t U64

Definition at line 55 of file lz4_wrapper.c.

Function Documentation

◆ LZ4_copy8()

static void LZ4_copy8 ( void dst,
const void src 
)
static

Definition at line 17 of file lz4_wrapper.c.

◆ LZ4_readLE16()

static uint16_t LZ4_readLE16 ( const void src)
static

Definition at line 13 of file lz4_wrapper.c.

References le16toh().

Here is the call graph for this function:

◆ ulz4f()

size_t ulz4f ( const void src,
void dst 
)

Definition at line 167 of file lz4_wrapper.c.

References GiB, and ulz4fn().

Referenced by main().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ulz4fn()

Variable Documentation

◆ __packed