mirror of git://sourceware.org/git/glibc.git
Load cache sizes into R*_LP in memcpy-ssse3.S
This commit is contained in:
parent
6d2850e7f5
commit
9bc0b730a6
|
|
@ -1,3 +1,8 @@
|
||||||
|
2012-05-15 H.J. Lu <hongjiu.lu@intel.com>
|
||||||
|
|
||||||
|
* sysdeps/x86_64/multiarch/memcpy-ssse3.S: Load cache sizes
|
||||||
|
into R*_LP.
|
||||||
|
|
||||||
2012-05-15 H.J. Lu <hongjiu.lu@intel.com>
|
2012-05-15 H.J. Lu <hongjiu.lu@intel.com>
|
||||||
|
|
||||||
* sysdeps/x86_64/multiarch/memcpy-ssse3-back.S: Load cache
|
* sysdeps/x86_64/multiarch/memcpy-ssse3-back.S: Load cache
|
||||||
|
|
|
||||||
|
|
@ -97,9 +97,9 @@ L(80bytesormore):
|
||||||
sub %rcx, %rsi
|
sub %rcx, %rsi
|
||||||
|
|
||||||
#ifdef SHARED_CACHE_SIZE_HALF
|
#ifdef SHARED_CACHE_SIZE_HALF
|
||||||
mov $SHARED_CACHE_SIZE_HALF, %rcx
|
mov $SHARED_CACHE_SIZE_HALF, %RCX_LP
|
||||||
#else
|
#else
|
||||||
mov __x86_64_shared_cache_size_half(%rip), %rcx
|
mov __x86_64_shared_cache_size_half(%rip), %RCX_LP
|
||||||
#endif
|
#endif
|
||||||
cmp %rcx, %rdx
|
cmp %rcx, %rdx
|
||||||
mov %rsi, %r9
|
mov %rsi, %r9
|
||||||
|
|
@ -107,9 +107,9 @@ L(80bytesormore):
|
||||||
and $0xf, %r9
|
and $0xf, %r9
|
||||||
jz L(shl_0)
|
jz L(shl_0)
|
||||||
#ifdef DATA_CACHE_SIZE_HALF
|
#ifdef DATA_CACHE_SIZE_HALF
|
||||||
mov $DATA_CACHE_SIZE_HALF, %rcx
|
mov $DATA_CACHE_SIZE_HALF, %RCX_LP
|
||||||
#else
|
#else
|
||||||
mov __x86_64_data_cache_size_half(%rip), %rcx
|
mov __x86_64_data_cache_size_half(%rip), %RCX_LP
|
||||||
#endif
|
#endif
|
||||||
BRANCH_TO_JMPTBL_ENTRY (L(shl_table), %r9, 4)
|
BRANCH_TO_JMPTBL_ENTRY (L(shl_table), %r9, 4)
|
||||||
|
|
||||||
|
|
@ -127,9 +127,9 @@ L(copy_backward):
|
||||||
sub %rcx, %rsi
|
sub %rcx, %rsi
|
||||||
|
|
||||||
#ifdef SHARED_CACHE_SIZE_HALF
|
#ifdef SHARED_CACHE_SIZE_HALF
|
||||||
mov $SHARED_CACHE_SIZE_HALF, %rcx
|
mov $SHARED_CACHE_SIZE_HALF, %RCX_LP
|
||||||
#else
|
#else
|
||||||
mov __x86_64_shared_cache_size_half(%rip), %rcx
|
mov __x86_64_shared_cache_size_half(%rip), %RCX_LP
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
cmp %rcx, %rdx
|
cmp %rcx, %rdx
|
||||||
|
|
@ -138,9 +138,9 @@ L(copy_backward):
|
||||||
and $0xf, %r9
|
and $0xf, %r9
|
||||||
jz L(shl_0_bwd)
|
jz L(shl_0_bwd)
|
||||||
#ifdef DATA_CACHE_SIZE_HALF
|
#ifdef DATA_CACHE_SIZE_HALF
|
||||||
mov $DATA_CACHE_SIZE_HALF, %rcx
|
mov $DATA_CACHE_SIZE_HALF, %RCX_LP
|
||||||
#else
|
#else
|
||||||
mov __x86_64_data_cache_size_half(%rip), %rcx
|
mov __x86_64_data_cache_size_half(%rip), %RCX_LP
|
||||||
#endif
|
#endif
|
||||||
BRANCH_TO_JMPTBL_ENTRY (L(shl_table_bwd), %r9, 4)
|
BRANCH_TO_JMPTBL_ENTRY (L(shl_table_bwd), %r9, 4)
|
||||||
|
|
||||||
|
|
@ -175,9 +175,9 @@ L(shl_0_less_64bytes):
|
||||||
ALIGN (4)
|
ALIGN (4)
|
||||||
L(shl_0_gobble):
|
L(shl_0_gobble):
|
||||||
#ifdef DATA_CACHE_SIZE_HALF
|
#ifdef DATA_CACHE_SIZE_HALF
|
||||||
cmp $DATA_CACHE_SIZE_HALF, %rdx
|
cmp $DATA_CACHE_SIZE_HALF, %RDX_LP
|
||||||
#else
|
#else
|
||||||
cmp __x86_64_data_cache_size_half(%rip), %rdx
|
cmp __x86_64_data_cache_size_half(%rip), %RDX_LP
|
||||||
#endif
|
#endif
|
||||||
lea -128(%rdx), %rdx
|
lea -128(%rdx), %rdx
|
||||||
jae L(shl_0_gobble_mem_loop)
|
jae L(shl_0_gobble_mem_loop)
|
||||||
|
|
@ -316,9 +316,9 @@ L(shl_0_less_64bytes_bwd):
|
||||||
ALIGN (4)
|
ALIGN (4)
|
||||||
L(shl_0_gobble_bwd):
|
L(shl_0_gobble_bwd):
|
||||||
#ifdef DATA_CACHE_SIZE_HALF
|
#ifdef DATA_CACHE_SIZE_HALF
|
||||||
cmp $DATA_CACHE_SIZE_HALF, %rdx
|
cmp $DATA_CACHE_SIZE_HALF, %RDX_LP
|
||||||
#else
|
#else
|
||||||
cmp __x86_64_data_cache_size_half(%rip), %rdx
|
cmp __x86_64_data_cache_size_half(%rip), %RDX_LP
|
||||||
#endif
|
#endif
|
||||||
lea -128(%rdx), %rdx
|
lea -128(%rdx), %rdx
|
||||||
jae L(shl_0_gobble_mem_bwd_loop)
|
jae L(shl_0_gobble_mem_bwd_loop)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue