From 54e2ed81050b3b943c104faea34cd82376df96f7 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Tue, 15 May 2012 09:52:35 -0700 Subject: [PATCH] Load cache sizes into R11_LP/R8_LP --- ChangeLog | 6 ++++++ sysdeps/x86_64/memcpy.S | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 51b0bd5..079b1a9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,11 @@ 2012-05-15 H.J. Lu + * sysdeps/x86_64/memcpy.S: Load __x86_64_data_cache_size_half + into R11_LP and load __x86_64_shared_cache_size_half into + R8_LP. + +2012-05-15 H.J. Lu + * sysdeps/x86_64/multiarch/memcmp-sse4.S: Load cache size into R8_LP. diff --git a/sysdeps/x86_64/memcpy.S b/sysdeps/x86_64/memcpy.S index d74e532..9e693f2 100644 --- a/sysdeps/x86_64/memcpy.S +++ b/sysdeps/x86_64/memcpy.S @@ -254,7 +254,7 @@ L(32after): L(fasttry): /* first 1/2 L1 */ #ifndef NOT_IN_libc /* only up to this algorithm outside of libc.so */ - movq __x86_64_data_cache_size_half(%rip), %r11 + mov __x86_64_data_cache_size_half(%rip), %R11_LP cmpq %rdx, %r11 /* calculate the smaller of */ cmovaq %rdx, %r11 /* remaining bytes and 1/2 L1 */ #endif @@ -303,7 +303,7 @@ L(fastafter): /* Handle large blocks smaller than 1/2 L2. */ L(pretry): /* first 1/2 L2 */ - movq __x86_64_shared_cache_size_half (%rip), %r8 + mov __x86_64_shared_cache_size_half (%rip), %R8_LP cmpq %rdx, %r8 /* calculate the lesser of */ cmovaq %rdx, %r8 /* remaining bytes and 1/2 L2 */ -- 2.7.4