From b0f067f94b89028e69dd7a387eeb6910baef0963 Mon Sep 17 00:00:00 2001 From: Pablo de Lara Date: Tue, 7 Jan 2025 20:33:19 +0000 Subject: [PATCH] mem: fix compilation with YASM Fixes #294. Signed-off-by: Pablo de Lara --- Release_notes.txt | 1 + mem/mem_multibinary.asm | 4 +++- mem/mem_zero_detect_avx2.asm | 4 ++++ mem/mem_zero_detect_avx512.asm | 4 ++++ 4 files changed, 12 insertions(+), 1 deletion(-) diff --git a/Release_notes.txt b/Release_notes.txt index d502825..0fb5905 100644 --- a/Release_notes.txt +++ b/Release_notes.txt @@ -26,6 +26,7 @@ v2.31.1 * Fixed spelling mistakes and typos. * Fixed Windows build on erasure code performance applications. * Fixed FreeBSD build warnings. +* Fixed compilation with YASM. v2.31 diff --git a/mem/mem_multibinary.asm b/mem/mem_multibinary.asm index 38765d6..7ecae76 100644 --- a/mem/mem_multibinary.asm +++ b/mem/mem_multibinary.asm @@ -33,7 +33,9 @@ default rel [bits 64] -extern mem_zero_detect_avx512 +%ifdef HAVE_AS_KNOWS_AVX512 + extern mem_zero_detect_avx512 +%endif extern mem_zero_detect_avx2 extern mem_zero_detect_avx extern mem_zero_detect_sse diff --git a/mem/mem_zero_detect_avx2.asm b/mem/mem_zero_detect_avx2.asm index b52774b..cc01992 100644 --- a/mem/mem_zero_detect_avx2.asm +++ b/mem/mem_zero_detect_avx2.asm @@ -67,8 +67,12 @@ %define tmp0 arg2 %define tmp1 arg3 +; Workaround for YASM +%ifdef HAVE_AS_KNOWS_AVX512 %use smartalign ALIGNMODE P6 +%endif + default rel [bits 64] diff --git a/mem/mem_zero_detect_avx512.asm b/mem/mem_zero_detect_avx512.asm index 20b6af0..15b2de4 100644 --- a/mem/mem_zero_detect_avx512.asm +++ b/mem/mem_zero_detect_avx512.asm @@ -29,6 +29,8 @@ %include "reg_sizes.asm" +%ifdef HAVE_AS_KNOWS_AVX512 + %ifidn __OUTPUT_FORMAT__, elf64 %define arg0 rdi %define arg1 rsi @@ -140,3 +142,5 @@ align 16 endproc_frame + +%endif ; ifdef HAVE_AS_KNOWS_AVX512