comparison arm/h264idct_neon.S @ 11443:361a5fcb4393 libavcodec

ARM: set size of asm functions in object files
author mru
date Tue, 09 Mar 2010 16:17:56 +0000
parents 9cea4112ffaf
children ba14e3adeccd
comparison
equal deleted inserted replaced
11442:fe32d9ba1c86 11443:361a5fcb4393
67 vst1.32 {d1[1]}, [r0,:32], r2 67 vst1.32 {d1[1]}, [r0,:32], r2
68 vst1.32 {d0[1]}, [r0,:32], r2 68 vst1.32 {d0[1]}, [r0,:32], r2
69 vst1.32 {d1[0]}, [r0,:32], r2 69 vst1.32 {d1[0]}, [r0,:32], r2
70 70
71 bx lr 71 bx lr
72 .endfunc 72 endfunc
73 73
74 function ff_h264_idct_dc_add_neon, export=1 74 function ff_h264_idct_dc_add_neon, export=1
75 vld1.16 {d2[],d3[]}, [r1,:16] 75 vld1.16 {d2[],d3[]}, [r1,:16]
76 vrshr.s16 q1, q1, #6 76 vrshr.s16 q1, q1, #6
77 vld1.32 {d0[0]}, [r0,:32], r2 77 vld1.32 {d0[0]}, [r0,:32], r2
86 vst1.32 {d0[0]}, [r0,:32], r2 86 vst1.32 {d0[0]}, [r0,:32], r2
87 vst1.32 {d0[1]}, [r0,:32], r2 87 vst1.32 {d0[1]}, [r0,:32], r2
88 vst1.32 {d1[0]}, [r0,:32], r2 88 vst1.32 {d1[0]}, [r0,:32], r2
89 vst1.32 {d1[1]}, [r0,:32], r2 89 vst1.32 {d1[1]}, [r0,:32], r2
90 bx lr 90 bx lr
91 .endfunc 91 endfunc
92 92
93 function ff_h264_idct_add16_neon, export=1 93 function ff_h264_idct_add16_neon, export=1
94 push {r4-r8,lr} 94 push {r4-r8,lr}
95 mov r4, r0 95 mov r4, r0
96 mov r5, r1 96 mov r5, r1
113 blx lr 113 blx lr
114 2: subs ip, ip, #1 114 2: subs ip, ip, #1
115 add r1, r1, #32 115 add r1, r1, #32
116 bne 1b 116 bne 1b
117 pop {r4-r8,pc} 117 pop {r4-r8,pc}
118 .endfunc 118 endfunc
119 119
120 function ff_h264_idct_add16intra_neon, export=1 120 function ff_h264_idct_add16intra_neon, export=1
121 push {r4-r8,lr} 121 push {r4-r8,lr}
122 mov r4, r0 122 mov r4, r0
123 mov r5, r1 123 mov r5, r1
138 blxne lr 138 blxne lr
139 subs ip, ip, #1 139 subs ip, ip, #1
140 add r1, r1, #32 140 add r1, r1, #32
141 bne 1b 141 bne 1b
142 pop {r4-r8,pc} 142 pop {r4-r8,pc}
143 .endfunc 143 endfunc
144 144
145 function ff_h264_idct_add8_neon, export=1 145 function ff_h264_idct_add8_neon, export=1
146 push {r4-r10,lr} 146 push {r4-r10,lr}
147 ldm r0, {r4,r9} 147 ldm r0, {r4,r9}
148 add r5, r1, #16*4 148 add r5, r1, #16*4
165 blxne lr 165 blxne lr
166 subs ip, ip, #1 166 subs ip, ip, #1
167 add r1, r1, #32 167 add r1, r1, #32
168 bne 1b 168 bne 1b
169 pop {r4-r10,pc} 169 pop {r4-r10,pc}
170 .endfunc 170 endfunc
171 171
172 .section .rodata 172 .section .rodata
173 scan8: .byte 4+1*8, 5+1*8, 4+2*8, 5+2*8 173 scan8: .byte 4+1*8, 5+1*8, 4+2*8, 5+2*8
174 .byte 6+1*8, 7+1*8, 6+2*8, 7+2*8 174 .byte 6+1*8, 7+1*8, 6+2*8, 7+2*8
175 .byte 4+3*8, 5+3*8, 4+4*8, 5+4*8 175 .byte 4+3*8, 5+3*8, 4+4*8, 5+4*8