;
; jiss2flt.asm - floating-point IDCT (SSE & 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 floating-point implementation of the inverse DCT
; (Discrete Cosine Transform). The following code is based directly on
; the IJG's original jidctflt.c; see the jidctflt.c for more details.
;
; [TAB8]

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

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

%macro	unpcklps2 2	; %1=(0 1 2 3) / %2=(4 5 6 7) => %1=(0 1 4 5)
	shufps	%1,%2,0x44
%endmacro

%macro	unpckhps2 2	; %1=(0 1 2 3) / %2=(4 5 6 7) => %1=(2 3 6 7)
	shufps	%1,%2,0xEE
%endmacro

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

	alignz	16
	global	EXTN(jconst_idct_float_sse2) PRIVATE

EXTN(jconst_idct_float_sse2):

PD_1_414	times 4 dd  1.414213562373095048801689
PD_1_847	times 4 dd  1.847759065022573512256366
PD_1_082	times 4 dd  1.082392200292393968799446
PD_M2_613	times 4 dd -2.613125929752753055713286
PD_RNDINT_MAGIC	times 4 dd  100663296.0	; (float)(0x00C00000 << 3)
PB_CENTERJSAMP	times 16 db CENTERJSAMPLE

	alignz	16

; --------------------------------------------------------------------------
	SECTION	SEG_TEXT
	BITS	32
;
; Perform dequantization and inverse DCT on one block of coefficients.
;
; GLOBAL(void)
; jsimd_idct_float_sse2 (void * dct_table, JCOEFPTR coef_block,
;                        JSAMPARRAY output_buf, JDIMENSION output_col)
;

%define dct_table(b)	(b)+8			; void * dct_table
%define coef_block(b)	(b)+12		; JCOEFPTR coef_block
%define output_buf(b)	(b)+16		; JSAMPARRAY output_buf
%define output_col(b)	(b)+20		; JDIMENSION output_col

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

	align	16
	global	EXTN(jsimd_idct_float_sse2) PRIVATE

EXTN(jsimd_idct_float_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, [workspace]
	push	ebx
;	push	ecx		; need not be preserved
;	push	edx		; need not be preserved
	push	esi
	push	edi

	get_GOT	ebx		; get GOT address

	; ---- Pass 1: process columns from input, store into work array.

;	mov	eax, [original_ebp]
	mov	edx, POINTER [dct_table(eax)]	; quantptr
	mov	esi, JCOEFPTR [coef_block(eax)]		; inptr
	lea	edi, [workspace]			; FAST_FLOAT * wsptr
	mov	ecx, DCTSIZE/4				; ctr
	alignx	16,7
.columnloop:
%ifndef NO_ZERO_COLUMN_TEST_FLOAT_SSE
	mov	eax, DWORD [DWBLOCK(1,0,esi,SIZEOF_JCOEF)]
	or	eax, DWORD [DWBLOCK(2,0,esi,SIZEOF_JCOEF)]
	jnz	near .columnDCT

	movq	xmm1, XMM_MMWORD [MMBLOCK(1,0,esi,SIZEOF_JCOEF)]
	movq	xmm2, XMM_MMWORD [MMBLOCK(2,0,esi,SIZEOF_JCOEF)]
	movq	xmm3, XMM_MMWORD [MMBLOCK(3,0,esi,SIZEOF_JCOEF)]
	movq	xmm4, XMM_MMWORD [MMBLOCK(4,0,esi,SIZEOF_JCOEF)]
	movq	xmm5, XMM_MMWORD [MMBLOCK(5,0,esi,SIZEOF_JCOEF)]
	movq	xmm6, XMM_MMWORD [MMBLOCK(6,0,esi,SIZEOF_JCOEF)]
	movq	xmm7, XMM_MMWORD [MMBLOCK(7,0,esi,SIZEOF_JCOEF)]
	por	xmm1,xmm2
	por	xmm3,xmm4
	por	xmm5,xmm6
	por	xmm1,xmm3
	por	xmm5,xmm7
	por	xmm1,xmm5
	packsswb xmm1,xmm1
	movd	eax,xmm1
	test	eax,eax
	jnz	short .columnDCT

	; -- AC terms all zero

	movq      xmm0, XMM_MMWORD [MMBLOCK(0,0,esi,SIZEOF_JCOEF)]

	punpcklwd xmm0,xmm0		; xmm0=(00 00 01 01 02 02 03 03)
	psrad     xmm0,(DWORD_BIT-WORD_BIT)	; xmm0=in0=(00 01 02 03)
	cvtdq2ps  xmm0,xmm0			; xmm0=in0=(00 01 02 03)

	mulps	xmm0, XMMWORD [XMMBLOCK(0,0,edx,SIZEOF_FLOAT_MULT_TYPE)]

	movaps	xmm1,xmm0
	movaps	xmm2,xmm0
	movaps	xmm3,xmm0

	shufps	xmm0,xmm0,0x00			; xmm0=(00 00 00 00)
	shufps	xmm1,xmm1,0x55			; xmm1=(01 01 01 01)
	shufps	xmm2,xmm2,0xAA			; xmm2=(02 02 02 02)
	shufps	xmm3,xmm3,0xFF			; xmm3=(03 03 03 03)

	movaps	XMMWORD [XMMBLOCK(0,0,edi,SIZEOF_FAST_FLOAT)], xmm0
	movaps	XMMWORD [XMMBLOCK(0,1,edi,SIZEOF_FAST_FLOAT)], xmm0
	movaps	XMMWORD [XMMBLOCK(1,0,edi,SIZEOF_FAST_FLOAT)], xmm1
	movaps	XMMWORD [XMMBLOCK(1,1,edi,SIZEOF_FAST_FLOAT)], xmm1
	movaps	XMMWORD [XMMBLOCK(2,0,edi,SIZEOF_FAST_FLOAT)], xmm2
	movaps	XMMWORD [XMMBLOCK(2,1,edi,SIZEOF_FAST_FLOAT)], xmm2
	movaps	XMMWORD [XMMBLOCK(3,0,edi,SIZEOF_FAST_FLOAT)], xmm3
	movaps	XMMWORD [XMMBLOCK(3,1,edi,SIZEOF_FAST_FLOAT)], xmm3
	jmp	near .nextcolumn
	alignx	16,7
%endif
.columnDCT:

	; -- Even part

	movq      xmm0, XMM_MMWORD [MMBLOCK(0,0,esi,SIZEOF_JCOEF)]
	movq      xmm1, XMM_MMWORD [MMBLOCK(2,0,esi,SIZEOF_JCOEF)]
	movq      xmm2, XMM_MMWORD [MMBLOCK(4,0,esi,SIZEOF_JCOEF)]
	movq      xmm3, XMM_MMWORD [MMBLOCK(6,0,esi,SIZEOF_JCOEF)]

	punpcklwd xmm0,xmm0		; xmm0=(00 00 01 01 02 02 03 03)
	punpcklwd xmm1,xmm1		; xmm1=(20 20 21 21 22 22 23 23)
	psrad     xmm0,(DWORD_BIT-WORD_BIT)	; xmm0=in0=(00 01 02 03)
	psrad     xmm1,(DWORD_BIT-WORD_BIT)	; xmm1=in2=(20 21 22 23)
	cvtdq2ps  xmm0,xmm0			; xmm0=in0=(00 01 02 03)
	cvtdq2ps  xmm1,xmm1			; xmm1=in2=(20 21 22 23)

	punpcklwd xmm2,xmm2		; xmm2=(40 40 41 41 42 42 43 43)
	punpcklwd xmm3,xmm3		; xmm3=(60 60 61 61 62 62 63 63)
	psrad     xmm2,(DWORD_BIT-WORD_BIT)	; xmm2=in4=(40 41 42 43)
	psrad     xmm3,(DWORD_BIT-WORD_BIT)	; xmm3=in6=(60 61 62 63)
	cvtdq2ps  xmm2,xmm2			; xmm2=in4=(40 41 42 43)
	cvtdq2ps  xmm3,xmm3			; xmm3=in6=(60 61 62 63)

	mulps     xmm0, XMMWORD [XMMBLOCK(0,0,edx,SIZEOF_FLOAT_MULT_TYPE)]
	mulps     xmm1, XMMWORD [XMMBLOCK(2,0,edx,SIZEOF_FLOAT_MULT_TYPE)]
	mulps     xmm2, XMMWORD [XMMBLOCK(4,0,edx,SIZEOF_FLOAT_MULT_TYPE)]
	mulps     xmm3, XMMWORD [XMMBLOCK(6,0,edx,SIZEOF_FLOAT_MULT_TYPE)]

	movaps	xmm4,xmm0
	movaps	xmm5,xmm1
	subps	xmm0,xmm2		; xmm0=tmp11
	subps	xmm1,xmm3
	addps	xmm4,xmm2		; xmm4=tmp10
	addps	xmm5,xmm3		; xmm5=tmp13

	mulps	xmm1,[GOTOFF(ebx,PD_1_414)]
	subps	xmm1,xmm5		; xmm1=tmp12

	movaps	xmm6,xmm4
	movaps	xmm7,xmm0
	subps	xmm4,xmm5		; xmm4=tmp3
	subps	xmm0,xmm1		; xmm0=tmp2
	addps	xmm6,xmm5		; xmm6=tmp0
	addps	xmm7,xmm1		; xmm7=tmp1

	movaps	XMMWORD [wk(1)], xmm4	; tmp3
	movaps	XMMWORD [wk(0)], xmm0	; tmp2

	; -- Odd part

	movq      xmm2, XMM_MMWORD [MMBLOCK(1,0,esi,SIZEOF_JCOEF)]
	movq      xmm3, XMM_MMWORD [MMBLOCK(3,0,esi,SIZEOF_JCOEF)]
	movq      xmm5, XMM_MMWORD [MMBLOCK(5,0,esi,SIZEOF_JCOEF)]
	movq      xmm1, XMM_MMWORD [MMBLOCK(7,0,esi,SIZEOF_JCOEF)]

	punpcklwd xmm2,xmm2		; xmm2=(10 10 11 11 12 12 13 13)
	punpcklwd xmm3,xmm3		; xmm3=(30 30 31 31 32 32 33 33)
	psrad     xmm2,(DWORD_BIT-WORD_BIT)	; xmm2=in1=(10 11 12 13)
	psrad     xmm3,(DWORD_BIT-WORD_BIT)	; xmm3=in3=(30 31 32 33)
	cvtdq2ps  xmm2,xmm2			; xmm2=in1=(10 11 12 13)
	cvtdq2ps  xmm3,xmm3			; xmm3=in3=(30 31 32 33)

	punpcklwd xmm5,xmm5		; xmm5=(50 50 51 51 52 52 53 53)
	punpcklwd xmm1,xmm1		; xmm1=(70 70 71 71 72 72 73 73)
	psrad     xmm5,(DWORD_BIT-WORD_BIT)	; xmm5=in5=(50 51 52 53)
	psrad     xmm1,(DWORD_BIT-WORD_BIT)	; xmm1=in7=(70 71 72 73)
	cvtdq2ps  xmm5,xmm5			; xmm5=in5=(50 51 52 53)
	cvtdq2ps  xmm1,xmm1			; xmm1=in7=(70 71 72 73)

	mulps     xmm2, XMMWORD [XMMBLOCK(1,0,edx,SIZEOF_FLOAT_MULT_TYPE)]
	mulps     xmm3, XMMWORD [XMMBLOCK(3,0,edx,SIZEOF_FLOAT_MULT_TYPE)]
	mulps     xmm5, XMMWORD [XMMBLOCK(5,0,edx,SIZEOF_FLOAT_MULT_TYPE)]
	mulps     xmm1, XMMWORD [XMMBLOCK(7,0,edx,SIZEOF_FLOAT_MULT_TYPE)]

	movaps	xmm4,xmm2
	movaps	xmm0,xmm5
	addps	xmm2,xmm1		; xmm2=z11
	addps	xmm5,xmm3		; xmm5=z13
	subps	xmm4,xmm1		; xmm4=z12
	subps	xmm0,xmm3		; xmm0=z10

	movaps	xmm1,xmm2
	subps	xmm2,xmm5
	addps	xmm1,xmm5		; xmm1=tmp7

	mulps	xmm2,[GOTOFF(ebx,PD_1_414)]	; xmm2=tmp11

	movaps	xmm3,xmm0
	addps	xmm0,xmm4
	mulps	xmm0,[GOTOFF(ebx,PD_1_847)]	; xmm0=z5
	mulps	xmm3,[GOTOFF(ebx,PD_M2_613)]	; xmm3=(z10 * -2.613125930)
	mulps	xmm4,[GOTOFF(ebx,PD_1_082)]	; xmm4=(z12 * 1.082392200)
	addps	xmm3,xmm0		; xmm3=tmp12
	subps	xmm4,xmm0		; xmm4=tmp10

	; -- Final output stage

	subps	xmm3,xmm1		; xmm3=tmp6
	movaps	xmm5,xmm6
	movaps	xmm0,xmm7
	addps	xmm6,xmm1		; xmm6=data0=(00 01 02 03)
	addps	xmm7,xmm3		; xmm7=data1=(10 11 12 13)
	subps	xmm5,xmm1		; xmm5=data7=(70 71 72 73)
	subps	xmm0,xmm3		; xmm0=data6=(60 61 62 63)
	subps	xmm2,xmm3		; xmm2=tmp5

	movaps    xmm1,xmm6		; transpose coefficients(phase 1)
	unpcklps  xmm6,xmm7		; xmm6=(00 10 01 11)
	unpckhps  xmm1,xmm7		; xmm1=(02 12 03 13)
	movaps    xmm3,xmm0		; transpose coefficients(phase 1)
	unpcklps  xmm0,xmm5		; xmm0=(60 70 61 71)
	unpckhps  xmm3,xmm5		; xmm3=(62 72 63 73)

	movaps	xmm7, XMMWORD [wk(0)]	; xmm7=tmp2
	movaps	xmm5, XMMWORD [wk(1)]	; xmm5=tmp3

	movaps	XMMWORD [wk(0)], xmm0	; wk(0)=(60 70 61 71)
	movaps	XMMWORD [wk(1)], xmm3	; wk(1)=(62 72 63 73)

	addps	xmm4,xmm2		; xmm4=tmp4
	movaps	xmm0,xmm7
	movaps	xmm3,xmm5
	addps	xmm7,xmm2		; xmm7=data2=(20 21 22 23)
	addps	xmm5,xmm4		; xmm5=data4=(40 41 42 43)
	subps	xmm0,xmm2		; xmm0=data5=(50 51 52 53)
	subps	xmm3,xmm4		; xmm3=data3=(30 31 32 33)

	movaps    xmm2,xmm7		; transpose coefficients(phase 1)
	unpcklps  xmm7,xmm3		; xmm7=(20 30 21 31)
	unpckhps  xmm2,xmm3		; xmm2=(22 32 23 33)
	movaps    xmm4,xmm5		; transpose coefficients(phase 1)
	unpcklps  xmm5,xmm0		; xmm5=(40 50 41 51)
	unpckhps  xmm4,xmm0		; xmm4=(42 52 43 53)

	movaps    xmm3,xmm6		; transpose coefficients(phase 2)
	unpcklps2 xmm6,xmm7		; xmm6=(00 10 20 30)
	unpckhps2 xmm3,xmm7		; xmm3=(01 11 21 31)
	movaps    xmm0,xmm1		; transpose coefficients(phase 2)
	unpcklps2 xmm1,xmm2		; xmm1=(02 12 22 32)
	unpckhps2 xmm0,xmm2		; xmm0=(03 13 23 33)

	movaps	xmm7, XMMWORD [wk(0)]	; xmm7=(60 70 61 71)
	movaps	xmm2, XMMWORD [wk(1)]	; xmm2=(62 72 63 73)

	movaps	XMMWORD [XMMBLOCK(0,0,edi,SIZEOF_FAST_FLOAT)], xmm6
	movaps	XMMWORD [XMMBLOCK(1,0,edi,SIZEOF_FAST_FLOAT)], xmm3
	movaps	XMMWORD [XMMBLOCK(2,0,edi,SIZEOF_FAST_FLOAT)], xmm1
	movaps	XMMWORD [XMMBLOCK(3,0,edi,SIZEOF_FAST_FLOAT)], xmm0

	movaps    xmm6,xmm5		; transpose coefficients(phase 2)
	unpcklps2 xmm5,xmm7		; xmm5=(40 50 60 70)
	unpckhps2 xmm6,xmm7		; xmm6=(41 51 61 71)
	movaps    xmm3,xmm4		; transpose coefficients(phase 2)
	unpcklps2 xmm4,xmm2		; xmm4=(42 52 62 72)
	unpckhps2 xmm3,xmm2		; xmm3=(43 53 63 73)

	movaps	XMMWORD [XMMBLOCK(0,1,edi,SIZEOF_FAST_FLOAT)], xmm5
	movaps	XMMWORD [XMMBLOCK(1,1,edi,SIZEOF_FAST_FLOAT)], xmm6
	movaps	XMMWORD [XMMBLOCK(2,1,edi,SIZEOF_FAST_FLOAT)], xmm4
	movaps	XMMWORD [XMMBLOCK(3,1,edi,SIZEOF_FAST_FLOAT)], xmm3

.nextcolumn:
	add	esi, byte 4*SIZEOF_JCOEF		; coef_block
	add	edx, byte 4*SIZEOF_FLOAT_MULT_TYPE	; quantptr
	add	edi,      4*DCTSIZE*SIZEOF_FAST_FLOAT	; wsptr
	dec	ecx					; ctr
	jnz	near .columnloop

	; -- Prefetch the next coefficient block

	prefetchnta [esi + (DCTSIZE2-8)*SIZEOF_JCOEF + 0*32]
	prefetchnta [esi + (DCTSIZE2-8)*SIZEOF_JCOEF + 1*32]
	prefetchnta [esi + (DCTSIZE2-8)*SIZEOF_JCOEF + 2*32]
	prefetchnta [esi + (DCTSIZE2-8)*SIZEOF_JCOEF + 3*32]

	; ---- Pass 2: process rows from work array, store into output array.

	mov	eax, [original_ebp]
	lea	esi, [workspace]			; FAST_FLOAT * wsptr
	mov	edi, JSAMPARRAY [output_buf(eax)]	; (JSAMPROW *)
	mov	eax, JDIMENSION [output_col(eax)]
	mov	ecx, DCTSIZE/4				; ctr
	alignx	16,7
.rowloop:

	; -- Even part

	movaps	xmm0, XMMWORD [XMMBLOCK(0,0,esi,SIZEOF_FAST_FLOAT)]
	movaps	xmm1, XMMWORD [XMMBLOCK(2,0,esi,SIZEOF_FAST_FLOAT)]
	movaps	xmm2, XMMWORD [XMMBLOCK(4,0,esi,SIZEOF_FAST_FLOAT)]
	movaps	xmm3, XMMWORD [XMMBLOCK(6,0,esi,SIZEOF_FAST_FLOAT)]

	movaps	xmm4,xmm0
	movaps	xmm5,xmm1
	subps	xmm0,xmm2		; xmm0=tmp11
	subps	xmm1,xmm3
	addps	xmm4,xmm2		; xmm4=tmp10
	addps	xmm5,xmm3		; xmm5=tmp13

	mulps	xmm1,[GOTOFF(ebx,PD_1_414)]
	subps	xmm1,xmm5		; xmm1=tmp12

	movaps	xmm6,xmm4
	movaps	xmm7,xmm0
	subps	xmm4,xmm5		; xmm4=tmp3
	subps	xmm0,xmm1		; xmm0=tmp2
	addps	xmm6,xmm5		; xmm6=tmp0
	addps	xmm7,xmm1		; xmm7=tmp1

	movaps	XMMWORD [wk(1)], xmm4	; tmp3
	movaps	XMMWORD [wk(0)], xmm0	; tmp2

	; -- Odd part

	movaps	xmm2, XMMWORD [XMMBLOCK(1,0,esi,SIZEOF_FAST_FLOAT)]
	movaps	xmm3, XMMWORD [XMMBLOCK(3,0,esi,SIZEOF_FAST_FLOAT)]
	movaps	xmm5, XMMWORD [XMMBLOCK(5,0,esi,SIZEOF_FAST_FLOAT)]
	movaps	xmm1, XMMWORD [XMMBLOCK(7,0,esi,SIZEOF_FAST_FLOAT)]

	movaps	xmm4,xmm2
	movaps	xmm0,xmm5
	addps	xmm2,xmm1		; xmm2=z11
	addps	xmm5,xmm3		; xmm5=z13
	subps	xmm4,xmm1		; xmm4=z12
	subps	xmm0,xmm3		; xmm0=z10

	movaps	xmm1,xmm2
	subps	xmm2,xmm5
	addps	xmm1,xmm5		; xmm1=tmp7

	mulps	xmm2,[GOTOFF(ebx,PD_1_414)]	; xmm2=tmp11

	movaps	xmm3,xmm0
	addps	xmm0,xmm4
	mulps	xmm0,[GOTOFF(ebx,PD_1_847)]	; xmm0=z5
	mulps	xmm3,[GOTOFF(ebx,PD_M2_613)]	; xmm3=(z10 * -2.613125930)
	mulps	xmm4,[GOTOFF(ebx,PD_1_082)]	; xmm4=(z12 * 1.082392200)
	addps	xmm3,xmm0		; xmm3=tmp12
	subps	xmm4,xmm0		; xmm4=tmp10

	; -- Final output stage

	subps	xmm3,xmm1		; xmm3=tmp6
	movaps	xmm5,xmm6
	movaps	xmm0,xmm7
	addps	xmm6,xmm1		; xmm6=data0=(00 10 20 30)
	addps	xmm7,xmm3		; xmm7=data1=(01 11 21 31)
	subps	xmm5,xmm1		; xmm5=data7=(07 17 27 37)
	subps	xmm0,xmm3		; xmm0=data6=(06 16 26 36)
	subps	xmm2,xmm3		; xmm2=tmp5

	movaps	xmm1,[GOTOFF(ebx,PD_RNDINT_MAGIC)]	; xmm1=[PD_RNDINT_MAGIC]
	pcmpeqd	xmm3,xmm3
	psrld	xmm3,WORD_BIT		; xmm3={0xFFFF 0x0000 0xFFFF 0x0000 ..}

	addps	xmm6,xmm1	; xmm6=roundint(data0/8)=(00 ** 10 ** 20 ** 30 **)
	addps	xmm7,xmm1	; xmm7=roundint(data1/8)=(01 ** 11 ** 21 ** 31 **)
	addps	xmm0,xmm1	; xmm0=roundint(data6/8)=(06 ** 16 ** 26 ** 36 **)
	addps	xmm5,xmm1	; xmm5=roundint(data7/8)=(07 ** 17 ** 27 ** 37 **)

	pand	xmm6,xmm3		; xmm6=(00 -- 10 -- 20 -- 30 --)
	pslld	xmm7,WORD_BIT		; xmm7=(-- 01 -- 11 -- 21 -- 31)
	pand	xmm0,xmm3		; xmm0=(06 -- 16 -- 26 -- 36 --)
	pslld	xmm5,WORD_BIT		; xmm5=(-- 07 -- 17 -- 27 -- 37)
	por	xmm6,xmm7		; xmm6=(00 01 10 11 20 21 30 31)
	por	xmm0,xmm5		; xmm0=(06 07 16 17 26 27 36 37)

	movaps	xmm1, XMMWORD [wk(0)]	; xmm1=tmp2
	movaps	xmm3, XMMWORD [wk(1)]	; xmm3=tmp3

	addps	xmm4,xmm2		; xmm4=tmp4
	movaps	xmm7,xmm1
	movaps	xmm5,xmm3
	addps	xmm1,xmm2		; xmm1=data2=(02 12 22 32)
	addps	xmm3,xmm4		; xmm3=data4=(04 14 24 34)
	subps	xmm7,xmm2		; xmm7=data5=(05 15 25 35)
	subps	xmm5,xmm4		; xmm5=data3=(03 13 23 33)

	movaps	xmm2,[GOTOFF(ebx,PD_RNDINT_MAGIC)]	; xmm2=[PD_RNDINT_MAGIC]
	pcmpeqd	xmm4,xmm4
	psrld	xmm4,WORD_BIT		; xmm4={0xFFFF 0x0000 0xFFFF 0x0000 ..}

	addps	xmm3,xmm2	; xmm3=roundint(data4/8)=(04 ** 14 ** 24 ** 34 **)
	addps	xmm7,xmm2	; xmm7=roundint(data5/8)=(05 ** 15 ** 25 ** 35 **)
	addps	xmm1,xmm2	; xmm1=roundint(data2/8)=(02 ** 12 ** 22 ** 32 **)
	addps	xmm5,xmm2	; xmm5=roundint(data3/8)=(03 ** 13 ** 23 ** 33 **)

	pand	xmm3,xmm4		; xmm3=(04 -- 14 -- 24 -- 34 --)
	pslld	xmm7,WORD_BIT		; xmm7=(-- 05 -- 15 -- 25 -- 35)
	pand	xmm1,xmm4		; xmm1=(02 -- 12 -- 22 -- 32 --)
	pslld	xmm5,WORD_BIT		; xmm5=(-- 03 -- 13 -- 23 -- 33)
	por	xmm3,xmm7		; xmm3=(04 05 14 15 24 25 34 35)
	por	xmm1,xmm5		; xmm1=(02 03 12 13 22 23 32 33)

	movdqa    xmm2,[GOTOFF(ebx,PB_CENTERJSAMP)]	; xmm2=[PB_CENTERJSAMP]

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

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

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

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

	pushpic	ebx			; save GOT address

	mov	edx, JSAMPROW [edi+0*SIZEOF_JSAMPROW]
	mov	ebx, JSAMPROW [edi+2*SIZEOF_JSAMPROW]
	movq	XMM_MMWORD [edx+eax*SIZEOF_JSAMPLE], xmm6
	movq	XMM_MMWORD [ebx+eax*SIZEOF_JSAMPLE], xmm7
	mov	edx, JSAMPROW [edi+1*SIZEOF_JSAMPROW]
	mov	ebx, JSAMPROW [edi+3*SIZEOF_JSAMPROW]
	movq	XMM_MMWORD [edx+eax*SIZEOF_JSAMPLE], xmm5
	movq	XMM_MMWORD [ebx+eax*SIZEOF_JSAMPLE], xmm3

	poppic	ebx			; restore GOT address

	add	esi, byte 4*SIZEOF_FAST_FLOAT	; wsptr
	add	edi, byte 4*SIZEOF_JSAMPROW
	dec	ecx				; ctr
	jnz	near .rowloop

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