Add save/restore xmm registers in x86 assembly code
Went through the code and fixed it. Verified on Windows. Where possible, remove dependencies on xmm[67] Current code relies on pushing rbp to the stack to get 16 byte alignment. This broke when rbp wasn't pushed (vp8/encoder/x86/sad_sse3.asm). Work around this by using unaligned memory accesses. Revisit this and the offsets in vp8/encoder/x86/sad_sse3.asm in another change to SAVE_XMM. Change-Id: I5f940994d3ebfd977c3d68446cef20fd78b07877
Showing
- vp8/common/x86/idctllm_sse2.asm 27 additions, 23 deletionsvp8/common/x86/idctllm_sse2.asm
- vp8/common/x86/subpixel_ssse3.asm 12 additions, 0 deletionsvp8/common/x86/subpixel_ssse3.asm
- vp8/encoder/x86/dct_sse2.asm 2 additions, 0 deletionsvp8/encoder/x86/dct_sse2.asm
- vp8/encoder/x86/encodeopt.asm 42 additions, 40 deletionsvp8/encoder/x86/encodeopt.asm
- vp8/encoder/x86/sad_sse2.asm 10 additions, 8 deletionsvp8/encoder/x86/sad_sse2.asm
- vp8/encoder/x86/sad_sse3.asm 7 additions, 3 deletionsvp8/encoder/x86/sad_sse3.asm
- vp8/encoder/x86/sad_ssse3.asm 4 additions, 0 deletionsvp8/encoder/x86/sad_ssse3.asm
- vp8/encoder/x86/variance_impl_sse2.asm 12 additions, 0 deletionsvp8/encoder/x86/variance_impl_sse2.asm
- vpx_ports/x86_abi_support.asm 4 additions, 4 deletionsvpx_ports/x86_abi_support.asm
Loading
Please register or sign in to comment