;
; jf3dnflt.asm - floating-point FDCT (3DNow!)
;
; 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 floating-point implementation of the forward DCT
; (Discrete Cosine Transform). The following code is based directly on
; the IJG's original jfdctflt.c; see the jfdctflt.c for more details.
;
; [TAB8]

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

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

	alignz	16
	global	EXTN(jconst_fdct_float_3dnow)

EXTN(jconst_fdct_float_3dnow):

PD_0_382	times 2 dd  0.382683432365089771728460
PD_0_707	times 2 dd  0.707106781186547524400844
PD_0_541	times 2 dd  0.541196100146196984399723
PD_1_306	times 2 dd  1.306562964876376527856643

	alignz	16

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

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

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

	align	16
	global	EXTN(jsimd_fdct_float_3dnow)

EXTN(jsimd_fdct_float_3dnow):
	push	ebp
	mov	eax,esp				; eax = original ebp
	sub	esp, byte 4
	and	esp, byte (-SIZEOF_MMWORD)	; align to 64 bits
	mov	[esp],eax
	mov	ebp,esp				; ebp = aligned ebp
	lea	esp, [wk(0)]
	pushpic	ebx
;	push	ecx		; need not be preserved
;	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)]	; (FAST_FLOAT *)
	mov	ecx, DCTSIZE/2
	alignx	16,7
.rowloop:

	movq	mm0, MMWORD [MMBLOCK(0,0,edx,SIZEOF_FAST_FLOAT)]
	movq	mm1, MMWORD [MMBLOCK(1,0,edx,SIZEOF_FAST_FLOAT)]
	movq	mm2, MMWORD [MMBLOCK(0,3,edx,SIZEOF_FAST_FLOAT)]
	movq	mm3, MMWORD [MMBLOCK(1,3,edx,SIZEOF_FAST_FLOAT)]

	; mm0=(00 01), mm1=(10 11), mm2=(06 07), mm3=(16 17)

	movq      mm4,mm0		; transpose coefficients
	punpckldq mm0,mm1		; mm0=(00 10)=data0
	punpckhdq mm4,mm1		; mm4=(01 11)=data1
	movq      mm5,mm2		; transpose coefficients
	punpckldq mm2,mm3		; mm2=(06 16)=data6
	punpckhdq mm5,mm3		; mm5=(07 17)=data7

	movq	mm6,mm4
	movq	mm7,mm0
	pfsub	mm4,mm2			; mm4=data1-data6=tmp6
	pfsub	mm0,mm5			; mm0=data0-data7=tmp7
	pfadd	mm6,mm2			; mm6=data1+data6=tmp1
	pfadd	mm7,mm5			; mm7=data0+data7=tmp0

	movq	mm1, MMWORD [MMBLOCK(0,1,edx,SIZEOF_FAST_FLOAT)]
	movq	mm3, MMWORD [MMBLOCK(1,1,edx,SIZEOF_FAST_FLOAT)]
	movq	mm2, MMWORD [MMBLOCK(0,2,edx,SIZEOF_FAST_FLOAT)]
	movq	mm5, MMWORD [MMBLOCK(1,2,edx,SIZEOF_FAST_FLOAT)]

	; mm1=(02 03), mm3=(12 13), mm2=(04 05), mm5=(14 15)

	movq	MMWORD [wk(0)], mm4	; wk(0)=tmp6
	movq	MMWORD [wk(1)], mm0	; wk(1)=tmp7

	movq      mm4,mm1		; transpose coefficients
	punpckldq mm1,mm3		; mm1=(02 12)=data2
	punpckhdq mm4,mm3		; mm4=(03 13)=data3
	movq      mm0,mm2		; transpose coefficients
	punpckldq mm2,mm5		; mm2=(04 14)=data4
	punpckhdq mm0,mm5		; mm0=(05 15)=data5

	movq	mm3,mm4
	movq	mm5,mm1
	pfadd	mm4,mm2			; mm4=data3+data4=tmp3
	pfadd	mm1,mm0			; mm1=data2+data5=tmp2
	pfsub	mm3,mm2			; mm3=data3-data4=tmp4
	pfsub	mm5,mm0			; mm5=data2-data5=tmp5

	; -- Even part

	movq	mm2,mm7
	movq	mm0,mm6
	pfsub	mm7,mm4			; mm7=tmp13
	pfsub	mm6,mm1			; mm6=tmp12
	pfadd	mm2,mm4			; mm2=tmp10
	pfadd	mm0,mm1			; mm0=tmp11

	pfadd	mm6,mm7
	pfmul	mm6,[GOTOFF(ebx,PD_0_707)] ; mm6=z1

	movq	mm4,mm2
	movq	mm1,mm7
	pfsub	mm2,mm0			; mm2=data4
	pfsub	mm7,mm6			; mm7=data6
	pfadd	mm4,mm0			; mm4=data0
	pfadd	mm1,mm6			; mm1=data2

	movq	MMWORD [MMBLOCK(0,2,edx,SIZEOF_FAST_FLOAT)], mm2
	movq	MMWORD [MMBLOCK(0,3,edx,SIZEOF_FAST_FLOAT)], mm7
	movq	MMWORD [MMBLOCK(0,0,edx,SIZEOF_FAST_FLOAT)], mm4
	movq	MMWORD [MMBLOCK(0,1,edx,SIZEOF_FAST_FLOAT)], mm1

	; -- Odd part

	movq	mm0, MMWORD [wk(0)]	; mm0=tmp6
	movq	mm6, MMWORD [wk(1)]	; mm6=tmp7

	pfadd	mm3,mm5			; mm3=tmp10
	pfadd	mm5,mm0			; mm5=tmp11
	pfadd	mm0,mm6			; mm0=tmp12, mm6=tmp7

	pfmul	mm5,[GOTOFF(ebx,PD_0_707)] ; mm5=z3

	movq	mm2,mm3			; mm2=tmp10
	pfsub	mm3,mm0
	pfmul	mm3,[GOTOFF(ebx,PD_0_382)] ; mm3=z5
	pfmul	mm2,[GOTOFF(ebx,PD_0_541)] ; mm2=MULTIPLY(tmp10,FIX_0_54119610)
	pfmul	mm0,[GOTOFF(ebx,PD_1_306)] ; mm0=MULTIPLY(tmp12,FIX_1_30656296)
	pfadd	mm2,mm3			; mm2=z2
	pfadd	mm0,mm3			; mm0=z4

	movq	mm7,mm6
	pfsub	mm6,mm5			; mm6=z13
	pfadd	mm7,mm5			; mm7=z11

	movq	mm4,mm6
	movq	mm1,mm7
	pfsub	mm6,mm2			; mm6=data3
	pfsub	mm7,mm0			; mm7=data7
	pfadd	mm4,mm2			; mm4=data5
	pfadd	mm1,mm0			; mm1=data1

	movq	MMWORD [MMBLOCK(1,1,edx,SIZEOF_FAST_FLOAT)], mm6
	movq	MMWORD [MMBLOCK(1,3,edx,SIZEOF_FAST_FLOAT)], mm7
	movq	MMWORD [MMBLOCK(1,2,edx,SIZEOF_FAST_FLOAT)], mm4
	movq	MMWORD [MMBLOCK(1,0,edx,SIZEOF_FAST_FLOAT)], mm1

	add	edx, byte 2*DCTSIZE*SIZEOF_FAST_FLOAT
	dec	ecx
	jnz	near .rowloop

	; ---- Pass 2: process columns.

	mov	edx, POINTER [data(eax)]	; (FAST_FLOAT *)
	mov	ecx, DCTSIZE/2
	alignx	16,7
