Revision 66ec243d

View differences:

libavcodec/arm/dsputil_armv6.S
564 564

  
565 565
        pop             {r4-r9, pc}
566 566
.endfunc
567

  
568
function ff_pix_norm1_armv6, export=1
569
        push            {r4-r6, lr}
570
        mov             r12, #16
571
        mov             lr,  #0
572
1:
573
        ldm             r0,  {r2-r5}
574
        uxtb16          r6,  r2
575
        uxtb16          r2,  r2,  ror #8
576
        smlad           lr,  r6,  r6,  lr
577
        uxtb16          r6,  r3
578
        smlad           lr,  r2,  r2,  lr
579
        uxtb16          r3,  r3,  ror #8
580
        smlad           lr,  r6,  r6,  lr
581
        uxtb16          r6,  r4
582
        smlad           lr,  r3,  r3,  lr
583
        uxtb16          r4,  r4,  ror #8
584
        smlad           lr,  r6,  r6,  lr
585
        uxtb16          r6,  r5
586
        smlad           lr,  r4,  r4,  lr
587
        uxtb16          r5,  r5,  ror #8
588
        smlad           lr,  r6,  r6,  lr
589
        subs            r12, r12, #1
590
        add             r0,  r0,  r1
591
        smlad           lr,  r5,  r5,  lr
592
        bgt             1b
593

  
594
        mov             r0,  lr
595
        pop             {r4-r6, pc}
596
.endfunc
libavcodec/arm/dsputil_init_armv6.c
67 67
int ff_sse16_armv6(void *s, uint8_t *blk1, uint8_t *blk2,
68 68
                   int line_size, int h);
69 69

  
70
int ff_pix_norm1_armv6(uint8_t *pix, int line_size);
71

  
70 72
void av_cold ff_dsputil_init_armv6(DSPContext* c, AVCodecContext *avctx)
71 73
{
72 74
    if (!avctx->lowres && (avctx->idct_algo == FF_IDCT_AUTO ||
......
112 114
    c->sad[1] = ff_pix_abs8_armv6;
113 115

  
114 116
    c->sse[0] = ff_sse16_armv6;
117

  
118
    c->pix_norm1 = ff_pix_norm1_armv6;
115 119
}

Also available in: Unified diff