Revision 0115b3ea

View differences:

libavcodec/arm/h264dsp_neon.S
1064 1064
        .endfunc
1065 1065

  
1066 1066
function ff_put_h264_qpel8_mc11_neon, export=1
1067
        push            {r0, r1, r2, lr}
1067
        push            {r0, r1, r11, lr}
1068 1068
put_h264_qpel8_mc11:
1069 1069
        lowpass_const   r3
1070
        mov             r11, sp
1071
        bic             sp,  sp,  #15
1070 1072
        sub             sp,  sp,  #64
1071 1073
        mov             r0,  sp
1072 1074
        sub             r1,  r1,  #2
......
1074 1076
        mov             ip,  #8
1075 1077
        vpush           {d8-d15}
1076 1078
        bl              put_h264_qpel8_h_lowpass_neon
1077
        ldrd            r0,  [sp, #128]
1079
        ldrd            r0,  [r11]
1078 1080
        mov             r3,  r2
1079 1081
        add             ip,  sp,  #64
1080 1082
        sub             r1,  r1,  r2, lsl #1
1081 1083
        mov             r2,  #8
1082 1084
        bl              put_h264_qpel8_v_lowpass_l2_neon
1083 1085
        vpop            {d8-d15}
1084
        add             sp,  sp,  #76
1085
        pop             {pc}
1086
        add             sp,  r11, #8
1087
        pop             {r11, pc}
1086 1088
        .endfunc
1087 1089

  
1088 1090
function ff_put_h264_qpel8_mc21_neon, export=1
......
1112 1114

  
1113 1115
function ff_put_h264_qpel8_mc31_neon, export=1
1114 1116
        add             r1,  r1,  #1
1115
        push            {r0, r1, r2, lr}
1117
        push            {r0, r1, r11, lr}
1116 1118
        sub             r1,  r1,  #1
1117 1119
        b               put_h264_qpel8_mc11
1118 1120
        .endfunc
......
1181 1183
        .endfunc
1182 1184

  
1183 1185
function ff_put_h264_qpel8_mc13_neon, export=1
1184
        push            {r0, r1, r2, lr}
1186
        push            {r0, r1, r11, lr}
1185 1187
        add             r1,  r1,  r2
1186 1188
        b               put_h264_qpel8_mc11
1187 1189
        .endfunc
......
1194 1196

  
1195 1197
function ff_put_h264_qpel8_mc33_neon, export=1
1196 1198
        add             r1,  r1,  #1
1197
        push            {r0, r1, r2, lr}
1199
        push            {r0, r1, r11, lr}
1198 1200
        add             r1,  r1,  r2
1199 1201
        sub             r1,  r1,  #1
1200 1202
        b               put_h264_qpel8_mc11
......
1235 1237
        .endfunc
1236 1238

  
1237 1239
function ff_put_h264_qpel16_mc11_neon, export=1
1238
        push            {r0, r1, r4, lr}
1240
        push            {r0, r1, r4, r11, lr}
1239 1241
put_h264_qpel16_mc11:
1240 1242
        lowpass_const   r3
1243
        mov             r11, sp
1244
        bic             sp,  sp,  #15
1241 1245
        sub             sp,  sp,  #256
1242 1246
        mov             r0,  sp
1243 1247
        sub             r1,  r1,  #2
1244 1248
        mov             r3,  #16
1245 1249
        vpush           {d8-d15}
1246 1250
        bl              put_h264_qpel16_h_lowpass_neon
1247
        add             r0,  sp,  #256
1248
        ldrd            r0,  [r0, #64]
1251
        ldrd            r0,  [r11]
1249 1252
        mov             r3,  r2
1250 1253
        add             ip,  sp,  #64
1251 1254
        sub             r1,  r1,  r2, lsl #1
1252 1255
        mov             r2,  #16
1253 1256
        bl              put_h264_qpel16_v_lowpass_l2_neon
1254 1257
        vpop            {d8-d15}
1255
        add             sp,  sp,  #(256+8)
1256
        pop             {r4, pc}
1258
        add             sp,  r11, #8
1259
        pop             {r4, r11, pc}
1257 1260
        .endfunc
1258 1261

  
1259 1262
function ff_put_h264_qpel16_mc21_neon, export=1
......
1280 1283

  
1281 1284
function ff_put_h264_qpel16_mc31_neon, export=1
1282 1285
        add             r1,  r1,  #1
1283
        push            {r0, r1, r4, lr}
1286
        push            {r0, r1, r4, r11, lr}
1284 1287
        sub             r1,  r1,  #1
1285 1288
        b               put_h264_qpel16_mc11
1286 1289
        .endfunc
......
1349 1352
        .endfunc
1350 1353

  
1351 1354
function ff_put_h264_qpel16_mc13_neon, export=1
1352
        push            {r0, r1, r4, lr}
1355
        push            {r0, r1, r4, r11, lr}
1353 1356
        add             r1,  r1,  r2
1354 1357
        b               put_h264_qpel16_mc11
1355 1358
        .endfunc
......
1362 1365

  
1363 1366
function ff_put_h264_qpel16_mc33_neon, export=1
1364 1367
        add             r1,  r1,  #1
1365
        push            {r0, r1, r4, lr}
1368
        push            {r0, r1, r4, r11, lr}
1366 1369
        add             r1,  r1,  r2
1367 1370
        sub             r1,  r1,  #1
1368 1371
        b               put_h264_qpel16_mc11

Also available in: Unified diff