Commit 3c1378ce authored by Michael Niedermayer's avatar Michael Niedermayer

Merge commit '2d91abad'

* commit '2d91abad':
  x86: h264_intrapred: Don't treat 32-bit integers as 64-bit
Merged-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parents 36e4b750 2d91abad
...@@ -1027,9 +1027,9 @@ cglobal pred8x8l_top_dc_8, 4,4 ...@@ -1027,9 +1027,9 @@ cglobal pred8x8l_top_dc_8, 4,4
movq mm4, mm3 movq mm4, mm3
PALIGNR mm2, mm0, 7, mm0 PALIGNR mm2, mm0, 7, mm0
PALIGNR mm1, mm4, 1, mm4 PALIGNR mm1, mm4, 1, mm4
test r1, r1 ; top_left test r1d, r1d ; top_left
jz .fix_lt_2 jz .fix_lt_2
test r2, r2 ; top_right test r2d, r2d ; top_right
jz .fix_tr_1 jz .fix_tr_1
jmp .body jmp .body
.fix_lt_2: .fix_lt_2:
...@@ -1038,7 +1038,7 @@ cglobal pred8x8l_top_dc_8, 4,4 ...@@ -1038,7 +1038,7 @@ cglobal pred8x8l_top_dc_8, 4,4
psllq mm5, 56 psllq mm5, 56
psrlq mm5, 56 psrlq mm5, 56
pxor mm2, mm5 pxor mm2, mm5
test r2, r2 ; top_right test r2d, r2d ; top_right
jnz .body jnz .body
.fix_tr_1: .fix_tr_1:
movq mm5, mm3 movq mm5, mm3
...@@ -1099,7 +1099,7 @@ cglobal pred8x8l_dc_8, 4,5 ...@@ -1099,7 +1099,7 @@ cglobal pred8x8l_dc_8, 4,5
movq mm2, mm3 movq mm2, mm3
PALIGNR mm4, mm0, 7, mm0 PALIGNR mm4, mm0, 7, mm0
PALIGNR mm1, mm2, 1, mm2 PALIGNR mm1, mm2, 1, mm2
test r1, r1 test r1d, r1d
jnz .do_left jnz .do_left
.fix_lt_1: .fix_lt_1:
movq mm5, mm3 movq mm5, mm3
...@@ -1114,7 +1114,7 @@ cglobal pred8x8l_dc_8, 4,5 ...@@ -1114,7 +1114,7 @@ cglobal pred8x8l_dc_8, 4,5
psllq mm5, 56 psllq mm5, 56
psrlq mm5, 56 psrlq mm5, 56
pxor mm2, mm5 pxor mm2, mm5
test r2, r2 test r2d, r2d
jnz .body jnz .body
.fix_tr_1: .fix_tr_1:
movq mm5, mm3 movq mm5, mm3
...@@ -1138,9 +1138,9 @@ cglobal pred8x8l_dc_8, 4,5 ...@@ -1138,9 +1138,9 @@ cglobal pred8x8l_dc_8, 4,5
movq mm4, mm3 movq mm4, mm3
PALIGNR mm2, mm0, 7, mm0 PALIGNR mm2, mm0, 7, mm0
PALIGNR mm1, mm4, 1, mm4 PALIGNR mm1, mm4, 1, mm4
test r1, r1 test r1d, r1d
jz .fix_lt_2 jz .fix_lt_2
test r2, r2 test r2d, r2d
jz .fix_tr_1 jz .fix_tr_1
.body: .body:
lea r1, [r0+r3*2] lea r1, [r0+r3*2]
...@@ -1182,7 +1182,7 @@ cglobal pred8x8l_horizontal_8, 4,4 ...@@ -1182,7 +1182,7 @@ cglobal pred8x8l_horizontal_8, 4,4
sub r0, r3 sub r0, r3
lea r2, [r0+r3*2] lea r2, [r0+r3*2]
movq mm0, [r0+r3*1-8] movq mm0, [r0+r3*1-8]
test r1, r1 test r1d, r1d
lea r1, [r0+r3] lea r1, [r0+r3]
cmovnz r1, r0 cmovnz r1, r0
punpckhbw mm0, [r1+r3*0-8] punpckhbw mm0, [r1+r3*0-8]
...@@ -1259,9 +1259,9 @@ cglobal pred8x8l_vertical_8, 4,4 ...@@ -1259,9 +1259,9 @@ cglobal pred8x8l_vertical_8, 4,4
movq mm4, mm3 movq mm4, mm3
PALIGNR mm2, mm0, 7, mm0 PALIGNR mm2, mm0, 7, mm0
PALIGNR mm1, mm4, 1, mm4 PALIGNR mm1, mm4, 1, mm4
test r1, r1 ; top_left test r1d, r1d ; top_left
jz .fix_lt_2 jz .fix_lt_2
test r2, r2 ; top_right test r2d, r2d ; top_right
jz .fix_tr_1 jz .fix_tr_1
jmp .body jmp .body
.fix_lt_2: .fix_lt_2:
...@@ -1270,7 +1270,7 @@ cglobal pred8x8l_vertical_8, 4,4 ...@@ -1270,7 +1270,7 @@ cglobal pred8x8l_vertical_8, 4,4
psllq mm5, 56 psllq mm5, 56
psrlq mm5, 56 psrlq mm5, 56
pxor mm2, mm5 pxor mm2, mm5
test r2, r2 ; top_right test r2d, r2d ; top_right
jnz .body jnz .body
.fix_tr_1: .fix_tr_1:
movq mm5, mm3 movq mm5, mm3
...@@ -1310,9 +1310,9 @@ cglobal pred8x8l_down_left_8, 4,5 ...@@ -1310,9 +1310,9 @@ cglobal pred8x8l_down_left_8, 4,5
movq mm4, mm3 movq mm4, mm3
PALIGNR mm2, mm0, 7, mm0 PALIGNR mm2, mm0, 7, mm0
PALIGNR mm1, mm4, 1, mm4 PALIGNR mm1, mm4, 1, mm4
test r1, r1 test r1d, r1d
jz .fix_lt_2 jz .fix_lt_2
test r2, r2 test r2d, r2d
jz .fix_tr_1 jz .fix_tr_1
jmp .do_top jmp .do_top
.fix_lt_2: .fix_lt_2:
...@@ -1321,7 +1321,7 @@ cglobal pred8x8l_down_left_8, 4,5 ...@@ -1321,7 +1321,7 @@ cglobal pred8x8l_down_left_8, 4,5
psllq mm5, 56 psllq mm5, 56
psrlq mm5, 56 psrlq mm5, 56
pxor mm2, mm5 pxor mm2, mm5
test r2, r2 test r2d, r2d
jnz .do_top jnz .do_top
.fix_tr_1: .fix_tr_1:
movq mm5, mm3 movq mm5, mm3
...@@ -1337,7 +1337,7 @@ cglobal pred8x8l_down_left_8, 4,5 ...@@ -1337,7 +1337,7 @@ cglobal pred8x8l_down_left_8, 4,5
.do_top: .do_top:
PRED4x4_LOWPASS mm4, mm2, mm1, mm3, mm5 PRED4x4_LOWPASS mm4, mm2, mm1, mm3, mm5
movq mm7, mm4 movq mm7, mm4
test r2, r2 test r2d, r2d
jz .fix_tr_2 jz .fix_tr_2
movq mm0, [r0+8] movq mm0, [r0+8]
movq mm5, mm0 movq mm5, mm0
...@@ -1418,9 +1418,9 @@ cglobal pred8x8l_down_left_8, 4,4 ...@@ -1418,9 +1418,9 @@ cglobal pred8x8l_down_left_8, 4,4
movq mm4, mm3 movq mm4, mm3
PALIGNR mm2, mm0, 7, mm0 PALIGNR mm2, mm0, 7, mm0
PALIGNR mm1, mm4, 1, mm4 PALIGNR mm1, mm4, 1, mm4
test r1, r1 ; top_left test r1d, r1d ; top_left
jz .fix_lt_2 jz .fix_lt_2
test r2, r2 ; top_right test r2d, r2d ; top_right
jz .fix_tr_1 jz .fix_tr_1
jmp .do_top jmp .do_top
.fix_lt_2: .fix_lt_2:
...@@ -1429,7 +1429,7 @@ cglobal pred8x8l_down_left_8, 4,4 ...@@ -1429,7 +1429,7 @@ cglobal pred8x8l_down_left_8, 4,4
psllq mm5, 56 psllq mm5, 56
psrlq mm5, 56 psrlq mm5, 56
pxor mm2, mm5 pxor mm2, mm5
test r2, r2 ; top_right test r2d, r2d ; top_right
jnz .do_top jnz .do_top
.fix_tr_1: .fix_tr_1:
movq mm5, mm3 movq mm5, mm3
...@@ -1445,7 +1445,7 @@ cglobal pred8x8l_down_left_8, 4,4 ...@@ -1445,7 +1445,7 @@ cglobal pred8x8l_down_left_8, 4,4
.do_top: .do_top:
PRED4x4_LOWPASS mm4, mm2, mm1, mm3, mm5 PRED4x4_LOWPASS mm4, mm2, mm1, mm3, mm5
movq2dq xmm3, mm4 movq2dq xmm3, mm4
test r2, r2 ; top_right test r2d, r2d ; top_right
jz .fix_tr_2 jz .fix_tr_2
movq mm0, [r0+8] movq mm0, [r0+8]
movq mm5, mm0 movq mm5, mm0
...@@ -1527,7 +1527,7 @@ cglobal pred8x8l_down_right_8, 4,5 ...@@ -1527,7 +1527,7 @@ cglobal pred8x8l_down_right_8, 4,5
movq mm2, mm3 movq mm2, mm3
PALIGNR mm4, mm0, 7, mm0 PALIGNR mm4, mm0, 7, mm0
PALIGNR mm1, mm2, 1, mm2 PALIGNR mm1, mm2, 1, mm2
test r1, r1 ; top_left test r1d, r1d ; top_left
jz .fix_lt_1 jz .fix_lt_1
.do_left: .do_left:
movq mm0, mm4 movq mm0, mm4
...@@ -1545,9 +1545,9 @@ cglobal pred8x8l_down_right_8, 4,5 ...@@ -1545,9 +1545,9 @@ cglobal pred8x8l_down_right_8, 4,5
movq mm4, mm3 movq mm4, mm3
PALIGNR mm2, mm0, 7, mm0 PALIGNR mm2, mm0, 7, mm0
PALIGNR mm1, mm4, 1, mm4 PALIGNR mm1, mm4, 1, mm4
test r1, r1 ; top_left test r1d, r1d ; top_left
jz .fix_lt_2 jz .fix_lt_2
test r2, r2 ; top_right test r2d, r2d ; top_right
jz .fix_tr_1 jz .fix_tr_1
.do_top: .do_top:
PRED4x4_LOWPASS mm4, mm2, mm1, mm3, mm5 PRED4x4_LOWPASS mm4, mm2, mm1, mm3, mm5
...@@ -1566,7 +1566,7 @@ cglobal pred8x8l_down_right_8, 4,5 ...@@ -1566,7 +1566,7 @@ cglobal pred8x8l_down_right_8, 4,5
psllq mm5, 56 psllq mm5, 56
psrlq mm5, 56 psrlq mm5, 56
pxor mm2, mm5 pxor mm2, mm5
test r2, r2 ; top_right test r2d, r2d ; top_right
jnz .do_top jnz .do_top
.fix_tr_1: .fix_tr_1:
movq mm5, mm3 movq mm5, mm3
...@@ -1659,7 +1659,7 @@ cglobal pred8x8l_down_right_8, 4,5 ...@@ -1659,7 +1659,7 @@ cglobal pred8x8l_down_right_8, 4,5
movq mm2, mm3 movq mm2, mm3
PALIGNR mm4, mm0, 7, mm0 PALIGNR mm4, mm0, 7, mm0
PALIGNR mm1, mm2, 1, mm2 PALIGNR mm1, mm2, 1, mm2
test r1, r1 test r1d, r1d
jz .fix_lt_1 jz .fix_lt_1
jmp .do_left jmp .do_left
.fix_lt_1: .fix_lt_1:
...@@ -1675,7 +1675,7 @@ cglobal pred8x8l_down_right_8, 4,5 ...@@ -1675,7 +1675,7 @@ cglobal pred8x8l_down_right_8, 4,5
psllq mm5, 56 psllq mm5, 56
psrlq mm5, 56 psrlq mm5, 56
pxor mm2, mm5 pxor mm2, mm5
test r2, r2 test r2d, r2d
jnz .do_top jnz .do_top
.fix_tr_1: .fix_tr_1:
movq mm5, mm3 movq mm5, mm3
...@@ -1701,9 +1701,9 @@ cglobal pred8x8l_down_right_8, 4,5 ...@@ -1701,9 +1701,9 @@ cglobal pred8x8l_down_right_8, 4,5
movq mm4, mm3 movq mm4, mm3
PALIGNR mm2, mm0, 7, mm0 PALIGNR mm2, mm0, 7, mm0
PALIGNR mm1, mm4, 1, mm4 PALIGNR mm1, mm4, 1, mm4
test r1, r1 test r1d, r1d
jz .fix_lt_2 jz .fix_lt_2
test r2, r2 test r2d, r2d
jz .fix_tr_1 jz .fix_tr_1
.do_top: .do_top:
PRED4x4_LOWPASS mm4, mm2, mm1, mm3, mm5 PRED4x4_LOWPASS mm4, mm2, mm1, mm3, mm5
...@@ -1779,7 +1779,7 @@ cglobal pred8x8l_vertical_right_8, 4,5 ...@@ -1779,7 +1779,7 @@ cglobal pred8x8l_vertical_right_8, 4,5
movq mm2, mm3 movq mm2, mm3
PALIGNR mm4, mm0, 7, mm0 PALIGNR mm4, mm0, 7, mm0
PALIGNR mm1, mm2, 1, mm2 PALIGNR mm1, mm2, 1, mm2
test r1, r1 test r1d, r1d
jz .fix_lt_1 jz .fix_lt_1
jmp .do_left jmp .do_left
.fix_lt_1: .fix_lt_1:
...@@ -1795,7 +1795,7 @@ cglobal pred8x8l_vertical_right_8, 4,5 ...@@ -1795,7 +1795,7 @@ cglobal pred8x8l_vertical_right_8, 4,5
psllq mm5, 56 psllq mm5, 56
psrlq mm5, 56 psrlq mm5, 56
pxor mm2, mm5 pxor mm2, mm5
test r2, r2 test r2d, r2d
jnz .do_top jnz .do_top
.fix_tr_1: .fix_tr_1:
movq mm5, mm3 movq mm5, mm3
...@@ -1815,9 +1815,9 @@ cglobal pred8x8l_vertical_right_8, 4,5 ...@@ -1815,9 +1815,9 @@ cglobal pred8x8l_vertical_right_8, 4,5
movq mm4, mm3 movq mm4, mm3
PALIGNR mm2, mm0, 7, mm0 PALIGNR mm2, mm0, 7, mm0
PALIGNR mm1, mm4, 1, mm4 PALIGNR mm1, mm4, 1, mm4
test r1, r1 test r1d, r1d
jz .fix_lt_2 jz .fix_lt_2
test r2, r2 test r2d, r2d
jz .fix_tr_1 jz .fix_tr_1
.do_top: .do_top:
PRED4x4_LOWPASS mm6, mm2, mm1, mm3, mm5 PRED4x4_LOWPASS mm6, mm2, mm1, mm3, mm5
...@@ -1889,7 +1889,7 @@ cglobal pred8x8l_vertical_right_8, 4,5,7 ...@@ -1889,7 +1889,7 @@ cglobal pred8x8l_vertical_right_8, 4,5,7
movq mm2, mm3 movq mm2, mm3
PALIGNR mm4, mm0, 7, mm0 PALIGNR mm4, mm0, 7, mm0
PALIGNR mm1, mm2, 1, mm2 PALIGNR mm1, mm2, 1, mm2
test r1, r1 test r1d, r1d
jnz .do_left jnz .do_left
.fix_lt_1: .fix_lt_1:
movq mm5, mm3 movq mm5, mm3
...@@ -1904,7 +1904,7 @@ cglobal pred8x8l_vertical_right_8, 4,5,7 ...@@ -1904,7 +1904,7 @@ cglobal pred8x8l_vertical_right_8, 4,5,7
psllq mm5, 56 psllq mm5, 56
psrlq mm5, 56 psrlq mm5, 56
pxor mm2, mm5 pxor mm2, mm5
test r2, r2 test r2d, r2d
jnz .do_top jnz .do_top
.fix_tr_1: .fix_tr_1:
movq mm5, mm3 movq mm5, mm3
...@@ -1924,9 +1924,9 @@ cglobal pred8x8l_vertical_right_8, 4,5,7 ...@@ -1924,9 +1924,9 @@ cglobal pred8x8l_vertical_right_8, 4,5,7
movq mm4, mm3 movq mm4, mm3
PALIGNR mm2, mm0, 7, mm0 PALIGNR mm2, mm0, 7, mm0
PALIGNR mm1, mm4, 1, mm4 PALIGNR mm1, mm4, 1, mm4
test r1, r1 test r1d, r1d
jz .fix_lt_2 jz .fix_lt_2
test r2, r2 test r2d, r2d
jz .fix_tr_1 jz .fix_tr_1
.do_top: .do_top:
PRED4x4_LOWPASS mm6, mm2, mm1, mm3, mm5 PRED4x4_LOWPASS mm6, mm2, mm1, mm3, mm5
...@@ -1991,9 +1991,9 @@ cglobal pred8x8l_vertical_left_8, 4,4 ...@@ -1991,9 +1991,9 @@ cglobal pred8x8l_vertical_left_8, 4,4
movq mm4, mm3 movq mm4, mm3
PALIGNR mm2, mm0, 7, mm0 PALIGNR mm2, mm0, 7, mm0
PALIGNR mm1, mm4, 1, mm4 PALIGNR mm1, mm4, 1, mm4
test r1, r1 test r1d, r1d
jz .fix_lt_2 jz .fix_lt_2
test r2, r2 test r2d, r2d
jz .fix_tr_1 jz .fix_tr_1
jmp .do_top jmp .do_top
.fix_lt_2: .fix_lt_2:
...@@ -2002,7 +2002,7 @@ cglobal pred8x8l_vertical_left_8, 4,4 ...@@ -2002,7 +2002,7 @@ cglobal pred8x8l_vertical_left_8, 4,4
psllq mm5, 56 psllq mm5, 56
psrlq mm5, 56 psrlq mm5, 56
pxor mm2, mm5 pxor mm2, mm5
test r2, r2 test r2d, r2d
jnz .do_top jnz .do_top
.fix_tr_1: .fix_tr_1:
movq mm5, mm3 movq mm5, mm3
...@@ -2018,7 +2018,7 @@ cglobal pred8x8l_vertical_left_8, 4,4 ...@@ -2018,7 +2018,7 @@ cglobal pred8x8l_vertical_left_8, 4,4
.do_top: .do_top:
PRED4x4_LOWPASS mm4, mm2, mm1, mm3, mm5 PRED4x4_LOWPASS mm4, mm2, mm1, mm3, mm5
movq2dq xmm4, mm4 movq2dq xmm4, mm4
test r2, r2 test r2d, r2d
jz .fix_tr_2 jz .fix_tr_2
movq mm0, [r0+8] movq mm0, [r0+8]
movq mm5, mm0 movq mm5, mm0
...@@ -2076,7 +2076,7 @@ cglobal pred8x8l_horizontal_up_8, 4,4 ...@@ -2076,7 +2076,7 @@ cglobal pred8x8l_horizontal_up_8, 4,4
sub r0, r3 sub r0, r3
lea r2, [r0+r3*2] lea r2, [r0+r3*2]
movq mm0, [r0+r3*1-8] movq mm0, [r0+r3*1-8]
test r1, r1 test r1d, r1d
lea r1, [r0+r3] lea r1, [r0+r3]
cmovnz r1, r0 cmovnz r1, r0
punpckhbw mm0, [r1+r3*0-8] punpckhbw mm0, [r1+r3*0-8]
...@@ -2185,7 +2185,7 @@ cglobal pred8x8l_horizontal_down_8, 4,5 ...@@ -2185,7 +2185,7 @@ cglobal pred8x8l_horizontal_down_8, 4,5
movq mm2, mm3 movq mm2, mm3
PALIGNR mm4, mm0, 7, mm0 PALIGNR mm4, mm0, 7, mm0
PALIGNR mm1, mm2, 1, mm2 PALIGNR mm1, mm2, 1, mm2
test r1, r1 test r1d, r1d
jnz .do_left jnz .do_left
.fix_lt_1: .fix_lt_1:
movq mm5, mm3 movq mm5, mm3
...@@ -2200,7 +2200,7 @@ cglobal pred8x8l_horizontal_down_8, 4,5 ...@@ -2200,7 +2200,7 @@ cglobal pred8x8l_horizontal_down_8, 4,5
psllq mm5, 56 psllq mm5, 56
psrlq mm5, 56 psrlq mm5, 56
pxor mm2, mm5 pxor mm2, mm5
test r2, r2 test r2d, r2d
jnz .do_top jnz .do_top
.fix_tr_1: .fix_tr_1:
movq mm5, mm3 movq mm5, mm3
...@@ -2225,9 +2225,9 @@ cglobal pred8x8l_horizontal_down_8, 4,5 ...@@ -2225,9 +2225,9 @@ cglobal pred8x8l_horizontal_down_8, 4,5
movq mm4, mm3 movq mm4, mm3
PALIGNR mm2, mm0, 7, mm0 PALIGNR mm2, mm0, 7, mm0
PALIGNR mm1, mm4, 1, mm4 PALIGNR mm1, mm4, 1, mm4
test r1, r1 test r1d, r1d
jz .fix_lt_2 jz .fix_lt_2
test r2, r2 test r2d, r2d
jz .fix_tr_1 jz .fix_tr_1
.do_top: .do_top:
PRED4x4_LOWPASS mm4, mm2, mm1, mm3, mm5 PRED4x4_LOWPASS mm4, mm2, mm1, mm3, mm5
...@@ -2300,7 +2300,7 @@ cglobal pred8x8l_horizontal_down_8, 4,5 ...@@ -2300,7 +2300,7 @@ cglobal pred8x8l_horizontal_down_8, 4,5
movq mm2, mm3 movq mm2, mm3
PALIGNR mm4, mm0, 7, mm0 PALIGNR mm4, mm0, 7, mm0
PALIGNR mm1, mm2, 1, mm2 PALIGNR mm1, mm2, 1, mm2
test r1, r1 test r1d, r1d
jnz .do_left jnz .do_left
.fix_lt_1: .fix_lt_1:
movq mm5, mm3 movq mm5, mm3
...@@ -2315,7 +2315,7 @@ cglobal pred8x8l_horizontal_down_8, 4,5 ...@@ -2315,7 +2315,7 @@ cglobal pred8x8l_horizontal_down_8, 4,5
psllq mm5, 56 psllq mm5, 56
psrlq mm5, 56 psrlq mm5, 56
pxor mm2, mm5 pxor mm2, mm5
test r2, r2 test r2d, r2d
jnz .do_top jnz .do_top
.fix_tr_1: .fix_tr_1:
movq mm5, mm3 movq mm5, mm3
...@@ -2346,14 +2346,14 @@ cglobal pred8x8l_horizontal_down_8, 4,5 ...@@ -2346,14 +2346,14 @@ cglobal pred8x8l_horizontal_down_8, 4,5
movq mm4, mm3 movq mm4, mm3
PALIGNR mm2, mm0, 7, mm0 PALIGNR mm2, mm0, 7, mm0
PALIGNR mm1, mm4, 1, mm4 PALIGNR mm1, mm4, 1, mm4
test r1, r1 test r1d, r1d
jz .fix_lt_2 jz .fix_lt_2
test r2, r2 test r2d, r2d
jz .fix_tr_1 jz .fix_tr_1
.do_top: .do_top:
PRED4x4_LOWPASS mm4, mm2, mm1, mm3, mm5 PRED4x4_LOWPASS mm4, mm2, mm1, mm3, mm5
movq2dq xmm1, mm4 movq2dq xmm1, mm4
test r2, r2 test r2d, r2d
jz .fix_tr_2 jz .fix_tr_2
movq mm0, [r0+8] movq mm0, [r0+8]
movq mm5, mm0 movq mm5, mm0
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment