10c1bc742181ded4930842b46e9507372f0b1b963James Dong/* 20c1bc742181ded4930842b46e9507372f0b1b963James Dong * (c) Copyright 2007-2008 ARM Limited. All Rights Reserved. 30c1bc742181ded4930842b46e9507372f0b1b963James Dong * 40c1bc742181ded4930842b46e9507372f0b1b963James Dong */ 50c1bc742181ded4930842b46e9507372f0b1b963James Dong 60c1bc742181ded4930842b46e9507372f0b1b963James Dong .eabi_attribute 24, 1 70c1bc742181ded4930842b46e9507372f0b1b963James Dong .eabi_attribute 25, 1 80c1bc742181ded4930842b46e9507372f0b1b963James Dong 90c1bc742181ded4930842b46e9507372f0b1b963James Dong .arm 100c1bc742181ded4930842b46e9507372f0b1b963James Dong .fpu neon 110c1bc742181ded4930842b46e9507372f0b1b963James Dong .text 120c1bc742181ded4930842b46e9507372f0b1b963James Dong 130c1bc742181ded4930842b46e9507372f0b1b963James Dong .global armVCM4P10_DeblockingChromabSLT4_unsafe 140c1bc742181ded4930842b46e9507372f0b1b963James Dong .func armVCM4P10_DeblockingChromabSLT4_unsafe 150c1bc742181ded4930842b46e9507372f0b1b963James DongarmVCM4P10_DeblockingChromabSLT4_unsafe: 160c1bc742181ded4930842b46e9507372f0b1b963James Dong VLD1.32 {d18[0]},[r5]! 170c1bc742181ded4930842b46e9507372f0b1b963James Dong VSUBL.U8 q11,d5,d9 180c1bc742181ded4930842b46e9507372f0b1b963James Dong VMOV d28,d18 190c1bc742181ded4930842b46e9507372f0b1b963James Dong VSUBL.U8 q10,d8,d4 200c1bc742181ded4930842b46e9507372f0b1b963James Dong VSHR.S16 q11,q11,#2 210c1bc742181ded4930842b46e9507372f0b1b963James Dong VZIP.8 d18,d28 220c1bc742181ded4930842b46e9507372f0b1b963James Dong VBIF d18,d14,d16 230c1bc742181ded4930842b46e9507372f0b1b963James Dong VRHADD.S16 q10,q11,q10 240c1bc742181ded4930842b46e9507372f0b1b963James Dong VADD.I8 d31,d18,d15 250c1bc742181ded4930842b46e9507372f0b1b963James Dong VQMOVN.S16 d20,q10 260c1bc742181ded4930842b46e9507372f0b1b963James Dong VLD1.8 {d0[]},[r2] 270c1bc742181ded4930842b46e9507372f0b1b963James Dong VMIN.S8 d20,d20,d31 280c1bc742181ded4930842b46e9507372f0b1b963James Dong VNEG.S8 d31,d31 290c1bc742181ded4930842b46e9507372f0b1b963James Dong VLD1.8 {d2[]},[r3] 300c1bc742181ded4930842b46e9507372f0b1b963James Dong VMAX.S8 d20,d20,d31 310c1bc742181ded4930842b46e9507372f0b1b963James Dong VMOVL.U8 q14,d4 320c1bc742181ded4930842b46e9507372f0b1b963James Dong VMOVL.U8 q12,d8 330c1bc742181ded4930842b46e9507372f0b1b963James Dong VADDW.S8 q14,q14,d20 340c1bc742181ded4930842b46e9507372f0b1b963James Dong VSUBW.S8 q12,q12,d20 350c1bc742181ded4930842b46e9507372f0b1b963James Dong VQMOVUN.S16 d29,q14 360c1bc742181ded4930842b46e9507372f0b1b963James Dong VQMOVUN.S16 d24,q12 370c1bc742181ded4930842b46e9507372f0b1b963James Dong BX lr 380c1bc742181ded4930842b46e9507372f0b1b963James Dong .endfunc 390c1bc742181ded4930842b46e9507372f0b1b963James Dong 400c1bc742181ded4930842b46e9507372f0b1b963James Dong .global armVCM4P10_DeblockingChromabSGE4_unsafe 410c1bc742181ded4930842b46e9507372f0b1b963James Dong .func armVCM4P10_DeblockingChromabSGE4_unsafe 420c1bc742181ded4930842b46e9507372f0b1b963James DongarmVCM4P10_DeblockingChromabSGE4_unsafe: 430c1bc742181ded4930842b46e9507372f0b1b963James Dong VHADD.U8 d13,d4,d9 440c1bc742181ded4930842b46e9507372f0b1b963James Dong VHADD.U8 d31,d8,d5 450c1bc742181ded4930842b46e9507372f0b1b963James Dong VLD1.8 {d0[]},[r2] 460c1bc742181ded4930842b46e9507372f0b1b963James Dong ADD r5,r5,#4 470c1bc742181ded4930842b46e9507372f0b1b963James Dong VLD1.8 {d2[]},[r3] 480c1bc742181ded4930842b46e9507372f0b1b963James Dong VRHADD.U8 d13,d13,d5 490c1bc742181ded4930842b46e9507372f0b1b963James Dong VRHADD.U8 d31,d31,d9 500c1bc742181ded4930842b46e9507372f0b1b963James Dong BX lr 510c1bc742181ded4930842b46e9507372f0b1b963James Dong .endfunc 520c1bc742181ded4930842b46e9507372f0b1b963James Dong 530c1bc742181ded4930842b46e9507372f0b1b963James Dong .end 540c1bc742181ded4930842b46e9507372f0b1b963James Dong 55