.columnloop:

	movq	mm0, MMWORD [MMBLOCK(0,0,edx,SIZEOF_FAST_FLOAT)]
	movq	mm1, MMWORD [MMBLOCK(1,0,edx,SIZEOF_FAST_FLOAT)]
	movq	mm2, MMWORD [MMBLOCK(6,0,edx,SIZEOF_FAST_FLOAT)]
	movq	mm3, MMWORD [MMBLOCK(7,0,edx,SIZEOF_FAST_FLOAT)]

	; mm0=(00 10), mm1=(01 11), mm2=(60 70), mm3=(61 71)

	movq      mm4,mm0		; transpose coefficients
	punpckldq mm0,mm1		; mm0=(00 01)=data0
	punpckhdq mm4,mm1		; mm4=(10 11)=data1
	movq      mm5,mm2		; transpose coefficients
	punpckldq mm2,mm3		; mm2=(60 61)=data6
	punpckhdq mm5,mm3		; mm5=(70 71)=data7

	movq	mm6,mm4
	movq	mm7,mm0
	pfsub	mm4,mm2			; mm4=data1-data6=tmp6
	pfsub	mm0,mm5			; mm0=data0-data7=tmp7
	pfadd	mm6,mm2			; mm6=data1+data6=tmp1
	pfadd	mm7,mm5			; mm7=data0+data7=tmp0

	movq	mm1, MMWORD [MMBLOCK(2,0,edx,SIZEOF_FAST_FLOAT)]
	movq	mm3, MMWORD [MMBLOCK(3,0,edx,SIZEOF_FAST_FLOAT)]
	movq	mm2, MMWORD [MMBLOCK(4,0,edx,SIZEOF_FAST_FLOAT)]
	movq	mm5, MMWORD [MMBLOCK(5,0,edx,SIZEOF_FAST_FLOAT)]

	; mm1=(20 30), mm3=(21 31), mm2=(40 50), mm5=(41 51)

	movq	MMWORD [wk(0)], mm4	; wk(0)=tmp6
	movq	MMWORD [wk(1)], mm0	; wk(1)=tmp7

	movq      mm4,mm1		; transpose coefficients
	punpckldq mm1,mm3		; mm1=(20 21)=data2
	punpckhdq mm4,mm3		; mm4=(30 31)=data3
	movq      mm0,mm2		; transpose coefficients
	punpckldq mm2,mm5		; mm2=(40 41)=data4
	punpckhdq mm0,mm5		; mm0=(50 51)=data5

	movq	mm3,mm4
	movq	mm5,mm1
	pfadd	mm4,mm2			; mm4=data3+data4=tmp3
	pfadd	mm1,mm0			; mm1=data2+data5=tmp2
	pfsub	mm3,mm2			; mm3=data3-data4=tmp4
	pfsub	mm5,mm0			; mm5=data2-data5=tmp5

	; -- Even part

	movq	mm2,mm7
	movq	mm0,mm6
	pfsub	mm7,mm4			; mm7=tmp13
	pfsub	mm6,mm1			; mm6=tmp12
	pfadd	mm2,mm4			; mm2=tmp10
	pfadd	mm0,mm1			; mm0=tmp11

	pfadd	mm6,mm7
	pfmul	mm6,[GOTOFF(ebx,PD_0_707)] ; mm6=z1

	movq	mm4,mm2
	movq	mm1,mm7
	pfsub	mm2,mm0			; mm2=data4
	pfsub	mm7,mm6			; mm7=data6
	pfadd	mm4,mm0			; mm4=data0
	pfadd	mm1,mm6			; mm1=data2

	movq	MMWORD [MMBLOCK(4,0,edx,SIZEOF_FAST_FLOAT)], mm2
	movq	MMWORD [MMBLOCK(6,0,edx,SIZEOF_FAST_FLOAT)], mm7
	movq	MMWORD [MMBLOCK(0,0,edx,SIZEOF_FAST_FLOAT)], mm4
	movq	MMWORD [MMBLOCK(2,0,edx,SIZEOF_FAST_FLOAT)], mm1

	; -- Odd part

	movq	mm0, MMWORD [wk(0)]	; mm0=tmp6
	movq	mm6, MMWORD [wk(1)]	; mm6=tmp7

	pfadd	mm3,mm5			; mm3=tmp10
	pfadd	mm5,mm0			; mm5=tmp11
	pfadd	mm0,mm6			; mm0=tmp12, mm6=tmp7

	pfmul	mm5,[GOTOFF(ebx,PD_0_707)] ; mm5=z3

	movq	mm2,mm3			; mm2=tmp10
	pfsub	mm3,mm0
	pfmul	mm3,[GOTOFF(ebx,PD_0_382)] ; mm3=z5
	pfmul	mm2,[GOTOFF(ebx,PD_0_541)] ; mm2=MULTIPLY(tmp10,FIX_0_54119610)
	pfmul	mm0,[GOTOFF(ebx,PD_1_306)] ; mm0=MULTIPLY(tmp12,FIX_1_30656296)
	pfadd	mm2,mm3			; mm2=z2
	pfadd	mm0,mm3			; mm0=z4

	movq	mm7,mm6
	pfsub	mm6,mm5			; mm6=z13
	pfadd	mm7,mm5			; mm7=z11

	movq	mm4,mm6
	movq	mm1,mm7
	pfsub	mm6,mm2			; mm6=data3
	pfsub	mm7,mm0			; mm7=data7
	pfadd	mm4,mm2			; mm4=data5
	pfadd	mm1,mm0			; mm1=data1

	movq	MMWORD [MMBLOCK(3,0,edx,SIZEOF_FAST_FLOAT)], mm6
	movq	MMWORD [MMBLOCK(7,0,edx,SIZEOF_FAST_FLOAT)], mm7
	movq	MMWORD [MMBLOCK(5,0,edx,SIZEOF_FAST_FLOAT)], mm4
	movq	MMWORD [MMBLOCK(1,0,edx,SIZEOF_FAST_FLOAT)], mm1

	add	edx, byte 2*SIZEOF_FAST_FLOAT
	dec	ecx
	jnz	near .columnloop

	femms		; empty MMX/3DNow! state

;	pop	edi		; unused
;	pop	esi		; unused
;	pop	edx		; need not be preserved
;	pop	ecx		; need not be preserved
	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
