From 17546f47b6927c21fe50ce5e784f2f4952d69473 Mon Sep 17 00:00:00 2001 From: Greg Zharun Date: Thu, 16 Apr 2015 12:18:31 +0300 Subject: [Summary] Fixed bug in Ardour SSE assembler function. Wrong register was decreased in LP_SSE: block of float x86_sse_compute_peak function [Details] This bug does not show up when buffers are 16 byte aligned, but when they are not - this bug will lead to crash. I tested all these functions with non-aligned buffers as well as long they do handle the situation with unaligned buffers. [To be reviewed by] Paul Davis --- libs/ardour/sse_functions_64bit_win.s | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'libs/ardour/sse_functions_64bit_win.s') diff --git a/libs/ardour/sse_functions_64bit_win.s b/libs/ardour/sse_functions_64bit_win.s index 7a50c9aef5..78c50930c2 100644 --- a/libs/ardour/sse_functions_64bit_win.s +++ b/libs/ardour/sse_functions_64bit_win.s @@ -629,7 +629,7 @@ x86_sse_compute_peak: addq $16, %rdi - subq $4, %rdx #; nframes-=4 + subq $4, %rcx #; nframes-=4 decq %rax jnz .LP_SSE -- cgit v1.2.3