;
; jfdctfst.asm - fast integer FDCT (SSE2)
;
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
;
; Based on
; x86 SIMD extension for IJG JPEG library
; Copyright (C) 1999-2006, MIYASAKA Masaru.
; For conditions of distribution and use, see copyright notice in jsimdext.inc
;
; This file should be assembled with NASM (Netwide Assembler),
; can *not* be assembled with Microsoft's MASM or any compatible
; assembler (including Borland's Turbo Assembler).
; NASM is available from http://nasm.sourceforge.net/ or
; http://sourceforge.net/project/showfiles.php?group_id=6208
;
; This file contains a fast, not so accurate integer implementation of
; the forward DCT (Discrete Cosine Transform). The following code is
; based directly on the IJG's original jfdctfst.c; see the jfdctfst.c
; for more details.
;
; [TAB8]

%include "jsimdext.inc"
%include "jdct.inc"

; --------------------------------------------------------------------------

%define CONST_BITS      8       ; 14 is also OK.

%if CONST_BITS == 8
F_0_382 equ      98             ; FIX(0.382683433)
F_0_541 equ     139             ; FIX(0.541196100)
F_0_707 equ     181             ; FIX(0.707106781)
F_1_306 equ     334             ; FIX(1.306562965)
%else
; NASM cannot do compile-time arithmetic on floating-point constants.
%define DESCALE(x,n)  (((x)+(1<<((n)-1)))>>(n))
F_0_382 equ     DESCALE( 410903207,30-CONST_BITS)       ; FIX(0.382683433)
F_0_541 equ     DESCALE( 581104887,30-CONST_BITS)       ; FIX(0.541196100)
F_0_707 equ     DESCALE( 759250124,30-CONST_BITS)       ; FIX(0.707106781)
F_1_306 equ     DESCALE(1402911301,30-CONST_BITS)       ; FIX(1.306562965)
%endif

; --------------------------------------------------------------------------
        SECTION SEG_CONST

; PRE_MULTIPLY_SCALE_BITS <= 2 (to avoid overflow)
; CONST_BITS + CONST_SHIFT + PRE_MULTIPLY_SCALE_BITS == 16 (for pmulhw)

%define PRE_MULTIPLY_SCALE_BITS   2
%define CONST_SHIFT     (16 - PRE_MULTIPLY_SCALE_BITS - CONST_BITS)

        alignz  16
        global  EXTN(jconst_fdct_ifast_sse2)

EXTN(jconst_fdct_ifast_sse2):

PW_F0707        times 8 dw  F_0_707 << CONST_SHIFT
PW_F0382        times 8 dw  F_0_382 << CONST_SHIFT
PW_F0541        times 8 dw  F_0_541 << CONST_SHIFT
PW_F1306        times 8 dw  F_1_306 << CONST_SHIFT

        alignz  16

; --------------------------------------------------------------------------
        SECTION SEG_TEXT
        BITS    32
;
; Perform the forward DCT on one block of samples.
;
; GLOBAL(void)
; jsimd_fdct_ifast_sse2 (DCTELEM *data)
;

%define data(b)         (b)+8           ; DCTELEM *data

%define original_ebp    ebp+0
%define wk(i)           ebp-(WK_NUM-(i))*SIZEOF_XMMWORD ; xmmword wk[WK_NUM]
%define WK_NUM          2

        align   16
        global  EXTN(jsimd_fdct_ifast_sse2)

EXTN(jsimd_fdct_ifast_sse2):
        push    ebp
        mov     eax,esp                         ; eax = original ebp
        sub     esp, byte 4
        and     esp, byte (-SIZEOF_XMMWORD)     ; align to 128 bits
        mov     [esp],eax
        mov     ebp,esp                         ; ebp = aligned ebp
        lea     esp, [wk(0)]
        pushpic ebx
;       push    ecx             ; unused
;       push    edx             ; need not be preserved
;       push    esi             ; unused
;       push    edi             ; unused

        get_GOT ebx             ; get GOT address

        ; ---- Pass 1: process rows.

        mov     edx, POINTER [data(eax)]        ; (DCTELEM *)

        movdqa  xmm0, XMMWORD [XMMBLOCK(0,0,edx,SIZEOF_DCTELEM)]
        movdqa  xmm1, XMMWORD [XMMBLOCK(1,0,edx,SIZEOF_DCTELEM)]
        movdqa  xmm2, XMMWORD [XMMBLOCK(2,0,edx,SIZEOF_DCTELEM)]
        movdqa  xmm3, XMMWORD [XMMBLOCK(3,0,edx,SIZEOF_DCTELEM)]

        ; xmm0=(00 01 02 03 04 05 06 07), xmm2=(20 21 22 23 24 25 26 27)
        ; xmm1=(10 11 12 13 14 15 16 17), xmm3=(30 31 32 33 34 35 36 37)

        movdqa    xmm4,xmm0             ; transpose coefficients(phase 1)
        punpcklwd xmm0,xmm1             ; xmm0=(00 10 01 11 02 12 03 13)
        punpckhwd xmm4,xmm1             ; xmm4=(04 14 05 15 06 16 07 17)
        movdqa    xmm5,xmm2             ; transpose coefficients(phase 1)
        punpcklwd xmm2,xmm3             ; xmm2=(20 30 21 31 22 32 23 33)
        punpckhwd xmm5,xmm3             ; xmm5=(24 34 25 35 26 36 27 37)

        movdqa  xmm6, XMMWORD [XMMBLOCK(4,0,edx,SIZEOF_DCTELEM)]
        movdqa  xmm7, XMMWORD [XMMBLOCK(5,0,edx,SIZEOF_DCTELEM)]
        movdqa  xmm1, XMMWORD [XMMBLOCK(6,0,edx,SIZEOF_DCTELEM)]
        movdqa  xmm3, XMMWORD [XMMBLOCK(7,0,edx,SIZEOF_DCTELEM)]

        ; xmm6=( 4 12 20 28 36 44 52 60), xmm1=( 6 14 22 30 38 46 54 62)
        ; xmm7=( 5 13 21 29 37 45 53 61), xmm3=( 7 15 23 31 39 47 55 63)

        movdqa  XMMWORD [wk(0)], xmm2   ; wk(0)=(20 30 21 31 22 32 23 33)
        movdqa  XMMWORD [wk(1)], xmm5   ; wk(1)=(24 34 25 35 26 36 27 37)

        movdqa    xmm2,xmm6             ; transpose coefficients(phase 1)
        punpcklwd xmm6,xmm7             ; xmm6=(40 50 41 51 42 52 43 53)
        punpckhwd xmm2,xmm7             ; xmm2=(44 54 45 55 46 56 47 57)
        movdqa    xmm5,xmm1             ; transpose coefficients(phase 1)
        punpcklwd xmm1,xmm3             ; xmm1=(60 70 61 71 62 72 63 73)
        punpckhwd xmm5,xmm3             ; xmm5=(64 74 65 75 66 76 67 77)

        movdqa    xmm7,xmm6             ; transpose coefficients(phase 2)
        punpckldq xmm6,xmm1             ; xmm6=(40 50 60 70 41 51 61 71)
        punpckhdq xmm7,xmm1             ; xmm7=(42 52 62 72 43 53 63 73)
        movdqa    xmm3,xmm2             ; transpose coefficients(phase 2)
        punpckldq xmm2,xmm5             ; xmm2=(44 54 64 74 45 55 65 75)
        punpckhdq xmm3,xmm5             ; xmm3=(46 56 66 76 47 57 67 77)

        movdqa  xmm1, XMMWORD [wk(0)]   ; xmm1=(20 30 21 31 22 32 23 33)
        movdqa  xmm5, XMMWORD [wk(1)]   ; xmm5=(24 34 25 35 26 36 27 37)
        movdqa  XMMWORD [wk(0)], xmm7   ; wk(0)=(42 52 62 72 43 53 63 73)
        movdqa  XMMWORD [wk(1)], xmm2   ; wk(1)=(44 54 64 74 45 55 65 75)

        movdqa    xmm7,xmm0             ; transpose coefficients(phase 2)
        punpckldq xmm0,xmm1             ; xmm0=(00 10 20 30 01 11 21 31)
        punpckhdq xmm7,xmm1             ; xmm7=(02 12 22 32 03 13 23 33)
        movdqa    xmm2,xmm4             ; transpose coefficients(phase 2)
        punpckldq xmm4,xmm5             ; xmm4=(04 14 24 34 05 15 25 35)
        punpckhdq xmm2,xmm5             ; xmm2=(06 16 26 36 07 17 27 37)

        movdqa     xmm1,xmm0            ; transpose coefficients(phase 3)
        punpcklqdq xmm0,xmm6            ; xmm0=(00 10 20 30 40 50 60 70)=data0
        punpckhqdq xmm1,xmm6            ; xmm1=(01 11 21 31 41 51 61 71)=data1
        movdqa     xmm5,xmm2            ; transpose coefficients(phase 3)
        punpcklqdq xmm2,xmm3            ; xmm2=(06 16 26 36 46 56 66 76)=data6
        punpckhqdq xmm5,xmm3            ; xmm5=(07 17 27 37 47 57 67 77)=data7

        movdqa  xmm6,xmm1
        movdqa  xmm3,xmm0
        psubw   xmm1,xmm2               ; xmm1=data1-data6=tmp6
        psubw   xmm0,xmm5               ; xmm0=data0-data7=tmp7
        paddw   xmm6,xmm2               ; xmm6=data1+data6=tmp1
        paddw   xmm3,xmm5               ; xmm3=data0+data7=tmp0

        movdqa  xmm2, XMMWORD [wk(0)]   ; xmm2=(42 52 62 72 43 53 63 73)
        movdqa  xmm5, XMMWORD [wk(1)]   ; xmm5=(44 54 64 74 45 55 65 75)
        movdqa  XMMWORD [wk(0)], xmm1   ; wk(0)=tmp6
        movdqa  XMMWORD [wk(1)], xmm0   ; wk(1)=tmp7

        movdqa     xmm1,xmm7            ; transpose coefficients(phase 3)
        punpcklqdq xmm7,xmm2            ; xmm7=(02 12 22 32 42 52 62 72)=data2
        punpckhqdq xmm1,xmm2            ; xmm1=(03 13 23 33 43 53 63 73)=data3
        movdqa     xmm0,xmm4            ; transpose coefficients(phase 3)
        punpcklqdq xmm4,xmm5            ; xmm4=(04 14 24 34 44 54 64 74)=data4
        punpckhqdq xmm0,xmm5            ; xmm0=(05 15 25 35 45 55 65 75)=data5

        movdqa  xmm2,xmm1
        movdqa  xmm5,xmm7
        paddw   xmm1,xmm4               ; xmm1=data3+data4=tmp3
        paddw   xmm7,xmm0               ; xmm7=data2+data5=tmp2
        psubw   xmm2,xmm4               ; xmm2=data3-data4=tmp4
        psubw   xmm5,xmm0               ; xmm5=data2-data5=tmp5

        ; -- Even part

        movdqa  xmm4,xmm3
        movdqa  xmm0,xmm6
        psubw   xmm3,xmm1               ; xmm3=tmp13
        psubw   xmm6,xmm7               ; xmm6=tmp12
        paddw   xmm4,xmm1               ; xmm4=tmp10
        paddw   xmm0,xmm7               ; xmm0=tmp11

        paddw   xmm6,xmm3
        psllw   xmm6,PRE_MULTIPLY_SCALE_BITS
        pmulhw  xmm6,[GOTOFF(ebx,PW_F0707)] ; xmm6=z1

        movdqa  xmm1,xmm4
        movdqa  xmm7,xmm3
        psubw   xmm4,xmm0               ; xmm4=data4
        psubw   xmm3,xmm6               ; xmm3=data6
        paddw   xmm1,xmm0               ; xmm1=data0
        paddw   xmm7,xmm6               ; xmm7=data2

        movdqa  xmm0, XMMWORD [wk(0)]   ; xmm0=tmp6
        movdqa  xmm6, XMMWORD [wk(1)]   ; xmm6=tmp7
        movdqa  XMMWORD [wk(0)], xmm4   ; wk(0)=data4
        movdqa  XMMWORD [wk(1)], xmm3   ; wk(1)=data6

        ; -- Odd part

        paddw   xmm2,xmm5               ; xmm2=tmp10
        paddw   xmm5,xmm0               ; xmm5=tmp11
        paddw   xmm0,xmm6               ; xmm0=tmp12, xmm6=tmp7

        psllw   xmm2,PRE_MULTIPLY_SCALE_BITS
        psllw   xmm0,PRE_MULTIPLY_SCALE_BITS

        psllw   xmm5,PRE_MULTIPLY_SCALE_BITS
        pmulhw  xmm5,[GOTOFF(ebx,PW_F0707)] ; xmm5=z3

        movdqa  xmm4,xmm2               ; xmm4=tmp10
        psubw   xmm2,xmm0
        pmulhw  xmm2,[GOTOFF(ebx,PW_F0382)] ; xmm2=z5
        pmulhw  xmm4,[GOTOFF(ebx,PW_F0541)] ; xmm4=MULTIPLY(tmp10,FIX_0_541196)
        pmulhw  xmm0,[GOTOFF(ebx,PW_F1306)] ; xmm0=MULTIPLY(tmp12,FIX_1_306562)
        paddw   xmm4,xmm2               ; xmm4=z2
        paddw   xmm0,xmm2               ; xmm0=z4

        movdqa  xmm3,xmm6
        psubw   xmm6,xmm5               ; xmm6=z13
        paddw   xmm3,xmm5               ; xmm3=z11

        movdqa  xmm2,xmm6
        movdqa  xmm5,xmm3
        psubw   xmm6,xmm4               ; xmm6=data3
        psubw   xmm3,xmm0               ; xmm3=data7
        paddw   xmm2,xmm4               ; xmm2=data5
        paddw   xmm5,xmm0               ; xmm5=data1

        ; ---- Pass 2: process columns.

;       mov     edx, POINTER [data(eax)]        ; (DCTELEM *)

        ; xmm1=(00 10 20 30 40 50 60 70), xmm7=(02 12 22 32 42 52 62 72)
        ; xmm5=(01 11 21 31 41 51 61 71), xmm6=(03 13 23 33 43 53 63 73)

        movdqa    xmm4,xmm1             ; transpose coefficients(phase 1)
        punpcklwd xmm1,xmm5             ; xmm1=(00 01 10 11 20 21 30 31)
        punpckhwd xmm4,xmm5             ; xmm4=(40 41 50 51 60 61 70 71)
        movdqa    xmm0,xmm7             ; transpose coefficients(phase 1)
        punpcklwd xmm7,xmm6             ; xmm7=(02 03 12 13 22 23 32 33)
        punpckhwd xmm0,xmm6             ; xmm0=(42 43 52 53 62 63 72 73)

        movdqa  xmm5, XMMWORD [wk(0)]   ; xmm5=col4
        movdqa  xmm6, XMMWORD [wk(1)]   ; xmm6=col6

        ; xmm5=(04 14 24 34 44 54 64 74), xmm6=(06 16 26 36 46 56 66 76)
        ; xmm2=(05 15 25 35 45 55 65 75), xmm3=(07 17 27 37 47 57 67 77)

        movdqa  XMMWORD [wk(0)], xmm7   ; wk(0)=(02 03 12 13 22 23 32 33)
        movdqa  XMMWORD [wk(1)], xmm0   ; wk(1)=(42 43 52 53 62 63 72 73)

        movdqa    xmm7,xmm5             ; transpose coefficients(phase 1)
        punpcklwd xmm5,xmm2             ; xmm5=(04 05 14 15 24 25 34 35)
        punpckhwd xmm7,xmm2             ; xmm7=(44 45 54 55 64 65 74 75)
        movdqa    xmm0,xmm6             ; transpose coefficients(phase 1)
        punpcklwd xmm6,xmm3             ; xmm6=(06 07 16 17 26 27 36 37)
        punpckhwd xmm0,xmm3             ; xmm0=(46 47 56 57 66 67 76 77)

        movdqa    xmm2,xmm5             ; transpose coefficients(phase 2)
        punpckldq xmm5,xmm6             ; xmm5=(04 05 06 07 14 15 16 17)
        punpckhdq xmm2,xmm6             ; xmm2=(24 25 26 27 34 35 36 37)
        movdqa    xmm3,xmm7             ; transpose coefficients(phase 2)
        punpckldq xmm7,xmm0             ; xmm7=(44 45 46 47 54 55 56 57)
        punpckhdq xmm3,xmm0             ; xmm3=(64 65 66 67 74 75 76 77)

        movdqa  xmm6, XMMWORD [wk(0)]   ; xmm6=(02 03 12 13 22 23 32 33)
        movdqa  xmm0, XMMWORD [wk(1)]   ; xmm0=(42 43 52 53 62 63 72 73)
        movdqa  XMMWORD [wk(0)], xmm2   ; wk(0)=(24 25 26 27 34 35 36 37)
        movdqa  XMMWORD [wk(1)], xmm7   ; wk(1)=(44 45 46 47 54 55 56 57)

        movdqa    xmm2,xmm1             ; transpose coefficients(phase 2)
        punpckldq xmm1,xmm6             ; xmm1=(00 01 02 03 10 11 12 13)
        punpckhdq xmm2,xmm6             ; xmm2=(20 21 22 23 30 31 32 33)
        movdqa    xmm7,xmm4             ; transpose coefficients(phase 2)
        punpckldq xmm4,xmm0             ; xmm4=(40 41 42 43 50 51 52 53)
        punpckhdq xmm7,xmm0             ; xmm7=(60 61 62 63 70 71 72 73)

        movdqa     xmm6,xmm1            ; transpose coefficients(phase 3)
        punpcklqdq xmm1,xmm5            ; xmm1=(00 01 02 03 04 05 06 07)=data0
        punpckhqdq xmm6,xmm5            ; xmm6=(10 11 12 13 14 15 16 17)=data1
        movdqa     xmm0,xmm7            ; transpose coefficients(phase 3)
        punpcklqdq xmm7,xmm3            ; xmm7=(60 61 62 63 64 65 66 67)=data6
        punpckhqdq xmm0,xmm3            ; xmm0=(70 71 72 73 74 75 76 77)=data7

        movdqa  xmm5,xmm6
        movdqa  xmm3,xmm1
        psubw   xmm6,xmm7               ; xmm6=data1-data6=tmp6
        psubw   xmm1,xmm0               ; xmm1=data0-data7=tmp7
        paddw   xmm5,xmm7               ; xmm5=data1+data6=tmp1
        paddw   xmm3,xmm0               ; xmm3=data0+data7=tmp0

        movdqa  xmm7, XMMWORD [wk(0)]   ; xmm7=(24 25 26 27 34 35 36 37)
        movdqa  xmm0, XMMWORD [wk(1)]   ; xmm0=(44 45 46 47 54 55 56 57)
        movdqa  XMMWORD [wk(0)], xmm6   ; wk(0)=tmp6
        movdqa  XMMWORD [wk(1)], xmm1   ; wk(1)=tmp7

        movdqa     xmm6,xmm2            ; transpose coefficients(phase 3)
        punpcklqdq xmm2,xmm7            ; xmm2=(20 21 22 23 24 25 26 27)=data2
        punpckhqdq xmm6,xmm7            ; xmm6=(30 31 32 33 34 35 36 37)=data3
        movdqa     xmm1,xmm4            ; transpose coefficients(phase 3)
        punpcklqdq xmm4,xmm0            ; xmm4=(40 41 42 43 44 45 46 47)=data4
        punpckhqdq xmm1,xmm0            ; xmm1=(50 51 52 53 54 55 56 57)=data5

        movdqa  xmm7,xmm6
        movdqa  xmm0,xmm2
        paddw   xmm6,xmm4               ; xmm6=data3+data4=tmp3
        paddw   xmm2,xmm1               ; xmm2=data2+data5=tmp2
        psubw   xmm7,xmm4               ; xmm7=data3-data4=tmp4
        psubw   xmm0,xmm1               ; xmm0=data2-data5=tmp5

        ; -- Even part

        movdqa  xmm4,xmm3
        movdqa  xmm1,xmm5
        psubw   xmm3,xmm6               ; xmm3=tmp13
        psubw   xmm5,xmm2               ; xmm5=tmp12
        paddw   xmm4,xmm6               ; xmm4=tmp10
        paddw   xmm1,xmm2               ; xmm1=tmp11

        paddw   xmm5,xmm3
        psllw   xmm5,PRE_MULTIPLY_SCALE_BITS
        pmulhw  xmm5,[GOTOFF(ebx,PW_F0707)] ; xmm5=z1

        movdqa  xmm6,xmm4
        movdqa  xmm2,xmm3
        psubw   xmm4,xmm1               ; xmm4=data4
        psubw   xmm3,xmm5               ; xmm3=data6
        paddw   xmm6,xmm1               ; xmm6=data0
        paddw   xmm2,xmm5               ; xmm2=data2

        movdqa  XMMWORD [XMMBLOCK(4,0,edx,SIZEOF_DCTELEM)], xmm4
        movdqa  XMMWORD [XMMBLOCK(6,0,edx,SIZEOF_DCTELEM)], xmm3
        movdqa  XMMWORD [XMMBLOCK(0,0,edx,SIZEOF_DCTELEM)], xmm6
        movdqa  XMMWORD [XMMBLOCK(2,0,edx,SIZEOF_DCTELEM)], xmm2

        ; -- Odd part

        movdqa  xmm1, XMMWORD [wk(0)]   ; xmm1=tmp6
        movdqa  xmm5, XMMWORD [wk(1)]   ; xmm5=tmp7

        paddw   xmm7,xmm0               ; xmm7=tmp10
        paddw   xmm0,xmm1               ; xmm0=tmp11
        paddw   xmm1,xmm5               ; xmm1=tmp12, xmm5=tmp7

        psllw   xmm7,PRE_MULTIPLY_SCALE_BITS
        psllw   xmm1,PRE_MULTIPLY_SCALE_BITS

        psllw   xmm0,PRE_MULTIPLY_SCALE_BITS
        pmulhw  xmm0,[GOTOFF(ebx,PW_F0707)] ; xmm0=z3

        movdqa  xmm4,xmm7               ; xmm4=tmp10
        psubw   xmm7,xmm1
        pmulhw  xmm7,[GOTOFF(ebx,PW_F0382)] ; xmm7=z5
        pmulhw  xmm4,[GOTOFF(ebx,PW_F0541)] ; xmm4=MULTIPLY(tmp10,FIX_0_541196)
        pmulhw  xmm1,[GOTOFF(ebx,PW_F1306)] ; xmm1=MULTIPLY(tmp12,FIX_1_306562)
        paddw   xmm4,xmm7               ; xmm4=z2
        paddw   xmm1,xmm7               ; xmm1=z4

        movdqa  xmm3,xmm5
        psubw   xmm5,xmm0               ; xmm5=z13
        paddw   xmm3,xmm0               ; xmm3=z11

        movdqa  xmm6,xmm5
        movdqa  xmm2,xmm3
        psubw   xmm5,xmm4               ; xmm5=data3
        psubw   xmm3,xmm1               ; xmm3=data7
        paddw   xmm6,xmm4               ; xmm6=data5
        paddw   xmm2,xmm1               ; xmm2=data1

        movdqa  XMMWORD [XMMBLOCK(3,0,edx,SIZEOF_DCTELEM)], xmm5
        movdqa  XMMWORD [XMMBLOCK(7,0,edx,SIZEOF_DCTELEM)], xmm3
        movdqa  XMMWORD [XMMBLOCK(5,0,edx,SIZEOF_DCTELEM)], xmm6
        movdqa  XMMWORD [XMMBLOCK(1,0,edx,SIZEOF_DCTELEM)], xmm2

;       pop     edi             ; unused
;       pop     esi             ; unused
;       pop     edx             ; need not be preserved
;       pop     ecx             ; unused
        poppic  ebx
        mov     esp,ebp         ; esp <- aligned ebp
        pop     esp             ; esp <- original ebp
        pop     ebp
        ret

; For some reason, the OS X linker does not honor the request to align the
; segment unless we do this.
        align   16
