diff options
author | Steve Kondik <shade@chemlab.org> | 2011-09-29 16:26:00 -0700 |
---|---|---|
committer | Steve Kondik <shade@chemlab.org> | 2011-09-29 16:26:00 -0700 |
commit | 40d5df28bc4278d543697c960267ba3b5da74163 (patch) | |
tree | 4a1cae5501cb263d8b2fbd821ff0434bc7732809 /libc/arch-x86/string/sse2-memset5-atom.S | |
parent | 6ed844f1f2e3a53939b606011a76fb3e353a7a92 (diff) | |
parent | 50a83255d80f98b857c3f72dd2225d4bbc720ca3 (diff) | |
download | android_bionic-gingerbread-release.tar.gz android_bionic-gingerbread-release.tar.bz2 android_bionic-gingerbread-release.zip |
Merge branch 'gingerbread' of git://git.omapzoom.org/platform/bionic into 237cm-7.1.0gingerbread-release
Conflicts:
libc/Android.mk
libthread_db/Android.mk
Change-Id: I4a730f70bf3b31331ab9cee5f1a098d4162ef4b7
Diffstat (limited to 'libc/arch-x86/string/sse2-memset5-atom.S')
-rw-r--r-- | libc/arch-x86/string/sse2-memset5-atom.S | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/libc/arch-x86/string/sse2-memset5-atom.S b/libc/arch-x86/string/sse2-memset5-atom.S index 59a598c36..4b7f71bca 100644 --- a/libc/arch-x86/string/sse2-memset5-atom.S +++ b/libc/arch-x86/string/sse2-memset5-atom.S @@ -49,7 +49,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #endif #ifndef cfi_restore -# define cfi_restore(reg) .cfi_restore (reg) +# define cfi_restore(reg) .cfi_restore reg #endif #ifndef cfi_adjust_cfa_offset @@ -285,7 +285,6 @@ L(32bytesormore): pxor %xmm0, %xmm0 #else movd %eax, %xmm0 - punpcklbw %xmm0, %xmm0 pshufd $0, %xmm0, %xmm0 #endif testl $0xf, %edx @@ -329,14 +328,17 @@ L(128bytesormore): #ifdef DATA_CACHE_SIZE POP (%ebx) +# define RESTORE_EBX_STATE CFI_PUSH (%ebx) cmp $DATA_CACHE_SIZE, %ecx #else # ifdef SHARED +# define RESTORE_EBX_STATE call __i686.get_pc_thunk.bx add $_GLOBAL_OFFSET_TABLE_, %ebx cmp __x86_data_cache_size@GOTOFF(%ebx), %ecx # else POP (%ebx) +# define RESTORE_EBX_STATE CFI_PUSH (%ebx) cmp __x86_data_cache_size, %ecx # endif #endif @@ -370,7 +372,7 @@ L(128bytesormore_normal): jae L(128bytesormore_normal) L(128bytesless_normal): - lea 128(%ecx), %ecx + add $128, %ecx BRANCH_TO_JMPTBL_ENTRY (L(table_16_128bytes)) ALIGN (4) @@ -393,8 +395,13 @@ L(128bytes_L2_normal): L(128bytesless_L2_normal): BRANCH_TO_JMPTBL_ENTRY (L(table_16_128bytes)) + RESTORE_EBX_STATE L(128bytesormore_nt_start): sub %ebx, %ecx + mov %ebx, %eax + and $0x7f, %eax + add %eax, %ecx + movd %xmm0, %eax ALIGN (4) L(128bytesormore_shared_cache_loop): prefetcht0 0x3c0(%edx) |