From c640bf1ea99d9598f8e3afc922567d8b3623d23e Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Wed, 2 Mar 2022 14:57:54 -0800 Subject: [PATCH] x86-64: Use RDX_LP on __x86_shared_non_temporal_threshold [BZ #25966] Since __x86_shared_non_temporal_threshold is defined as long int __x86_shared_non_temporal_threshold; and long int is 4 bytes for x32, use RDX_LP to compare against __x86_shared_non_temporal_threshold in assembly code. (cherry picked from commit 55c7bcc71b84123d5d4bd2814366a6b05fcf8ebd) --- sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S b/sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S index 71f5954d..673b73aa 100644 --- a/sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S +++ b/sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S @@ -245,7 +245,7 @@ L(return): #endif L(movsb): - cmpq __x86_shared_non_temporal_threshold(%rip), %rdx + cmp __x86_shared_non_temporal_threshold(%rip), %RDX_LP jae L(more_8x_vec) cmpq %rsi, %rdi jb 1f @@ -397,7 +397,7 @@ L(more_8x_vec): addq %r8, %rdx #if (defined USE_MULTIARCH || VEC_SIZE == 16) && IS_IN (libc) /* Check non-temporal store threshold. */ - cmpq __x86_shared_non_temporal_threshold(%rip), %rdx + cmp __x86_shared_non_temporal_threshold(%rip), %RDX_LP ja L(large_forward) #endif L(loop_4x_vec_forward): @@ -448,7 +448,7 @@ L(more_8x_vec_backward): subq %r8, %rdx #if (defined USE_MULTIARCH || VEC_SIZE == 16) && IS_IN (libc) /* Check non-temporal store threshold. */ - cmpq __x86_shared_non_temporal_threshold(%rip), %rdx + cmp __x86_shared_non_temporal_threshold(%rip), %RDX_LP ja L(large_backward) #endif L(loop_4x_vec_backward): -- GitLab