forked from zlib-ng/zlib-ng
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Split CPU features checks and CPU-specific function prototypes and re…
…duce include-dependencies. Signed-off-by: Vladislav Shchapov <[email protected]>
- Loading branch information
Showing
37 changed files
with
265 additions
and
261 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
/* arm_functions.h -- ARM implementations for arch-specific functions. | ||
* For conditions of distribution and use, see copyright notice in zlib.h | ||
*/ | ||
|
||
#ifndef ARM_FUNCTIONS_H_ | ||
#define ARM_FUNCTIONS_H_ | ||
|
||
|
||
#ifdef ARM_NEON | ||
uint32_t adler32_neon(uint32_t adler, const uint8_t *buf, size_t len); | ||
uint32_t chunksize_neon(void); | ||
uint8_t* chunkmemset_safe_neon(uint8_t *out, unsigned dist, unsigned len, unsigned left); | ||
|
||
# ifdef HAVE_BUILTIN_CTZLL | ||
uint32_t compare256_neon(const uint8_t *src0, const uint8_t *src1); | ||
uint32_t longest_match_neon(deflate_state *const s, Pos cur_match); | ||
uint32_t longest_match_slow_neon(deflate_state *const s, Pos cur_match); | ||
# endif | ||
void slide_hash_neon(deflate_state *s); | ||
void inflate_fast_neon(PREFIX3(stream) *strm, uint32_t start); | ||
#endif | ||
|
||
#ifdef ARM_ACLE | ||
uint32_t crc32_acle(uint32_t crc, const uint8_t *buf, size_t len); | ||
|
||
void insert_string_acle(deflate_state *const s, const uint32_t str, uint32_t count); | ||
Pos quick_insert_string_acle(deflate_state *const s, const uint32_t str); | ||
uint32_t update_hash_acle(deflate_state *const s, uint32_t h, uint32_t val); | ||
#endif | ||
|
||
#ifdef ARM_SIMD | ||
void slide_hash_armv6(deflate_state *s); | ||
#endif | ||
|
||
#endif /* ARM_FUNCTIONS_H_ */ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -5,7 +5,6 @@ | |
|
||
#include "zbuild.h" | ||
#include "functable.h" | ||
#include "adler32_fold_c.h" | ||
|
||
#include <limits.h> | ||
|
||
|
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
/* power_functions.h -- POWER implementations for arch-specific functions. | ||
* Copyright (C) 2020 Matheus Castanho <[email protected]>, IBM | ||
* Copyright (C) 2021 Mika T. Lindqvist <[email protected]> | ||
* For conditions of distribution and use, see copyright notice in zlib.h | ||
*/ | ||
|
||
#ifndef POWER_FUNCTIONS_H_ | ||
#define POWER_FUNCTIONS_H_ | ||
|
||
#ifdef PPC_VMX | ||
uint32_t adler32_vmx(uint32_t adler, const uint8_t *buf, size_t len); | ||
void slide_hash_vmx(deflate_state *s); | ||
#endif | ||
|
||
#ifdef POWER8_VSX | ||
uint32_t adler32_power8(uint32_t adler, const uint8_t *buf, size_t len); | ||
uint32_t chunksize_power8(void); | ||
uint8_t* chunkmemset_safe_power8(uint8_t *out, unsigned dist, unsigned len, unsigned left); | ||
uint32_t crc32_power8(uint32_t crc, const uint8_t *buf, size_t len); | ||
void slide_hash_power8(deflate_state *s); | ||
void inflate_fast_power8(PREFIX3(stream) *strm, uint32_t start); | ||
#endif | ||
|
||
#ifdef POWER9 | ||
uint32_t compare256_power9(const uint8_t *src0, const uint8_t *src1); | ||
uint32_t longest_match_power9(deflate_state *const s, Pos cur_match); | ||
uint32_t longest_match_slow_power9(deflate_state *const s, Pos cur_match); | ||
#endif | ||
|
||
#endif /* POWER_FUNCTIONS_H_ */ |
Oops, something went wrong.