summaryrefslogtreecommitdiffstats
path: root/src/codegen_sse.h
diff options
context:
space:
mode:
authorJukka Ojanen <jukka.ojanen@linkotec.net>2015-03-18 18:24:11 +0200
committerJukka Ojanen <jukka.ojanen@linkotec.net>2015-03-18 18:24:11 +0200
commitd8cbe74acac7a867777f407309421b8065705ebf (patch)
tree0dc245db14881b447207e561140c7fb20b1fe0af /src/codegen_sse.h
parent83e81fda3974152ce5ef04a0a22f15e079cff394 (diff)
downloadffts-d8cbe74acac7a867777f407309421b8065705ebf.zip
ffts-d8cbe74acac7a867777f407309421b8065705ebf.tar.gz
Minimize sin/cos calculations by calculating all factors ones and generate lookup tables by mapping
Diffstat (limited to 'src/codegen_sse.h')
-rw-r--r--src/codegen_sse.h9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/codegen_sse.h b/src/codegen_sse.h
index c518481..c0a34fe 100644
--- a/src/codegen_sse.h
+++ b/src/codegen_sse.h
@@ -38,7 +38,6 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include "arch/x64/x64-codegen.h"
#include <assert.h>
-#include <string.h>
static const FFTS_ALIGN(16) unsigned int sse_constants[20] = {
/* 0.0, -0.0, 0.0, -0.0 */
@@ -741,12 +740,12 @@ generate_leaf_eo(insns_t **fp, uint32_t *offsets)
insns_t *ins = *fp;
#ifdef _M_X64
- x64_sse_movaps_reg_memindex(ins, X64_XMM9, X64_RDX, offsets[0], X64_RAX, 2);
- x64_sse_movaps_reg_memindex(ins, X64_XMM7, X64_RDX, offsets[2], X64_RAX, 2);
+ x64_sse_movaps_reg_memindex(ins, X64_XMM9, X64_RDX, offsets[0], X64_RAX, 2);
+ x64_sse_movaps_reg_memindex(ins, X64_XMM7, X64_RDX, offsets[2], X64_RAX, 2);
x64_sse_movaps_reg_reg(ins, X64_XMM11, X64_XMM9);
- x64_sse_movaps_reg_memindex(ins, X64_XMM5, X64_RDX, offsets[3], X64_RAX, 2);
+ x64_sse_movaps_reg_memindex(ins, X64_XMM5, X64_RDX, offsets[3], X64_RAX, 2);
x64_sse_movaps_reg_reg(ins, X64_XMM6, X64_XMM7);
- x64_sse_movaps_reg_memindex(ins, X64_XMM4, X64_RDX, offsets[1], X64_RAX, 2);
+ x64_sse_movaps_reg_memindex(ins, X64_XMM4, X64_RDX, offsets[1], X64_RAX, 2);
x64_sse_subps_reg_reg(ins, X64_XMM7, X64_XMM5);
x64_sse_addps_reg_reg(ins, X64_XMM11, X64_XMM4);
x64_sse_subps_reg_reg(ins, X64_XMM9, X64_XMM4);
OpenPOWER on IntegriCloud