Branch/Call/Jump conversion filters.  
More...
|  | 
| #define | LZMA_FILTER_X86   LZMA_VLI_C(0x04) | 
|  | Filter for x86 binaries. 
 | 
|  | 
| #define | LZMA_FILTER_POWERPC   LZMA_VLI_C(0x05) | 
|  | Filter for Big endian PowerPC binaries. 
 | 
|  | 
| #define | LZMA_FILTER_IA64   LZMA_VLI_C(0x06) | 
|  | Filter for IA-64 (Itanium) binaries. 
 | 
|  | 
| #define | LZMA_FILTER_ARM   LZMA_VLI_C(0x07) | 
|  | Filter for ARM binaries. 
 | 
|  | 
| #define | LZMA_FILTER_ARMTHUMB   LZMA_VLI_C(0x08) | 
|  | Filter for ARM-Thumb binaries. 
 | 
|  | 
| #define | LZMA_FILTER_SPARC   LZMA_VLI_C(0x09) | 
|  | Filter for SPARC binaries. 
 | 
|  | 
| #define | LZMA_FILTER_ARM64   LZMA_VLI_C(0x0A) | 
|  | Filter for ARM64 binaries. 
 | 
|  | 
| #define | LZMA_FILTER_RISCV   LZMA_VLI_C(0x0B) | 
|  | Filter for RISC-V binaries. 
 | 
|  | 
|  | 
| size_t | lzma_bcj_arm64_encode (uint32_t start_offset, uint8_t *buf, size_t size) lzma_nothrow | 
|  | Raw ARM64 BCJ encoder. 
 | 
|  | 
| size_t | lzma_bcj_arm64_decode (uint32_t start_offset, uint8_t *buf, size_t size) lzma_nothrow | 
|  | Raw ARM64 BCJ decoder. 
 | 
|  | 
| size_t | lzma_bcj_riscv_encode (uint32_t start_offset, uint8_t *buf, size_t size) lzma_nothrow | 
|  | Raw RISC-V BCJ encoder. 
 | 
|  | 
| size_t | lzma_bcj_riscv_decode (uint32_t start_offset, uint8_t *buf, size_t size) lzma_nothrow | 
|  | Raw RISC-V BCJ decoder. 
 | 
|  | 
| size_t | lzma_bcj_x86_encode (uint32_t start_offset, uint8_t *buf, size_t size) lzma_nothrow | 
|  | Raw x86 BCJ encoder. 
 | 
|  | 
| size_t | lzma_bcj_x86_decode (uint32_t start_offset, uint8_t *buf, size_t size) lzma_nothrow | 
|  | Raw x86 BCJ decoder. 
 | 
|  | 
Branch/Call/Jump conversion filters. 
- Note
- Never include this file directly. Use <lzma.h> instead. 
◆ lzma_bcj_arm64_encode()
  
  | 
        
          | size_t lzma_bcj_arm64_encode | ( | uint32_t | start_offset, |  
          |  |  | uint8_t * | buf, |  
          |  |  | size_t | size ) |  | extern | 
 
Raw ARM64 BCJ encoder. 
This is for special use cases only.
- Parameters
- 
  
    | start_offset | The lowest 32 bits of the offset in the executable being filtered. For the ARM64 filter, this must be a multiple of four. For the very best results, this should also be in sync with 4096-byte page boundaries in the executable due to how ARM64's ADRP instruction works. |  | buf | Buffer to be filtered in place |  | size | Size of the buffer |  
 
- Returns
- Number of bytes that were processed in buf. This is at mostsize. With the ARM64 filter, the return value is always a multiple of 4, and at most 3 bytes are left unfiltered.
- Since
- 5.7.1alpha 
 
 
◆ lzma_bcj_arm64_decode()
  
  | 
        
          | size_t lzma_bcj_arm64_decode | ( | uint32_t | start_offset, |  
          |  |  | uint8_t * | buf, |  
          |  |  | size_t | size ) |  | extern | 
 
 
◆ lzma_bcj_riscv_encode()
  
  | 
        
          | size_t lzma_bcj_riscv_encode | ( | uint32_t | start_offset, |  
          |  |  | uint8_t * | buf, |  
          |  |  | size_t | size ) |  | extern | 
 
Raw RISC-V BCJ encoder. 
This is for special use cases only.
- Parameters
- 
  
    | start_offset | The lowest 32 bits of the offset in the executable being filtered. For the RISC-V filter, this must be a multiple of 2. |  | buf | Buffer to be filtered in place |  | size | Size of the buffer |  
 
- Returns
- Number of bytes that were processed in buf. This is at mostsize. With the RISC-V filter, the return value is always a multiple of 2, and at most 7 bytes are left unfiltered.
- Since
- 5.7.1alpha 
 
 
◆ lzma_bcj_riscv_decode()
  
  | 
        
          | size_t lzma_bcj_riscv_decode | ( | uint32_t | start_offset, |  
          |  |  | uint8_t * | buf, |  
          |  |  | size_t | size ) |  | extern | 
 
 
◆ lzma_bcj_x86_encode()
  
  | 
        
          | size_t lzma_bcj_x86_encode | ( | uint32_t | start_offset, |  
          |  |  | uint8_t * | buf, |  
          |  |  | size_t | size ) |  | extern | 
 
Raw x86 BCJ encoder. 
This is for special use cases only.
- Parameters
- 
  
    | start_offset | The lowest 32 bits of the offset in the executable being filtered. For the x86 filter, all values are valid. |  | buf | Buffer to be filtered in place |  | size | Size of the buffer |  
 
- Returns
- Number of bytes that were processed in buf. This is at mostsize. For the x86 filter, the return value is always a multiple of 1, and at most 4 bytes are left unfiltered.
- Since
- 5.7.1alpha 
 
 
◆ lzma_bcj_x86_decode()
  
  | 
        
          | size_t lzma_bcj_x86_decode | ( | uint32_t | start_offset, |  
          |  |  | uint8_t * | buf, |  
          |  |  | size_t | size ) |  | extern |