From 27885fad3ed5d476aec8dc5cf0aa81259835fb6a Mon Sep 17 00:00:00 2001 From: Marc Hoffman Date: Sun, 13 May 2007 20:19:22 +0000 Subject: [PATCH] Blackfin DSP utilities: add DEFUN_END DEFUN_END macro adds the size information to the symbol table. This is introduces no functionnal change, it's only meant to simplify e.g. debugging Patch by Marc Hoffman %mmh A pleasantst P com% Original thread: Date: May 5, 2007 12:26 PM Subject: [FFmpeg-devel] PATCH Blackfin DSP utilities, DEFUN_END added Originally committed as revision 9019 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/bfin/config_bfin.h | 5 +++++ libavcodec/bfin/fdct_bfin.S | 1 + libavcodec/bfin/idct_bfin.S | 1 + libavcodec/bfin/pixels_bfin.S | 18 ++++++++++++++++++ 4 files changed, 25 insertions(+) diff --git a/libavcodec/bfin/config_bfin.h b/libavcodec/bfin/config_bfin.h index 1f5080900d..eac2e1e2e7 100644 --- a/libavcodec/bfin/config_bfin.h +++ b/libavcodec/bfin/config_bfin.h @@ -39,8 +39,13 @@ DEFUN(put_pixels_clamped,mL1, #define DEFUN(fname,where,interface) \ .section where; \ .global _ff_bfin_ ## fname ; \ + .type _ff_bfin_ ## fname, STT_FUNC; \ .align 8; \ _ff_bfin_ ## fname +#define DEFUN_END(fname) \ + .size _ff_bfin_ ## fname, . - _ff_bfin_ ## fname + + #endif diff --git a/libavcodec/bfin/fdct_bfin.S b/libavcodec/bfin/fdct_bfin.S index 8230673e83..9f3ef1fa8a 100644 --- a/libavcodec/bfin/fdct_bfin.S +++ b/libavcodec/bfin/fdct_bfin.S @@ -321,4 +321,5 @@ DEFUN(fdct,mL1, L3=0; (r7:4,p5:3) = [sp++]; RTS; +DEFUN_END(fdct) diff --git a/libavcodec/bfin/idct_bfin.S b/libavcodec/bfin/idct_bfin.S index f6904c189b..e40e5e0085 100644 --- a/libavcodec/bfin/idct_bfin.S +++ b/libavcodec/bfin/idct_bfin.S @@ -293,5 +293,6 @@ DEFUN(idct,mL1, (R7:4,P5:3)=[SP++]; unlink; RTS; +DEFUN_END(idct) diff --git a/libavcodec/bfin/pixels_bfin.S b/libavcodec/bfin/pixels_bfin.S index 2968fcff6f..69b493b647 100644 --- a/libavcodec/bfin/pixels_bfin.S +++ b/libavcodec/bfin/pixels_bfin.S @@ -48,6 +48,7 @@ ppc$1: R2 = Max(R0, R4) (V) || [I1++M1] = R6; (R7:4) = [SP++]; RTS; +DEFUN_END(put_pixels_clamped) DEFUN(add_pixels_clamped,mL1, (DCTELEM *block, uint8_t *dest, int line_size)): @@ -80,6 +81,7 @@ apc$3: R6 = BYTEOP3P(R1:0, R3:2) (LO) || [I2++M0] = R6 || R2 = [I1]; (R7:4) = [SP++]; RTS; +DEFUN_END(add_pixels_clamped) /* @@ -121,6 +123,7 @@ pp8$1: DISALGNEXCPT || R2 = [I1++] || [I3++M3] = R7; (r7:6) = [sp++]; RTS; +DEFUN_END(put_pixels8uc) DEFUN(put_pixels16uc,mL1, (uint8_t *block, const uint8_t *s0, const uint8_t *s1, @@ -155,6 +158,7 @@ pp16$1: DISALGNEXCPT || R2 = [I1++] || [I3++M3] = R7; (r7:6) = [sp++]; unlink; RTS; +DEFUN_END(put_pixels16uc) @@ -184,6 +188,7 @@ pp8$3: DISALGNEXCPT || R2 = [I1++] || [I3++M3] = R7; (r7:6) = [sp++]; RTS; +DEFUN_END(put_pixels8uc_nornd) DEFUN(put_pixels16uc_nornd,mL1, (uint8_t *block, const uint8_t *s0, const uint8_t *s1, @@ -217,6 +222,7 @@ pp16$3: DISALGNEXCPT || R2 = [I1++] || [I3++M3] = R7; (r7:6) = [sp++]; RTS; +DEFUN_END(put_pixels16uc_nornd) DEFUN(z_put_pixels16_xy2,mL1, (uint8_t *block, const uint8_t *s0, @@ -275,6 +281,7 @@ LE$16O: DISALGNEXCPT || R2 = [I1++] || [I3++M2] = R5; (r7:4) = [sp++]; unlink; rts; +DEFUN_END(z_put_pixels16_xy2) DEFUN(put_pixels16_xy2_nornd,mL1, (uint8_t *block, const uint8_t *s0, @@ -332,6 +339,7 @@ LE$16OT:DISALGNEXCPT || R2 = [I1++] || [I3++M2] = R5; (r7:4) = [sp++]; unlink; rts; +DEFUN_END(put_pixels16_xy2_nornd) DEFUN(z_put_pixels8_xy2,mL1, (uint8_t *block, const uint8_t *s0, @@ -381,6 +389,7 @@ LE$8O: DISALGNEXCPT || R2 =[I1++] || [I3++M2] = R5; (r7:4) = [sp++]; unlink; rts; +DEFUN_END(z_put_pixels8_xy2) DEFUN(put_pixels8_xy2_nornd,mL1, (uint8_t *block, const uint8_t *s0, int line_size, int h)): @@ -458,6 +467,7 @@ DEFUN(diff_pixels,mL1, (r7:4) = [sp++]; unlink; rts; +DEFUN_END(put_pixels8_xy2_nornd) /* for (i = 0; i < 16; i++) { @@ -504,6 +514,7 @@ LE$PS: r6=r6+|+r4; (r7:4) = [sp++]; unlink; rts; +DEFUN_END(pix_sum) DEFUN(get_pixels,mL1, @@ -528,6 +539,7 @@ gp8$1: [I3++]=R5 (r7:4) = [sp++]; RTS; +DEFUN_END(get_pixels) /* sad = sad16x16 (ubyte *mb, ubyte *refwin, srcwidth, refwinwidth, h) */ @@ -559,6 +571,7 @@ e$16: SAA (R1:0,R3:2) (R) || R0 = [I0++] || R2 = [I1++]; R0 = R2 + R3 ; unlink; RTS; +DEFUN_END(z_sad16x16) /* sad = sad8x8 (ubyte *mb, ubyte *refwin, int srcwidth, int refwinwidth, int h) */ /* 36 cycles */ @@ -586,6 +599,7 @@ e$8: DISALGNEXCPT || R1 = [I0++] || R3 = [I1++]; R3=A1.L+A1.H, R2=A0.L+A0.H ; R0 = R2 + R3 ; RTS; +DEFUN_END(z_sad8x8) DEFUN(pix_norm1,mL1, (uint8_t * pix, int line_size)): @@ -629,6 +643,7 @@ _pix_norm1_blkfn_loopEnd: (R7:4,P5:3)=[SP++]; RTS; +DEFUN_END(pix_norm1) DEFUN(sse4,mL1, (void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h)): @@ -655,6 +670,7 @@ DEFUN(sse4,mL1, (r7:6) = [sp++]; unlink; rts; +DEFUN_END(sse4) DEFUN(sse8,mL1, (void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h)): @@ -684,6 +700,7 @@ DEFUN(sse8,mL1, (r7:6) = [sp++]; unlink; rts; +DEFUN_END(sse8) DEFUN(sse16,mL1, (void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h)): @@ -719,5 +736,6 @@ DEFUN(sse16,mL1, (r7:6) = [sp++]; unlink; rts; +DEFUN_END(sse16)