You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-08-15 14:13:16 +02:00
arm: Allow overriding the alignment set in the function macro
The function macro always sets .align 2 before declaring the function label (since5c5e1ea3
) and always sets the section to .text (since278caa6a
). The .align 5 before certain functions, added infc252eba
, were added before .text and .align were added to the function macro and thus became useless/unused when the function macro got them. This restores the original intention, to align the loop entry points. Signed-off-by: Martin Storsjö <martin@martin.st>
This commit is contained in:
@@ -22,9 +22,8 @@
|
|||||||
#include "config.h"
|
#include "config.h"
|
||||||
#include "libavutil/arm/asm.S"
|
#include "libavutil/arm/asm.S"
|
||||||
|
|
||||||
.align 5
|
|
||||||
@ void ff_add_pixels_clamped_arm(int16_t *block, uint8_t *dest, int stride)
|
@ void ff_add_pixels_clamped_arm(int16_t *block, uint8_t *dest, int stride)
|
||||||
function ff_add_pixels_clamped_arm, export=1
|
function ff_add_pixels_clamped_arm, export=1, align=5
|
||||||
push {r4-r10}
|
push {r4-r10}
|
||||||
mov r10, #8
|
mov r10, #8
|
||||||
1:
|
1:
|
||||||
|
@@ -89,8 +89,7 @@
|
|||||||
.endm
|
.endm
|
||||||
|
|
||||||
@ ----------------------------------------------------------------
|
@ ----------------------------------------------------------------
|
||||||
.align 5
|
function ff_put_pixels16_arm, export=1, align=5
|
||||||
function ff_put_pixels16_arm, export=1
|
|
||||||
@ void func(uint8_t *block, const uint8_t *pixels, int line_size, int h)
|
@ void func(uint8_t *block, const uint8_t *pixels, int line_size, int h)
|
||||||
@ block = word aligned, pixles = unaligned
|
@ block = word aligned, pixles = unaligned
|
||||||
pld [r1]
|
pld [r1]
|
||||||
@@ -141,8 +140,7 @@ function ff_put_pixels16_arm, export=1
|
|||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
@ ----------------------------------------------------------------
|
@ ----------------------------------------------------------------
|
||||||
.align 5
|
function ff_put_pixels8_arm, export=1, align=5
|
||||||
function ff_put_pixels8_arm, export=1
|
|
||||||
@ void func(uint8_t *block, const uint8_t *pixels, int line_size, int h)
|
@ void func(uint8_t *block, const uint8_t *pixels, int line_size, int h)
|
||||||
@ block = word aligned, pixles = unaligned
|
@ block = word aligned, pixles = unaligned
|
||||||
pld [r1]
|
pld [r1]
|
||||||
@@ -193,8 +191,7 @@ function ff_put_pixels8_arm, export=1
|
|||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
@ ----------------------------------------------------------------
|
@ ----------------------------------------------------------------
|
||||||
.align 5
|
function ff_put_pixels8_x2_arm, export=1, align=5
|
||||||
function ff_put_pixels8_x2_arm, export=1
|
|
||||||
@ void func(uint8_t *block, const uint8_t *pixels, int line_size, int h)
|
@ void func(uint8_t *block, const uint8_t *pixels, int line_size, int h)
|
||||||
@ block = word aligned, pixles = unaligned
|
@ block = word aligned, pixles = unaligned
|
||||||
pld [r1]
|
pld [r1]
|
||||||
@@ -252,8 +249,7 @@ function ff_put_pixels8_x2_arm, export=1
|
|||||||
pop {r4-r10,pc}
|
pop {r4-r10,pc}
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
.align 5
|
function ff_put_no_rnd_pixels8_x2_arm, export=1, align=5
|
||||||
function ff_put_no_rnd_pixels8_x2_arm, export=1
|
|
||||||
@ void func(uint8_t *block, const uint8_t *pixels, int line_size, int h)
|
@ void func(uint8_t *block, const uint8_t *pixels, int line_size, int h)
|
||||||
@ block = word aligned, pixles = unaligned
|
@ block = word aligned, pixles = unaligned
|
||||||
pld [r1]
|
pld [r1]
|
||||||
@@ -313,8 +309,7 @@ endfunc
|
|||||||
|
|
||||||
|
|
||||||
@ ----------------------------------------------------------------
|
@ ----------------------------------------------------------------
|
||||||
.align 5
|
function ff_put_pixels8_y2_arm, export=1, align=5
|
||||||
function ff_put_pixels8_y2_arm, export=1
|
|
||||||
@ void func(uint8_t *block, const uint8_t *pixels, int line_size, int h)
|
@ void func(uint8_t *block, const uint8_t *pixels, int line_size, int h)
|
||||||
@ block = word aligned, pixles = unaligned
|
@ block = word aligned, pixles = unaligned
|
||||||
pld [r1]
|
pld [r1]
|
||||||
@@ -411,8 +406,7 @@ function ff_put_pixels8_y2_arm, export=1
|
|||||||
pop {r4-r11,pc}
|
pop {r4-r11,pc}
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
.align 5
|
function ff_put_no_rnd_pixels8_y2_arm, export=1, align=5
|
||||||
function ff_put_no_rnd_pixels8_y2_arm, export=1
|
|
||||||
@ void func(uint8_t *block, const uint8_t *pixels, int line_size, int h)
|
@ void func(uint8_t *block, const uint8_t *pixels, int line_size, int h)
|
||||||
@ block = word aligned, pixles = unaligned
|
@ block = word aligned, pixles = unaligned
|
||||||
pld [r1]
|
pld [r1]
|
||||||
@@ -578,8 +572,7 @@ endfunc
|
|||||||
pop {r4-r11,pc}
|
pop {r4-r11,pc}
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
.align 5
|
function ff_put_pixels8_xy2_arm, export=1, align=5
|
||||||
function ff_put_pixels8_xy2_arm, export=1
|
|
||||||
@ void func(uint8_t *block, const uint8_t *pixels, int line_size, int h)
|
@ void func(uint8_t *block, const uint8_t *pixels, int line_size, int h)
|
||||||
@ block = word aligned, pixles = unaligned
|
@ block = word aligned, pixles = unaligned
|
||||||
pld [r1]
|
pld [r1]
|
||||||
@@ -594,8 +587,7 @@ function ff_put_pixels8_xy2_arm, export=1
|
|||||||
4: RND_XY2_EXPAND 3, lsl
|
4: RND_XY2_EXPAND 3, lsl
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
.align 5
|
function ff_put_no_rnd_pixels8_xy2_arm, export=1, align=5
|
||||||
function ff_put_no_rnd_pixels8_xy2_arm, export=1
|
|
||||||
@ void func(uint8_t *block, const uint8_t *pixels, int line_size, int h)
|
@ void func(uint8_t *block, const uint8_t *pixels, int line_size, int h)
|
||||||
@ block = word aligned, pixles = unaligned
|
@ block = word aligned, pixles = unaligned
|
||||||
pld [r1]
|
pld [r1]
|
||||||
|
@@ -54,7 +54,7 @@
|
|||||||
T .thumb
|
T .thumb
|
||||||
ELF .eabi_attribute 25, 1 @ Tag_ABI_align_preserved
|
ELF .eabi_attribute 25, 1 @ Tag_ABI_align_preserved
|
||||||
|
|
||||||
.macro function name, export=0
|
.macro function name, export=0, align=2
|
||||||
.set .Lpic_idx, 0
|
.set .Lpic_idx, 0
|
||||||
.set .Lpic_gp, 0
|
.set .Lpic_gp, 0
|
||||||
.macro endfunc
|
.macro endfunc
|
||||||
@@ -69,7 +69,7 @@ ELF .size \name, . - \name
|
|||||||
.purgem endfunc
|
.purgem endfunc
|
||||||
.endm
|
.endm
|
||||||
.text
|
.text
|
||||||
.align 2
|
.align \align
|
||||||
.if \export
|
.if \export
|
||||||
.global EXTERN_ASM\name
|
.global EXTERN_ASM\name
|
||||||
EXTERN_ASM\name:
|
EXTERN_ASM\name:
|
||||||
|
Reference in New Issue
Block a user