armVCM4P10_DeblockingLuma_unsafe_s.S revision 0c1bc742181ded4930842b46e9507372f0b1b963
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_DeblockingLumabSLT4_unsafe 140c1bc742181ded4930842b46e9507372f0b1b963James Dong .func armVCM4P10_DeblockingLumabSLT4_unsafe 150c1bc742181ded4930842b46e9507372f0b1b963James DongarmVCM4P10_DeblockingLumabSLT4_unsafe: 160c1bc742181ded4930842b46e9507372f0b1b963James Dong VSUBL.U8 q11,d5,d9 170c1bc742181ded4930842b46e9507372f0b1b963James Dong VLD1.8 {d18[]},[r5]! 180c1bc742181ded4930842b46e9507372f0b1b963James Dong VSUBL.U8 q10,d8,d4 190c1bc742181ded4930842b46e9507372f0b1b963James Dong VLD1.8 {d19[]},[r5]! 200c1bc742181ded4930842b46e9507372f0b1b963James Dong VSHR.S16 q11,q11,#2 210c1bc742181ded4930842b46e9507372f0b1b963James Dong VEXT.8 d18,d18,d19,#4 220c1bc742181ded4930842b46e9507372f0b1b963James Dong VAND d19,d17,d15 230c1bc742181ded4930842b46e9507372f0b1b963James Dong VBIF d18,d14,d16 240c1bc742181ded4930842b46e9507372f0b1b963James Dong VRHADD.S16 q10,q11,q10 250c1bc742181ded4930842b46e9507372f0b1b963James Dong VRHADD.U8 d24,d4,d8 260c1bc742181ded4930842b46e9507372f0b1b963James Dong VADD.I8 d31,d18,d19 270c1bc742181ded4930842b46e9507372f0b1b963James Dong VAND d19,d12,d15 280c1bc742181ded4930842b46e9507372f0b1b963James Dong VQADD.U8 d23,d5,d18 290c1bc742181ded4930842b46e9507372f0b1b963James Dong VQMOVN.S16 d20,q10 300c1bc742181ded4930842b46e9507372f0b1b963James Dong VADD.I8 d31,d31,d19 310c1bc742181ded4930842b46e9507372f0b1b963James Dong VQSUB.U8 d22,d5,d18 320c1bc742181ded4930842b46e9507372f0b1b963James Dong VQADD.U8 d19,d9,d18 330c1bc742181ded4930842b46e9507372f0b1b963James Dong VHADD.U8 d26,d24,d6 340c1bc742181ded4930842b46e9507372f0b1b963James Dong VMIN.S8 d20,d20,d31 350c1bc742181ded4930842b46e9507372f0b1b963James Dong VNEG.S8 d31,d31 360c1bc742181ded4930842b46e9507372f0b1b963James Dong VQSUB.U8 d21,d9,d18 370c1bc742181ded4930842b46e9507372f0b1b963James Dong VHADD.U8 d27,d24,d10 380c1bc742181ded4930842b46e9507372f0b1b963James Dong VMAX.U8 d30,d26,d22 390c1bc742181ded4930842b46e9507372f0b1b963James Dong VMAX.S8 d20,d20,d31 400c1bc742181ded4930842b46e9507372f0b1b963James Dong VMOVL.U8 q14,d4 410c1bc742181ded4930842b46e9507372f0b1b963James Dong VMOVL.U8 q12,d8 420c1bc742181ded4930842b46e9507372f0b1b963James Dong VADDW.S8 q14,q14,d20 430c1bc742181ded4930842b46e9507372f0b1b963James Dong VSUBW.S8 q12,q12,d20 440c1bc742181ded4930842b46e9507372f0b1b963James Dong VQMOVUN.S16 d29,q14 450c1bc742181ded4930842b46e9507372f0b1b963James Dong VQMOVUN.S16 d24,q12 460c1bc742181ded4930842b46e9507372f0b1b963James Dong VMAX.U8 d25,d27,d21 470c1bc742181ded4930842b46e9507372f0b1b963James Dong VMIN.U8 d30,d30,d23 480c1bc742181ded4930842b46e9507372f0b1b963James Dong VMIN.U8 d25,d25,d19 490c1bc742181ded4930842b46e9507372f0b1b963James Dong VBIF d29,d4,d16 500c1bc742181ded4930842b46e9507372f0b1b963James Dong VBIF d30,d5,d17 510c1bc742181ded4930842b46e9507372f0b1b963James Dong VBIF d24,d8,d16 520c1bc742181ded4930842b46e9507372f0b1b963James Dong VBIF d25,d9,d12 530c1bc742181ded4930842b46e9507372f0b1b963James Dong BX lr 540c1bc742181ded4930842b46e9507372f0b1b963James Dong .endfunc 550c1bc742181ded4930842b46e9507372f0b1b963James Dong 560c1bc742181ded4930842b46e9507372f0b1b963James Dong .global armVCM4P10_DeblockingLumabSGE4_unsafe 570c1bc742181ded4930842b46e9507372f0b1b963James Dong .func armVCM4P10_DeblockingLumabSGE4_unsafe 580c1bc742181ded4930842b46e9507372f0b1b963James DongarmVCM4P10_DeblockingLumabSGE4_unsafe: 590c1bc742181ded4930842b46e9507372f0b1b963James Dong VSHR.U8 d19,d0,#2 600c1bc742181ded4930842b46e9507372f0b1b963James Dong VADD.I8 d19,d19,d15 610c1bc742181ded4930842b46e9507372f0b1b963James Dong VADDL.U8 q10,d8,d4 620c1bc742181ded4930842b46e9507372f0b1b963James Dong VADD.I8 d19,d19,d15 630c1bc742181ded4930842b46e9507372f0b1b963James Dong VADDL.U8 q11,d6,d9 640c1bc742181ded4930842b46e9507372f0b1b963James Dong VADDW.U8 q12,q10,d5 650c1bc742181ded4930842b46e9507372f0b1b963James Dong VCGT.U8 d19,d19,d13 660c1bc742181ded4930842b46e9507372f0b1b963James Dong VSHR.U16 q11,q11,#1 670c1bc742181ded4930842b46e9507372f0b1b963James Dong VHADD.U16 q11,q12,q11 680c1bc742181ded4930842b46e9507372f0b1b963James Dong VADDW.U8 q12,q12,d6 690c1bc742181ded4930842b46e9507372f0b1b963James Dong VADDL.U8 q13,d7,d6 700c1bc742181ded4930842b46e9507372f0b1b963James Dong VAND d17,d17,d19 710c1bc742181ded4930842b46e9507372f0b1b963James Dong VHADD.U8 d28,d4,d9 720c1bc742181ded4930842b46e9507372f0b1b963James Dong VSRA.U16 q13,q12,#1 730c1bc742181ded4930842b46e9507372f0b1b963James Dong VAND d12,d12,d19 740c1bc742181ded4930842b46e9507372f0b1b963James Dong VQRSHRN.U16 d29,q11,#1 750c1bc742181ded4930842b46e9507372f0b1b963James Dong VRHADD.U8 d28,d28,d5 760c1bc742181ded4930842b46e9507372f0b1b963James Dong VQRSHRN.U16 d30,q12,#2 770c1bc742181ded4930842b46e9507372f0b1b963James Dong VADDL.U8 q11,d10,d5 780c1bc742181ded4930842b46e9507372f0b1b963James Dong VADDW.U8 q12,q10,d9 790c1bc742181ded4930842b46e9507372f0b1b963James Dong VBIF d29,d28,d17 800c1bc742181ded4930842b46e9507372f0b1b963James Dong VQRSHRN.U16 d31,q13,#2 810c1bc742181ded4930842b46e9507372f0b1b963James Dong VADDL.U8 q13,d11,d10 820c1bc742181ded4930842b46e9507372f0b1b963James Dong VSHR.U16 q11,q11,#1 830c1bc742181ded4930842b46e9507372f0b1b963James Dong VHADD.U16 q11,q12,q11 840c1bc742181ded4930842b46e9507372f0b1b963James Dong VADDW.U8 q12,q12,d10 850c1bc742181ded4930842b46e9507372f0b1b963James Dong VHADD.U8 d28,d8,d5 860c1bc742181ded4930842b46e9507372f0b1b963James Dong VBIF d29,d4,d16 870c1bc742181ded4930842b46e9507372f0b1b963James Dong VBIF d30,d5,d17 880c1bc742181ded4930842b46e9507372f0b1b963James Dong VSRA.U16 q13,q12,#1 890c1bc742181ded4930842b46e9507372f0b1b963James Dong VQRSHRN.U16 d25,q12,#2 900c1bc742181ded4930842b46e9507372f0b1b963James Dong VQRSHRN.U16 d24,q11,#1 910c1bc742181ded4930842b46e9507372f0b1b963James Dong VRHADD.U8 d22,d28,d9 920c1bc742181ded4930842b46e9507372f0b1b963James Dong VBIF d25,d9,d12 930c1bc742181ded4930842b46e9507372f0b1b963James Dong VBIF d31,d6,d17 940c1bc742181ded4930842b46e9507372f0b1b963James Dong VBIF d24,d22,d12 950c1bc742181ded4930842b46e9507372f0b1b963James Dong VQRSHRN.U16 d28,q13,#2 960c1bc742181ded4930842b46e9507372f0b1b963James Dong VBIF d24,d8,d16 970c1bc742181ded4930842b46e9507372f0b1b963James Dong VBIF d28,d10,d12 980c1bc742181ded4930842b46e9507372f0b1b963James Dong BX lr 990c1bc742181ded4930842b46e9507372f0b1b963James Dong .endfunc 1000c1bc742181ded4930842b46e9507372f0b1b963James Dong 1010c1bc742181ded4930842b46e9507372f0b1b963James Dong .end 1020c1bc742181ded4930842b46e9507372f0b1b963James Dong 103