x86-64: Hide internal assembly functions
Hide x86-64 internal assembly functions. Before $ nm -D lib/libzstd.so.1 | grep usingDTable_internal_bmi2_asm_loop 00000000000c23c0 T _HUF_decompress4X1_usingDTable_internal_bmi2_asm_loop 00000000000c23c0 T HUF_decompress4X1_usingDTable_internal_bmi2_asm_loop 00000000000c283d T _HUF_decompress4X2_usingDTable_internal_bmi2_asm_loop 00000000000c283d T HUF_decompress4X2_usingDTable_internal_bmi2_asm_loop $ After $ nm -D lib/libzstd.so.1 | grep usingDTable_internal_bmi2_asm_loop $ This fixes issue #2990.
This commit is contained in:
@@ -65,6 +65,12 @@
|
|||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/* Mark the internal assembly functions as hidden */
|
||||||
|
#ifdef __ELF__
|
||||||
|
# define ZSTD_HIDE_ASM_FUNCTION(func) .hidden func
|
||||||
|
#else
|
||||||
|
# define ZSTD_HIDE_ASM_FUNCTION(func)
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Enable runtime BMI2 dispatch based on the CPU.
|
/* Enable runtime BMI2 dispatch based on the CPU.
|
||||||
* Enabled for clang & gcc >=4.8 on x86 when BMI2 isn't enabled by default.
|
* Enabled for clang & gcc >=4.8 on x86 when BMI2 isn't enabled by default.
|
||||||
|
|||||||
@@ -664,7 +664,7 @@ size_t HUF_decompress4X1_usingDTable_internal_default(void* dst, size_t dstSize,
|
|||||||
|
|
||||||
#if ZSTD_ENABLE_ASM_X86_64_BMI2
|
#if ZSTD_ENABLE_ASM_X86_64_BMI2
|
||||||
|
|
||||||
HUF_ASM_DECL void HUF_decompress4X1_usingDTable_internal_bmi2_asm_loop(HUF_DecompressAsmArgs* args);
|
HUF_ASM_DECL void HUF_decompress4X1_usingDTable_internal_bmi2_asm_loop(HUF_DecompressAsmArgs* args) ZSTDLIB_HIDDEN;
|
||||||
|
|
||||||
static HUF_ASM_X86_64_BMI2_ATTRS
|
static HUF_ASM_X86_64_BMI2_ATTRS
|
||||||
size_t
|
size_t
|
||||||
@@ -1380,7 +1380,7 @@ size_t HUF_decompress4X2_usingDTable_internal_default(void* dst, size_t dstSize,
|
|||||||
|
|
||||||
#if ZSTD_ENABLE_ASM_X86_64_BMI2
|
#if ZSTD_ENABLE_ASM_X86_64_BMI2
|
||||||
|
|
||||||
HUF_ASM_DECL void HUF_decompress4X2_usingDTable_internal_bmi2_asm_loop(HUF_DecompressAsmArgs* args);
|
HUF_ASM_DECL void HUF_decompress4X2_usingDTable_internal_bmi2_asm_loop(HUF_DecompressAsmArgs* args) ZSTDLIB_HIDDEN;
|
||||||
|
|
||||||
static HUF_ASM_X86_64_BMI2_ATTRS size_t
|
static HUF_ASM_X86_64_BMI2_ATTRS size_t
|
||||||
HUF_decompress4X2_usingDTable_internal_bmi2_asm(
|
HUF_decompress4X2_usingDTable_internal_bmi2_asm(
|
||||||
|
|||||||
@@ -30,6 +30,10 @@
|
|||||||
* TODO: Support Windows calling convention.
|
* TODO: Support Windows calling convention.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
ZSTD_HIDE_ASM_FUNCTION(HUF_decompress4X1_usingDTable_internal_bmi2_asm_loop)
|
||||||
|
ZSTD_HIDE_ASM_FUNCTION(HUF_decompress4X2_usingDTable_internal_bmi2_asm_loop)
|
||||||
|
ZSTD_HIDE_ASM_FUNCTION(_HUF_decompress4X2_usingDTable_internal_bmi2_asm_loop)
|
||||||
|
ZSTD_HIDE_ASM_FUNCTION(_HUF_decompress4X1_usingDTable_internal_bmi2_asm_loop)
|
||||||
.global HUF_decompress4X1_usingDTable_internal_bmi2_asm_loop
|
.global HUF_decompress4X1_usingDTable_internal_bmi2_asm_loop
|
||||||
.global HUF_decompress4X2_usingDTable_internal_bmi2_asm_loop
|
.global HUF_decompress4X2_usingDTable_internal_bmi2_asm_loop
|
||||||
.global _HUF_decompress4X1_usingDTable_internal_bmi2_asm_loop
|
.global _HUF_decompress4X1_usingDTable_internal_bmi2_asm_loop
|
||||||
|
|||||||
Reference in New Issue
Block a user