mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2025-02-26 00:31:12 +00:00
Merge remote-tracking branch 'qatar/master'
* qatar/master: arm: hpeldsp: prevent overreads in armv6 asm Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
commit
a74bab7079
@ -132,11 +132,12 @@ function ff_put_pixels8_y2_armv6, export=1
|
|||||||
uhadd8 r9, r5, r7
|
uhadd8 r9, r5, r7
|
||||||
eor r11, r5, r7
|
eor r11, r5, r7
|
||||||
and r10, r10, r12
|
and r10, r10, r12
|
||||||
ldr_pre r4, r1, r2
|
ldrc_pre ne, r4, r1, r2
|
||||||
uadd8 r8, r8, r10
|
uadd8 r8, r8, r10
|
||||||
and r11, r11, r12
|
and r11, r11, r12
|
||||||
uadd8 r9, r9, r11
|
uadd8 r9, r9, r11
|
||||||
ldr r5, [r1, #4]
|
it ne
|
||||||
|
ldrne r5, [r1, #4]
|
||||||
uhadd8 r10, r4, r6
|
uhadd8 r10, r4, r6
|
||||||
eor r6, r4, r6
|
eor r6, r4, r6
|
||||||
uhadd8 r11, r5, r7
|
uhadd8 r11, r5, r7
|
||||||
@ -144,10 +145,11 @@ function ff_put_pixels8_y2_armv6, export=1
|
|||||||
eor r7, r5, r7
|
eor r7, r5, r7
|
||||||
uadd8 r10, r10, r6
|
uadd8 r10, r10, r6
|
||||||
and r7, r7, r12
|
and r7, r7, r12
|
||||||
ldr_pre r6, r1, r2
|
ldrc_pre ne, r6, r1, r2
|
||||||
uadd8 r11, r11, r7
|
uadd8 r11, r11, r7
|
||||||
strd_post r8, r9, r0, r2
|
strd_post r8, r9, r0, r2
|
||||||
ldr r7, [r1, #4]
|
it ne
|
||||||
|
ldrne r7, [r1, #4]
|
||||||
strd_post r10, r11, r0, r2
|
strd_post r10, r11, r0, r2
|
||||||
bne 1b
|
bne 1b
|
||||||
|
|
||||||
@ -192,13 +194,15 @@ function ff_put_pixels8_y2_no_rnd_armv6, export=1
|
|||||||
1:
|
1:
|
||||||
subs r3, r3, #2
|
subs r3, r3, #2
|
||||||
uhadd8 r8, r4, r6
|
uhadd8 r8, r4, r6
|
||||||
ldr_pre r4, r1, r2
|
ldrc_pre ne, r4, r1, r2
|
||||||
uhadd8 r9, r5, r7
|
uhadd8 r9, r5, r7
|
||||||
ldr r5, [r1, #4]
|
it ne
|
||||||
|
ldrne r5, [r1, #4]
|
||||||
uhadd8 r12, r4, r6
|
uhadd8 r12, r4, r6
|
||||||
ldr_pre r6, r1, r2
|
ldrc_pre ne, r6, r1, r2
|
||||||
uhadd8 r14, r5, r7
|
uhadd8 r14, r5, r7
|
||||||
ldr r7, [r1, #4]
|
it ne
|
||||||
|
ldrne r7, [r1, #4]
|
||||||
stm r0, {r8,r9}
|
stm r0, {r8,r9}
|
||||||
add r0, r0, r2
|
add r0, r0, r2
|
||||||
stm r0, {r12,r14}
|
stm r0, {r12,r14}
|
||||||
|
@ -216,6 +216,13 @@ T ldr \rt, [\rn]
|
|||||||
T add \rn, \rn, \rm
|
T add \rn, \rn, \rm
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
|
.macro ldrc_pre cc, rt, rn, rm:vararg
|
||||||
|
A ldr\cc \rt, [\rn, \rm]!
|
||||||
|
T itt \cc
|
||||||
|
T add\cc \rn, \rn, \rm
|
||||||
|
T ldr\cc \rt, [\rn]
|
||||||
|
.endm
|
||||||
|
|
||||||
.macro ldrd_reg rt, rt2, rn, rm
|
.macro ldrd_reg rt, rt2, rn, rm
|
||||||
A ldrd \rt, \rt2, [\rn, \rm]
|
A ldrd \rt, \rt2, [\rn, \rm]
|
||||||
T add \rt, \rn, \rm
|
T add \rt, \rn, \rm
|
||||||
|
Loading…
Reference in New Issue
Block a user