1*15dc779aSAndroid Build Coastguard Worker///****************************************************************************** 2*15dc779aSAndroid Build Coastguard Worker// * 3*15dc779aSAndroid Build Coastguard Worker// * Copyright (C) 2018 The Android Open Source Project 4*15dc779aSAndroid Build Coastguard Worker// * 5*15dc779aSAndroid Build Coastguard Worker// * Licensed under the Apache License, Version 2.0 (the "License"); 6*15dc779aSAndroid Build Coastguard Worker// * you may not use this file except in compliance with the License. 7*15dc779aSAndroid Build Coastguard Worker// * You may obtain a copy of the License at: 8*15dc779aSAndroid Build Coastguard Worker// * 9*15dc779aSAndroid Build Coastguard Worker// * http://www.apache.org/licenses/LICENSE-2.0 10*15dc779aSAndroid Build Coastguard Worker// * 11*15dc779aSAndroid Build Coastguard Worker// * Unless required by applicable law or agreed to in writing, software 12*15dc779aSAndroid Build Coastguard Worker// * distributed under the License is distributed on an "AS IS" BASIS, 13*15dc779aSAndroid Build Coastguard Worker// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14*15dc779aSAndroid Build Coastguard Worker// * See the License for the specific language governing permissions and 15*15dc779aSAndroid Build Coastguard Worker// * limitations under the License. 16*15dc779aSAndroid Build Coastguard Worker// * 17*15dc779aSAndroid Build Coastguard Worker// ***************************************************************************** 18*15dc779aSAndroid Build Coastguard Worker// * Originally developed and contributed by Ittiam Systems Pvt. Ltd, Bangalore 19*15dc779aSAndroid Build Coastguard Worker//*/ 20*15dc779aSAndroid Build Coastguard Worker 21*15dc779aSAndroid Build Coastguard Worker 22*15dc779aSAndroid Build Coastguard Worker.macro push_v_regs 23*15dc779aSAndroid Build Coastguard Worker stp q8, q9, [sp, #-32]! 24*15dc779aSAndroid Build Coastguard Worker stp q10, q11, [sp, #-32]! 25*15dc779aSAndroid Build Coastguard Worker stp q12, q13, [sp, #-32]! 26*15dc779aSAndroid Build Coastguard Worker stp q14, q15, [sp, #-32]! 27*15dc779aSAndroid Build Coastguard Worker stp x21, x22, [sp, #-16]! 28*15dc779aSAndroid Build Coastguard Worker stp x23, x24, [sp, #-16]! 29*15dc779aSAndroid Build Coastguard Worker.endm 30*15dc779aSAndroid Build Coastguard Worker.macro pop_v_regs 31*15dc779aSAndroid Build Coastguard Worker ldp x23, x24, [sp], #16 32*15dc779aSAndroid Build Coastguard Worker ldp x21, x22, [sp], #16 33*15dc779aSAndroid Build Coastguard Worker ldp q14, q15, [sp], #32 34*15dc779aSAndroid Build Coastguard Worker ldp q12, q13, [sp], #32 35*15dc779aSAndroid Build Coastguard Worker ldp q10, q11, [sp], #32 36*15dc779aSAndroid Build Coastguard Worker ldp q8, q9, [sp], #32 37*15dc779aSAndroid Build Coastguard Worker.endm 38*15dc779aSAndroid Build Coastguard Worker.macro swp reg1, reg2 39*15dc779aSAndroid Build Coastguard Worker MOV X16, \reg1 40*15dc779aSAndroid Build Coastguard Worker MOV \reg1, \reg2 41*15dc779aSAndroid Build Coastguard Worker MOV \reg2, x16 42*15dc779aSAndroid Build Coastguard Worker.endm 43*15dc779aSAndroid Build Coastguard Worker.text 44*15dc779aSAndroid Build Coastguard Worker.global ixheaacd_post_twiddle_armv8 45*15dc779aSAndroid Build Coastguard Workerixheaacd_post_twiddle_armv8: 46*15dc779aSAndroid Build Coastguard Worker 47*15dc779aSAndroid Build Coastguard Worker 48*15dc779aSAndroid Build Coastguard Worker push_v_regs 49*15dc779aSAndroid Build Coastguard Worker 50*15dc779aSAndroid Build Coastguard WorkerARM_PROLOGUE: 51*15dc779aSAndroid Build Coastguard Worker CMP w3, #0x400 52*15dc779aSAndroid Build Coastguard Worker MOV x21, #7500 53*15dc779aSAndroid Build Coastguard Worker ADD x2, x2, x21 54*15dc779aSAndroid Build Coastguard Worker BLT NEXT 55*15dc779aSAndroid Build Coastguard Worker MOV w4, #50 56*15dc779aSAndroid Build Coastguard Worker MOV w5, #-50 57*15dc779aSAndroid Build Coastguard Worker MOV x6, #4 58*15dc779aSAndroid Build Coastguard Worker dup v10.4h, w4 59*15dc779aSAndroid Build Coastguard Worker B NEXT1 60*15dc779aSAndroid Build Coastguard Worker 61*15dc779aSAndroid Build Coastguard WorkerNEXT: 62*15dc779aSAndroid Build Coastguard Worker MOV w4, #0x192 63*15dc779aSAndroid Build Coastguard Worker MOV w5, #0xfe6e 64*15dc779aSAndroid Build Coastguard Worker MOV x6, #32 65*15dc779aSAndroid Build Coastguard Worker dup v10.4h, w4 66*15dc779aSAndroid Build Coastguard Worker 67*15dc779aSAndroid Build Coastguard WorkerNEXT1: 68*15dc779aSAndroid Build Coastguard Worker LDR w9, [x2] 69*15dc779aSAndroid Build Coastguard Worker LSL W22, W9, #16 70*15dc779aSAndroid Build Coastguard Worker AND W21, W9, #0xFFFF0000 71*15dc779aSAndroid Build Coastguard Worker 72*15dc779aSAndroid Build Coastguard Worker LDR w7, [x1], #4 73*15dc779aSAndroid Build Coastguard Worker LDR w8, [x1], #4 74*15dc779aSAndroid Build Coastguard Worker 75*15dc779aSAndroid Build Coastguard Worker ADD x2, x2, x6 76*15dc779aSAndroid Build Coastguard Worker 77*15dc779aSAndroid Build Coastguard Worker 78*15dc779aSAndroid Build Coastguard Worker SMULL X11, w8, w21 79*15dc779aSAndroid Build Coastguard Worker ASR X11, x11, #32 80*15dc779aSAndroid Build Coastguard Worker SMULL X10, w8, w22 81*15dc779aSAndroid Build Coastguard Worker ASR X10, x10, #32 82*15dc779aSAndroid Build Coastguard Worker SMULL X12, w7, w21 83*15dc779aSAndroid Build Coastguard Worker ASR X12, x12, #32 84*15dc779aSAndroid Build Coastguard Worker SMULL X23, w7, w22 85*15dc779aSAndroid Build Coastguard Worker ASR X23, x23, #32 86*15dc779aSAndroid Build Coastguard Worker ADD w8, w11, w23 87*15dc779aSAndroid Build Coastguard Worker 88*15dc779aSAndroid Build Coastguard Worker 89*15dc779aSAndroid Build Coastguard Worker SUB w10, w10, w12 90*15dc779aSAndroid Build Coastguard Worker 91*15dc779aSAndroid Build Coastguard Worker MVN w8, w8 92*15dc779aSAndroid Build Coastguard Worker ADD w8, w8, #1 93*15dc779aSAndroid Build Coastguard Worker 94*15dc779aSAndroid Build Coastguard Worker 95*15dc779aSAndroid Build Coastguard Worker 96*15dc779aSAndroid Build Coastguard Worker LSL w21, w5, #16 97*15dc779aSAndroid Build Coastguard Worker LSL w22, w4, #16 98*15dc779aSAndroid Build Coastguard Worker SMULL X23, w10, w21 99*15dc779aSAndroid Build Coastguard Worker ASR X23, x23, #32 100*15dc779aSAndroid Build Coastguard Worker ADD w9, w8, w23 101*15dc779aSAndroid Build Coastguard Worker SMULL X23, w8, w22 102*15dc779aSAndroid Build Coastguard Worker ASR X23, x23, #32 103*15dc779aSAndroid Build Coastguard Worker ADD w11, w10, w23 104*15dc779aSAndroid Build Coastguard Worker 105*15dc779aSAndroid Build Coastguard Worker LSL x7, x3, #2 106*15dc779aSAndroid Build Coastguard Worker ADD x7, x0, x7 107*15dc779aSAndroid Build Coastguard Worker SUB x7, x7, #4 108*15dc779aSAndroid Build Coastguard Worker 109*15dc779aSAndroid Build Coastguard Worker STR w11, [x7], #-4 110*15dc779aSAndroid Build Coastguard Worker 111*15dc779aSAndroid Build Coastguard Worker STR w9, [x0], #4 112*15dc779aSAndroid Build Coastguard Worker 113*15dc779aSAndroid Build Coastguard Worker LSL x5, x3, #2 114*15dc779aSAndroid Build Coastguard Worker ADD x5, x1, x5 115*15dc779aSAndroid Build Coastguard Worker SUB x5, x5, #40 116*15dc779aSAndroid Build Coastguard Worker 117*15dc779aSAndroid Build Coastguard Worker 118*15dc779aSAndroid Build Coastguard Worker SUB w3, w3, #1 119*15dc779aSAndroid Build Coastguard Worker ASR w3, w3, #4 120*15dc779aSAndroid Build Coastguard Worker 121*15dc779aSAndroid Build Coastguard Worker 122*15dc779aSAndroid Build Coastguard Worker SUB x7, x7, #28 123*15dc779aSAndroid Build Coastguard Worker 124*15dc779aSAndroid Build Coastguard Worker 125*15dc779aSAndroid Build Coastguard Worker 126*15dc779aSAndroid Build Coastguard Worker 127*15dc779aSAndroid Build Coastguard Worker 128*15dc779aSAndroid Build Coastguard Worker 129*15dc779aSAndroid Build Coastguard Worker 130*15dc779aSAndroid Build Coastguard Worker 131*15dc779aSAndroid Build Coastguard Worker 132*15dc779aSAndroid Build Coastguard Worker 133*15dc779aSAndroid Build Coastguard Worker 134*15dc779aSAndroid Build Coastguard Worker 135*15dc779aSAndroid Build Coastguard Worker MOV x8, #-32 136*15dc779aSAndroid Build Coastguard Worker 137*15dc779aSAndroid Build Coastguard WorkerNEON_PROLOGUE: 138*15dc779aSAndroid Build Coastguard Worker 139*15dc779aSAndroid Build Coastguard Worker LD4 {v0.4h, v1.4h, v2.4h, v3.4h}, [x5], x8 140*15dc779aSAndroid Build Coastguard Worker 141*15dc779aSAndroid Build Coastguard Worker LD4 {v4.4h, v5.4h, v6.4h, v7.4h}, [x1], #32 142*15dc779aSAndroid Build Coastguard Worker LD2 {v8.h, v9.h}[0], [x2], x6 143*15dc779aSAndroid Build Coastguard Worker LD2 {v8.h, v9.h}[1], [x2], x6 144*15dc779aSAndroid Build Coastguard Worker LD2 {v8.h, v9.h}[2], [x2], x6 145*15dc779aSAndroid Build Coastguard Worker LD2 {v8.h, v9.h}[3], [x2], x6 146*15dc779aSAndroid Build Coastguard Worker 147*15dc779aSAndroid Build Coastguard Worker rev64 v12.4h, v8.4h 148*15dc779aSAndroid Build Coastguard Worker rev64 v13.4h, v9.4h 149*15dc779aSAndroid Build Coastguard Worker 150*15dc779aSAndroid Build Coastguard Worker uMULL v30.4s, v2.4h, v13.4h 151*15dc779aSAndroid Build Coastguard Worker uMULL v28.4s, v0.4h, v13.4h 152*15dc779aSAndroid Build Coastguard Worker uMULL v26.4s, v2.4h, v12.4h 153*15dc779aSAndroid Build Coastguard Worker uMULL v24.4s, v0.4h, v12.4h 154*15dc779aSAndroid Build Coastguard Worker 155*15dc779aSAndroid Build Coastguard Worker ushR v30.4s, v30.4s, #16 156*15dc779aSAndroid Build Coastguard Worker ushR v28.4s, v28.4s, #16 157*15dc779aSAndroid Build Coastguard Worker ushR v26.4s, v26.4s, #16 158*15dc779aSAndroid Build Coastguard Worker ushR v24.4s, v24.4s, #16 159*15dc779aSAndroid Build Coastguard Worker 160*15dc779aSAndroid Build Coastguard Worker sMLAL v30.4s, v3.4h, v13.4h 161*15dc779aSAndroid Build Coastguard Worker sMLAL v28.4s, v1.4h, v13.4h 162*15dc779aSAndroid Build Coastguard Worker sMLAL v26.4s, v3.4h, v12.4h 163*15dc779aSAndroid Build Coastguard Worker sMLAL v24.4s, v1.4h, v12.4h 164*15dc779aSAndroid Build Coastguard Worker 165*15dc779aSAndroid Build Coastguard Worker uMULL v22.4s, v6.4h, v9.4h 166*15dc779aSAndroid Build Coastguard Worker uMULL v20.4s, v4.4h, v9.4h 167*15dc779aSAndroid Build Coastguard Worker 168*15dc779aSAndroid Build Coastguard Worker ADD v28.4s, v28.4s , v26.4s 169*15dc779aSAndroid Build Coastguard Worker SUB v30.4s, v30.4s , v24.4s 170*15dc779aSAndroid Build Coastguard Worker NEG v28.4s, v28.4s 171*15dc779aSAndroid Build Coastguard Worker 172*15dc779aSAndroid Build Coastguard Worker uMULL v18.4s, v6.4h, v8.4h 173*15dc779aSAndroid Build Coastguard Worker uMULL v16.4s, v4.4h, v8.4h 174*15dc779aSAndroid Build Coastguard Worker 175*15dc779aSAndroid Build Coastguard Worker mov v31.8b, v30.8b 176*15dc779aSAndroid Build Coastguard Worker mov v27.D[0], v30.D[1] 177*15dc779aSAndroid Build Coastguard Worker ushR v22.4s, v22.4s, #16 178*15dc779aSAndroid Build Coastguard Worker 179*15dc779aSAndroid Build Coastguard Worker mov v24.8b, v28.8b 180*15dc779aSAndroid Build Coastguard Worker mov v25.D[0], v28.D[1] 181*15dc779aSAndroid Build Coastguard Worker ushR v20.4s, v20.4s, #16 182*15dc779aSAndroid Build Coastguard Worker 183*15dc779aSAndroid Build Coastguard Worker 184*15dc779aSAndroid Build Coastguard Worker UZP1 v26.4h, v31.4h, v27.4h 185*15dc779aSAndroid Build Coastguard Worker UZP2 v27.4h, v31.4h, v27.4h 186*15dc779aSAndroid Build Coastguard Worker ushR v18.4s, v18.4s, #16 187*15dc779aSAndroid Build Coastguard Worker 188*15dc779aSAndroid Build Coastguard Worker 189*15dc779aSAndroid Build Coastguard Worker mov v31.8B , v24.8B 190*15dc779aSAndroid Build Coastguard Worker UZP1 v24.4h, v31.4h, v25.4h 191*15dc779aSAndroid Build Coastguard Worker UZP2 v25.4h, v31.4h, v25.4h 192*15dc779aSAndroid Build Coastguard Worker ushR v16.4s, v16.4s, #16 193*15dc779aSAndroid Build Coastguard Worker 194*15dc779aSAndroid Build Coastguard Worker 195*15dc779aSAndroid Build Coastguard Worker sMLAL v22.4s, v7.4h, v9.4h 196*15dc779aSAndroid Build Coastguard Worker sMLAL v20.4s, v5.4h, v9.4h 197*15dc779aSAndroid Build Coastguard Worker sMLAL v18.4s, v7.4h, v8.4h 198*15dc779aSAndroid Build Coastguard Worker sMLAL v16.4s, v5.4h, v8.4h 199*15dc779aSAndroid Build Coastguard Worker 200*15dc779aSAndroid Build Coastguard Worker LD2 {v8.h, v9.h}[0], [x2], x6 201*15dc779aSAndroid Build Coastguard Worker uMULL v0.4s, v26.4h, v10.4h 202*15dc779aSAndroid Build Coastguard Worker 203*15dc779aSAndroid Build Coastguard Worker LD2 {v8.h, v9.h}[1], [x2], x6 204*15dc779aSAndroid Build Coastguard Worker uMULL v2.4s, v24.4h, v10.4h 205*15dc779aSAndroid Build Coastguard Worker 206*15dc779aSAndroid Build Coastguard Worker 207*15dc779aSAndroid Build Coastguard Worker LD2 {v8.h, v9.h}[2], [x2], x6 208*15dc779aSAndroid Build Coastguard Worker ADD v22.4s, v22.4s , v16.4s 209*15dc779aSAndroid Build Coastguard Worker 210*15dc779aSAndroid Build Coastguard Worker LD2 {v8.h, v9.h}[3], [x2], x6 211*15dc779aSAndroid Build Coastguard Worker SUB v20.4s, v18.4s , v20.4s 212*15dc779aSAndroid Build Coastguard Worker 213*15dc779aSAndroid Build Coastguard Worker rev64 v12.4h, v8.4h 214*15dc779aSAndroid Build Coastguard Worker rev64 v13.4h, v9.4h 215*15dc779aSAndroid Build Coastguard Worker NEG v22.4s, v22.4s 216*15dc779aSAndroid Build Coastguard Worker 217*15dc779aSAndroid Build Coastguard Worker 218*15dc779aSAndroid Build Coastguard Worker mov v18.8b, v22.8b 219*15dc779aSAndroid Build Coastguard Worker mov v19.D[0], v22.D[1] 220*15dc779aSAndroid Build Coastguard Worker ushR v0.4s, v0.4s, #16 221*15dc779aSAndroid Build Coastguard Worker 222*15dc779aSAndroid Build Coastguard Worker mov v16.16b, v20.16b 223*15dc779aSAndroid Build Coastguard Worker mov v17.D[0], v20.D[1] 224*15dc779aSAndroid Build Coastguard Worker ushR v2.4s, v2.4s, #16 225*15dc779aSAndroid Build Coastguard Worker 226*15dc779aSAndroid Build Coastguard Worker 227*15dc779aSAndroid Build Coastguard Worker MOV v31.8b, v18.8b 228*15dc779aSAndroid Build Coastguard Worker UZP1 v18.4h, v31.4h, v19.4h 229*15dc779aSAndroid Build Coastguard Worker UZP2 v19.4h, v31.4h, v19.4h 230*15dc779aSAndroid Build Coastguard Worker sMLAL v0.4s, v27.4h, v10.4h 231*15dc779aSAndroid Build Coastguard Worker 232*15dc779aSAndroid Build Coastguard Worker 233*15dc779aSAndroid Build Coastguard Worker MOV v31.8b, v16.8b 234*15dc779aSAndroid Build Coastguard Worker UZP1 v16.4h, v31.4h, v17.4h 235*15dc779aSAndroid Build Coastguard Worker UZP2 v17.4h, v31.4h, v17.4h 236*15dc779aSAndroid Build Coastguard Worker sMLAL v2.4s, v25.4h, v10.4h 237*15dc779aSAndroid Build Coastguard Worker 238*15dc779aSAndroid Build Coastguard Worker uMULL v4.4s, v18.4h, v10.4h 239*15dc779aSAndroid Build Coastguard Worker uMULL v6.4s, v16.4h, v10.4h 240*15dc779aSAndroid Build Coastguard Worker 241*15dc779aSAndroid Build Coastguard Worker NEG v0.4s, v0.4s 242*15dc779aSAndroid Build Coastguard Worker ADD v14.4s, v30.4s , v2.4s 243*15dc779aSAndroid Build Coastguard Worker ADD v26.4s, v28.4s , v0.4s 244*15dc779aSAndroid Build Coastguard Worker 245*15dc779aSAndroid Build Coastguard Worker rev64 v14.4s, v14.4s 246*15dc779aSAndroid Build Coastguard Worker ushR v4.4s, v4.4s, #16 247*15dc779aSAndroid Build Coastguard Worker 248*15dc779aSAndroid Build Coastguard Worker swp v14.D[0], v14.D[1] 249*15dc779aSAndroid Build Coastguard Worker ushR v6.4s, v6.4s, #16 250*15dc779aSAndroid Build Coastguard Worker 251*15dc779aSAndroid Build Coastguard Worker sMLAL v4.4s, v19.4h, v10.4h 252*15dc779aSAndroid Build Coastguard Worker LD4 {v0.4h, v1.4h, v2.4h, v3.4h}, [x5], x8 253*15dc779aSAndroid Build Coastguard Worker sMLAL v6.4s, v17.4h, v10.4h 254*15dc779aSAndroid Build Coastguard Worker 255*15dc779aSAndroid Build Coastguard Worker 256*15dc779aSAndroid Build Coastguard Worker SUB x3, x3, #2 257*15dc779aSAndroid Build Coastguard Worker 258*15dc779aSAndroid Build Coastguard Worker ADD v24.4s, v20.4s , v4.4s 259*15dc779aSAndroid Build Coastguard Worker 260*15dc779aSAndroid Build Coastguard Worker rev64 v24.4s, v24.4s 261*15dc779aSAndroid Build Coastguard Worker NEG v16.4s, v6.4s 262*15dc779aSAndroid Build Coastguard Worker 263*15dc779aSAndroid Build Coastguard Worker LD4 {v4.4h, v5.4h, v6.4h, v7.4h}, [x1], #32 264*15dc779aSAndroid Build Coastguard Worker 265*15dc779aSAndroid Build Coastguard Worker swp v24.D[0], v24.D[1] 266*15dc779aSAndroid Build Coastguard Worker ADD v16.4s, v22.4s , v16.4s 267*15dc779aSAndroid Build Coastguard Worker 268*15dc779aSAndroid Build Coastguard Worker 269*15dc779aSAndroid Build Coastguard Worker 270*15dc779aSAndroid Build Coastguard WorkerCORE_LOOP: 271*15dc779aSAndroid Build Coastguard Worker uMULL v30.4s, v2.4h, v13.4h 272*15dc779aSAndroid Build Coastguard Worker MOV v25.16B, v24.16B 273*15dc779aSAndroid Build Coastguard Worker ST2 { v25.4s, v26.4s}, [x7], x8 274*15dc779aSAndroid Build Coastguard Worker uMULL v28.4s, v0.4h, v13.4h 275*15dc779aSAndroid Build Coastguard Worker 276*15dc779aSAndroid Build Coastguard Worker uMULL v26.4s, v2.4h, v12.4h 277*15dc779aSAndroid Build Coastguard Worker MOV v15.16B, v14.16B 278*15dc779aSAndroid Build Coastguard Worker ST2 { v15.4s, v16.4s}, [x0], #32 279*15dc779aSAndroid Build Coastguard Worker uMULL v24.4s, v0.4h, v12.4h 280*15dc779aSAndroid Build Coastguard Worker 281*15dc779aSAndroid Build Coastguard Worker ushR v30.4s, v30.4s, #16 282*15dc779aSAndroid Build Coastguard Worker ushR v28.4s, v28.4s, #16 283*15dc779aSAndroid Build Coastguard Worker ushR v26.4s, v26.4s, #16 284*15dc779aSAndroid Build Coastguard Worker ushR v24.4s, v24.4s, #16 285*15dc779aSAndroid Build Coastguard Worker 286*15dc779aSAndroid Build Coastguard Worker sMLAL v30.4s, v3.4h, v13.4h 287*15dc779aSAndroid Build Coastguard Worker sMLAL v28.4s, v1.4h, v13.4h 288*15dc779aSAndroid Build Coastguard Worker sMLAL v26.4s, v3.4h, v12.4h 289*15dc779aSAndroid Build Coastguard Worker sMLAL v24.4s, v1.4h, v12.4h 290*15dc779aSAndroid Build Coastguard Worker 291*15dc779aSAndroid Build Coastguard Worker uMULL v22.4s, v6.4h, v9.4h 292*15dc779aSAndroid Build Coastguard Worker uMULL v20.4s, v4.4h, v9.4h 293*15dc779aSAndroid Build Coastguard Worker 294*15dc779aSAndroid Build Coastguard Worker 295*15dc779aSAndroid Build Coastguard Worker ADD v28.4s, v28.4s , v26.4s 296*15dc779aSAndroid Build Coastguard Worker SUB v30.4s, v30.4s , v24.4s 297*15dc779aSAndroid Build Coastguard Worker NEG v28.4s, v28.4s 298*15dc779aSAndroid Build Coastguard Worker 299*15dc779aSAndroid Build Coastguard Worker uMULL v18.4s, v6.4h, v8.4h 300*15dc779aSAndroid Build Coastguard Worker uMULL v16.4s, v4.4h, v8.4h 301*15dc779aSAndroid Build Coastguard Worker 302*15dc779aSAndroid Build Coastguard Worker 303*15dc779aSAndroid Build Coastguard Worker mov v26.8b, v30.8b 304*15dc779aSAndroid Build Coastguard Worker mov v27.D[0], v30.D[1] 305*15dc779aSAndroid Build Coastguard Worker ushR v22.4s, v22.4s, #16 306*15dc779aSAndroid Build Coastguard Worker 307*15dc779aSAndroid Build Coastguard Worker 308*15dc779aSAndroid Build Coastguard Worker mov v24.8b, v28.8b 309*15dc779aSAndroid Build Coastguard Worker mov v25.D[0], v28.D[1] 310*15dc779aSAndroid Build Coastguard Worker ushR v20.4s, v20.4s, #16 311*15dc779aSAndroid Build Coastguard Worker 312*15dc779aSAndroid Build Coastguard Worker 313*15dc779aSAndroid Build Coastguard Worker MOV v31.8b, v26.8b 314*15dc779aSAndroid Build Coastguard Worker UZP1 v26.4h, v31.4h, v27.4h 315*15dc779aSAndroid Build Coastguard Worker UZP2 v27.4h, v31.4h, v27.4h 316*15dc779aSAndroid Build Coastguard Worker ushR v18.4s, v18.4s, #16 317*15dc779aSAndroid Build Coastguard Worker 318*15dc779aSAndroid Build Coastguard Worker 319*15dc779aSAndroid Build Coastguard Worker MOV v31.8b, v24.8b 320*15dc779aSAndroid Build Coastguard Worker UZP1 v24.4h, v31.4h, v25.4h 321*15dc779aSAndroid Build Coastguard Worker UZP2 v25.4h, v31.4h, v25.4h 322*15dc779aSAndroid Build Coastguard Worker ushR v16.4s, v16.4s, #16 323*15dc779aSAndroid Build Coastguard Worker 324*15dc779aSAndroid Build Coastguard Worker 325*15dc779aSAndroid Build Coastguard Worker sMLAL v22.4s, v7.4h, v9.4h 326*15dc779aSAndroid Build Coastguard Worker sMLAL v20.4s, v5.4h, v9.4h 327*15dc779aSAndroid Build Coastguard Worker sMLAL v18.4s, v7.4h, v8.4h 328*15dc779aSAndroid Build Coastguard Worker sMLAL v16.4s, v5.4h, v8.4h 329*15dc779aSAndroid Build Coastguard Worker 330*15dc779aSAndroid Build Coastguard Worker LD2 {v8.h, v9.h}[0], [x2], x6 331*15dc779aSAndroid Build Coastguard Worker uMULL v0.4s, v26.4h, v10.4h 332*15dc779aSAndroid Build Coastguard Worker 333*15dc779aSAndroid Build Coastguard Worker LD2 {v8.h, v9.h}[1], [x2], x6 334*15dc779aSAndroid Build Coastguard Worker uMULL v2.4s, v24.4h, v10.4h 335*15dc779aSAndroid Build Coastguard Worker 336*15dc779aSAndroid Build Coastguard Worker LD2 {v8.h, v9.h}[2], [x2], x6 337*15dc779aSAndroid Build Coastguard Worker ADD v22.4s, v22.4s , v16.4s 338*15dc779aSAndroid Build Coastguard Worker 339*15dc779aSAndroid Build Coastguard Worker LD2 {v8.h, v9.h}[3], [x2], x6 340*15dc779aSAndroid Build Coastguard Worker SUB v20.4s, v18.4s , v20.4s 341*15dc779aSAndroid Build Coastguard Worker 342*15dc779aSAndroid Build Coastguard Worker rev64 v12.4h, v8.4h 343*15dc779aSAndroid Build Coastguard Worker rev64 v13.4h, v9.4h 344*15dc779aSAndroid Build Coastguard Worker NEG v22.4s, v22.4s 345*15dc779aSAndroid Build Coastguard Worker 346*15dc779aSAndroid Build Coastguard Worker mov v18.8b, v22.8b 347*15dc779aSAndroid Build Coastguard Worker mov v19.D[0], v22.D[1] 348*15dc779aSAndroid Build Coastguard Worker ushR v0.4s, v0.4s, #16 349*15dc779aSAndroid Build Coastguard Worker 350*15dc779aSAndroid Build Coastguard Worker mov v16.8b, v20.8b 351*15dc779aSAndroid Build Coastguard Worker mov v17.D[0], v20.D[1] 352*15dc779aSAndroid Build Coastguard Worker ushR v2.4s, v2.4s, #16 353*15dc779aSAndroid Build Coastguard Worker 354*15dc779aSAndroid Build Coastguard Worker 355*15dc779aSAndroid Build Coastguard Worker MOV v31.8b, v18.8b 356*15dc779aSAndroid Build Coastguard Worker UZP1 v18.4h, v31.4h, v19.4h 357*15dc779aSAndroid Build Coastguard Worker UZP2 v19.4h, v31.4h, v19.4h 358*15dc779aSAndroid Build Coastguard Worker sMLAL v0.4s, v27.4h, v10.4h 359*15dc779aSAndroid Build Coastguard Worker 360*15dc779aSAndroid Build Coastguard Worker 361*15dc779aSAndroid Build Coastguard Worker MOV v31.8b, v16.8b 362*15dc779aSAndroid Build Coastguard Worker UZP1 v16.4h, v31.4h, v17.4h 363*15dc779aSAndroid Build Coastguard Worker UZP2 v17.4h, v31.4h, v17.4h 364*15dc779aSAndroid Build Coastguard Worker sMLAL v2.4s, v25.4h, v10.4h 365*15dc779aSAndroid Build Coastguard Worker 366*15dc779aSAndroid Build Coastguard Worker uMULL v4.4s, v18.4h, v10.4h 367*15dc779aSAndroid Build Coastguard Worker uMULL v6.4s, v16.4h, v10.4h 368*15dc779aSAndroid Build Coastguard Worker 369*15dc779aSAndroid Build Coastguard Worker NEG v0.4s, v0.4s 370*15dc779aSAndroid Build Coastguard Worker ADD v14.4s, v30.4s , v2.4s 371*15dc779aSAndroid Build Coastguard Worker ADD v26.4s, v28.4s , v0.4s 372*15dc779aSAndroid Build Coastguard Worker 373*15dc779aSAndroid Build Coastguard Worker rev64 v14.4s, v14.4s 374*15dc779aSAndroid Build Coastguard Worker ushR v4.4s, v4.4s, #16 375*15dc779aSAndroid Build Coastguard Worker 376*15dc779aSAndroid Build Coastguard Worker swp v14.D[0], v14.D[1] 377*15dc779aSAndroid Build Coastguard Worker ushR v6.4s, v6.4s, #16 378*15dc779aSAndroid Build Coastguard Worker 379*15dc779aSAndroid Build Coastguard Worker sMLAL v4.4s, v19.4h, v10.4h 380*15dc779aSAndroid Build Coastguard Worker LD4 {v0.4h, v1.4h, v2.4h, v3.4h}, [x5], x8 381*15dc779aSAndroid Build Coastguard Worker sMLAL v6.4s, v17.4h, v10.4h 382*15dc779aSAndroid Build Coastguard Worker 383*15dc779aSAndroid Build Coastguard Worker 384*15dc779aSAndroid Build Coastguard Worker 385*15dc779aSAndroid Build Coastguard Worker 386*15dc779aSAndroid Build Coastguard Worker 387*15dc779aSAndroid Build Coastguard Worker ADD v24.4s, v20.4s , v4.4s 388*15dc779aSAndroid Build Coastguard Worker 389*15dc779aSAndroid Build Coastguard Worker rev64 v24.4s, v24.4s 390*15dc779aSAndroid Build Coastguard Worker NEG v16.4s, v6.4s 391*15dc779aSAndroid Build Coastguard Worker 392*15dc779aSAndroid Build Coastguard Worker LD4 {v4.4h, v5.4h, v6.4h, v7.4h}, [x1], #32 393*15dc779aSAndroid Build Coastguard Worker 394*15dc779aSAndroid Build Coastguard Worker swp v24.D[0], v24.D[1] 395*15dc779aSAndroid Build Coastguard Worker ADD v16.4s, v22.4s , v16.4s 396*15dc779aSAndroid Build Coastguard Worker 397*15dc779aSAndroid Build Coastguard Worker SUBS x3, x3, #1 398*15dc779aSAndroid Build Coastguard Worker 399*15dc779aSAndroid Build Coastguard Worker BNE CORE_LOOP 400*15dc779aSAndroid Build Coastguard Worker 401*15dc779aSAndroid Build Coastguard Worker 402*15dc779aSAndroid Build Coastguard Worker 403*15dc779aSAndroid Build Coastguard Worker 404*15dc779aSAndroid Build Coastguard WorkerNEON_EPILOGUE: 405*15dc779aSAndroid Build Coastguard Worker uMULL v30.4s, v2.4h, v13.4h 406*15dc779aSAndroid Build Coastguard Worker MOV v25.16B, v24.16B 407*15dc779aSAndroid Build Coastguard Worker ST2 { v25.4s, v26.4s}, [x7], x8 408*15dc779aSAndroid Build Coastguard Worker uMULL v28.4s, v0.4h, v13.4h 409*15dc779aSAndroid Build Coastguard Worker 410*15dc779aSAndroid Build Coastguard Worker uMULL v26.4s, v2.4h, v12.4h 411*15dc779aSAndroid Build Coastguard Worker MOV v15.16B, v14.16B 412*15dc779aSAndroid Build Coastguard Worker ST2 { v15.4s, v16.4s}, [x0], #32 413*15dc779aSAndroid Build Coastguard Worker uMULL v24.4s, v0.4h, v12.4h 414*15dc779aSAndroid Build Coastguard Worker 415*15dc779aSAndroid Build Coastguard Worker 416*15dc779aSAndroid Build Coastguard Worker 417*15dc779aSAndroid Build Coastguard Worker ushR v30.4s, v30.4s, #16 418*15dc779aSAndroid Build Coastguard Worker ushR v28.4s, v28.4s, #16 419*15dc779aSAndroid Build Coastguard Worker ushR v26.4s, v26.4s, #16 420*15dc779aSAndroid Build Coastguard Worker ushR v24.4s, v24.4s, #16 421*15dc779aSAndroid Build Coastguard Worker 422*15dc779aSAndroid Build Coastguard Worker sMLAL v30.4s, v3.4h, v13.4h 423*15dc779aSAndroid Build Coastguard Worker sMLAL v28.4s, v1.4h, v13.4h 424*15dc779aSAndroid Build Coastguard Worker sMLAL v26.4s, v3.4h, v12.4h 425*15dc779aSAndroid Build Coastguard Worker sMLAL v24.4s, v1.4h, v12.4h 426*15dc779aSAndroid Build Coastguard Worker 427*15dc779aSAndroid Build Coastguard Worker 428*15dc779aSAndroid Build Coastguard Worker uMULL v22.4s, v6.4h, v9.4h 429*15dc779aSAndroid Build Coastguard Worker uMULL v20.4s, v4.4h, v9.4h 430*15dc779aSAndroid Build Coastguard Worker 431*15dc779aSAndroid Build Coastguard Worker 432*15dc779aSAndroid Build Coastguard Worker ADD v28.4s, v28.4s , v26.4s 433*15dc779aSAndroid Build Coastguard Worker SUB v30.4s, v30.4s , v24.4s 434*15dc779aSAndroid Build Coastguard Worker NEG v28.4s, v28.4s 435*15dc779aSAndroid Build Coastguard Worker 436*15dc779aSAndroid Build Coastguard Worker uMULL v18.4s, v6.4h, v8.4h 437*15dc779aSAndroid Build Coastguard Worker uMULL v16.4s, v4.4h, v8.4h 438*15dc779aSAndroid Build Coastguard Worker 439*15dc779aSAndroid Build Coastguard Worker 440*15dc779aSAndroid Build Coastguard Worker mov v26.8b, v30.8b 441*15dc779aSAndroid Build Coastguard Worker mov v27.D[0], v30.D[1] 442*15dc779aSAndroid Build Coastguard Worker ushR v22.4s, v22.4s, #16 443*15dc779aSAndroid Build Coastguard Worker 444*15dc779aSAndroid Build Coastguard Worker mov v24.16b, v28.16b 445*15dc779aSAndroid Build Coastguard Worker mov v25.D[0], v28.D[1] 446*15dc779aSAndroid Build Coastguard Worker ushR v20.4s, v20.4s, #16 447*15dc779aSAndroid Build Coastguard Worker 448*15dc779aSAndroid Build Coastguard Worker 449*15dc779aSAndroid Build Coastguard Worker mov v31.8b, v26.8b 450*15dc779aSAndroid Build Coastguard Worker UZP1 v26.4h, v31.4h, v27.4h 451*15dc779aSAndroid Build Coastguard Worker UZP2 v27.4h, v31.4h, v27.4h 452*15dc779aSAndroid Build Coastguard Worker ushR v18.4s, v18.4s, #16 453*15dc779aSAndroid Build Coastguard Worker 454*15dc779aSAndroid Build Coastguard Worker 455*15dc779aSAndroid Build Coastguard Worker mov v31.8b, v24.8b 456*15dc779aSAndroid Build Coastguard Worker UZP1 v24.4h, v31.4h, v25.4h 457*15dc779aSAndroid Build Coastguard Worker UZP2 v25.4h, v31.4h, v25.4h 458*15dc779aSAndroid Build Coastguard Worker ushR v16.4s, v16.4s, #16 459*15dc779aSAndroid Build Coastguard Worker 460*15dc779aSAndroid Build Coastguard Worker 461*15dc779aSAndroid Build Coastguard Worker sMLAL v22.4s, v7.4h, v9.4h 462*15dc779aSAndroid Build Coastguard Worker sMLAL v20.4s, v5.4h, v9.4h 463*15dc779aSAndroid Build Coastguard Worker sMLAL v18.4s, v7.4h, v8.4h 464*15dc779aSAndroid Build Coastguard Worker sMLAL v16.4s, v5.4h, v8.4h 465*15dc779aSAndroid Build Coastguard Worker 466*15dc779aSAndroid Build Coastguard Worker 467*15dc779aSAndroid Build Coastguard Worker uMULL v0.4s, v26.4h, v10.4h 468*15dc779aSAndroid Build Coastguard Worker 469*15dc779aSAndroid Build Coastguard Worker 470*15dc779aSAndroid Build Coastguard Worker uMULL v2.4s, v24.4h, v10.4h 471*15dc779aSAndroid Build Coastguard Worker 472*15dc779aSAndroid Build Coastguard Worker 473*15dc779aSAndroid Build Coastguard Worker ADD v22.4s, v22.4s , v16.4s 474*15dc779aSAndroid Build Coastguard Worker 475*15dc779aSAndroid Build Coastguard Worker 476*15dc779aSAndroid Build Coastguard Worker SUB v20.4s, v18.4s , v20.4s 477*15dc779aSAndroid Build Coastguard Worker 478*15dc779aSAndroid Build Coastguard Worker 479*15dc779aSAndroid Build Coastguard Worker NEG v22.4s, v22.4s 480*15dc779aSAndroid Build Coastguard Worker 481*15dc779aSAndroid Build Coastguard Worker 482*15dc779aSAndroid Build Coastguard Worker mov v18.16b, v22.16b 483*15dc779aSAndroid Build Coastguard Worker ushR v0.4s, v0.4s, #16 484*15dc779aSAndroid Build Coastguard Worker 485*15dc779aSAndroid Build Coastguard Worker mov v16.16b, v20.16b 486*15dc779aSAndroid Build Coastguard Worker ushR v2.4s, v2.4s, #16 487*15dc779aSAndroid Build Coastguard Worker 488*15dc779aSAndroid Build Coastguard Worker 489*15dc779aSAndroid Build Coastguard Worker mov v31.16b, v18.16b 490*15dc779aSAndroid Build Coastguard Worker mov v19.d[0], v31.d[1] 491*15dc779aSAndroid Build Coastguard Worker UZP1 v18.4h, v31.4h, v19.4h 492*15dc779aSAndroid Build Coastguard Worker UZP2 v19.4h, v31.4h, v19.4h 493*15dc779aSAndroid Build Coastguard Worker sMLAL v0.4s, v27.4h, v10.4h 494*15dc779aSAndroid Build Coastguard Worker 495*15dc779aSAndroid Build Coastguard Worker 496*15dc779aSAndroid Build Coastguard Worker mov v31.16b, v16.16b 497*15dc779aSAndroid Build Coastguard Worker mov v17.d[0], v31.d[1] 498*15dc779aSAndroid Build Coastguard Worker UZP1 v16.4h, v31.4h, v17.4h 499*15dc779aSAndroid Build Coastguard Worker UZP2 v17.4h, v31.4h, v17.4h 500*15dc779aSAndroid Build Coastguard Worker sMLAL v2.4s, v25.4h, v10.4h 501*15dc779aSAndroid Build Coastguard Worker 502*15dc779aSAndroid Build Coastguard Worker uMULL v4.4s, v18.4h, v10.4h 503*15dc779aSAndroid Build Coastguard Worker uMULL v6.4s, v16.4h, v10.4h 504*15dc779aSAndroid Build Coastguard Worker 505*15dc779aSAndroid Build Coastguard Worker NEG v0.4s, v0.4s 506*15dc779aSAndroid Build Coastguard Worker ADD v14.4s, v30.4s , v2.4s 507*15dc779aSAndroid Build Coastguard Worker ADD v26.4s, v28.4s , v0.4s 508*15dc779aSAndroid Build Coastguard Worker 509*15dc779aSAndroid Build Coastguard Worker rev64 v14.4s, v14.4s 510*15dc779aSAndroid Build Coastguard Worker ushR v4.4s, v4.4s, #16 511*15dc779aSAndroid Build Coastguard Worker 512*15dc779aSAndroid Build Coastguard Worker swp v14.D[0], v14.D[1] 513*15dc779aSAndroid Build Coastguard Worker ushR v6.4s, v6.4s, #16 514*15dc779aSAndroid Build Coastguard Worker 515*15dc779aSAndroid Build Coastguard Worker sMLAL v4.4s, v19.4h, v10.4h 516*15dc779aSAndroid Build Coastguard Worker 517*15dc779aSAndroid Build Coastguard Worker sMLAL v6.4s, v17.4h, v10.4h 518*15dc779aSAndroid Build Coastguard Worker 519*15dc779aSAndroid Build Coastguard Worker 520*15dc779aSAndroid Build Coastguard Worker 521*15dc779aSAndroid Build Coastguard Worker 522*15dc779aSAndroid Build Coastguard Worker ADD v24.4s, v20.4s , v4.4s 523*15dc779aSAndroid Build Coastguard Worker 524*15dc779aSAndroid Build Coastguard Worker rev64 v24.4s, v24.4s 525*15dc779aSAndroid Build Coastguard Worker NEG v16.4s, v6.4s 526*15dc779aSAndroid Build Coastguard Worker 527*15dc779aSAndroid Build Coastguard Worker 528*15dc779aSAndroid Build Coastguard Worker 529*15dc779aSAndroid Build Coastguard Worker swp v24.D[0], v24.D[1] 530*15dc779aSAndroid Build Coastguard Worker ADD v16.4s, v22.4s , v16.4s 531*15dc779aSAndroid Build Coastguard Worker 532*15dc779aSAndroid Build Coastguard Worker MOV v25.16B, v24.16B 533*15dc779aSAndroid Build Coastguard Worker MOV v15.16B, v14.16B 534*15dc779aSAndroid Build Coastguard Worker ST2 { v15.4s, v16.4s}, [x0], #32 535*15dc779aSAndroid Build Coastguard Worker ST2 { v25.4s, v26.4s}, [x7], x8 536*15dc779aSAndroid Build Coastguard Worker 537*15dc779aSAndroid Build Coastguard Worker 538*15dc779aSAndroid Build Coastguard Worker 539*15dc779aSAndroid Build Coastguard Worker 540*15dc779aSAndroid Build Coastguard Worker LD4 {v0.4h, v1.4h, v2.4h, v3.4h}, [x5], x8 541*15dc779aSAndroid Build Coastguard Worker 542*15dc779aSAndroid Build Coastguard Worker movi v6.2s, #0x00000000 543*15dc779aSAndroid Build Coastguard Worker movi v7.2s, #0x00000000 544*15dc779aSAndroid Build Coastguard Worker 545*15dc779aSAndroid Build Coastguard Worker LD2 {v4.2s, v5.2s}, [x1], #16 546*15dc779aSAndroid Build Coastguard Worker LD2 {v6.s, v7.s}[0], [x1] 547*15dc779aSAndroid Build Coastguard Worker 548*15dc779aSAndroid Build Coastguard Worker LD2 {v8.h, v9.h}[0], [x2], x6 549*15dc779aSAndroid Build Coastguard Worker LD2 {v8.h, v9.h}[1], [x2], x6 550*15dc779aSAndroid Build Coastguard Worker LD2 {v8.h, v9.h}[2], [x2], x6 551*15dc779aSAndroid Build Coastguard Worker LD2 {v8.h, v9.h}[3], [x2], x6 552*15dc779aSAndroid Build Coastguard Worker 553*15dc779aSAndroid Build Coastguard Worker rev64 v12.8h, v8.8h 554*15dc779aSAndroid Build Coastguard Worker rev64 v13.8h, v9.8h 555*15dc779aSAndroid Build Coastguard Worker swp v5.D[0], v6.D[0] 556*15dc779aSAndroid Build Coastguard Worker 557*15dc779aSAndroid Build Coastguard Worker 558*15dc779aSAndroid Build Coastguard Worker MOV v30.8B, V4.8B 559*15dc779aSAndroid Build Coastguard Worker UZP1 v4.4h, v30.4h, v5.4h 560*15dc779aSAndroid Build Coastguard Worker UZP2 v5.4h, v30.4h, v5.4h 561*15dc779aSAndroid Build Coastguard Worker MOV v30.8B, V6.8B 562*15dc779aSAndroid Build Coastguard Worker UZP1 v6.4h, v30.4h, v7.4h 563*15dc779aSAndroid Build Coastguard Worker UZP2 v7.4h, v30.4h, v7.4h 564*15dc779aSAndroid Build Coastguard Worker uMULL v30.4s, v2.4h, v13.4h 565*15dc779aSAndroid Build Coastguard Worker uMULL v28.4s, v0.4h, v13.4h 566*15dc779aSAndroid Build Coastguard Worker 567*15dc779aSAndroid Build Coastguard Worker uMULL v26.4s, v2.4h, v12.4h 568*15dc779aSAndroid Build Coastguard Worker uMULL v24.4s, v0.4h, v12.4h 569*15dc779aSAndroid Build Coastguard Worker 570*15dc779aSAndroid Build Coastguard Worker ushR v30.4s, v30.4s, #16 571*15dc779aSAndroid Build Coastguard Worker ushR v28.4s, v28.4s, #16 572*15dc779aSAndroid Build Coastguard Worker ushR v26.4s, v26.4s, #16 573*15dc779aSAndroid Build Coastguard Worker ushR v24.4s, v24.4s, #16 574*15dc779aSAndroid Build Coastguard Worker 575*15dc779aSAndroid Build Coastguard Worker sMLAL v30.4s, v3.4h, v13.4h 576*15dc779aSAndroid Build Coastguard Worker sMLAL v28.4s, v1.4h, v13.4h 577*15dc779aSAndroid Build Coastguard Worker sMLAL v26.4s, v3.4h, v12.4h 578*15dc779aSAndroid Build Coastguard Worker sMLAL v24.4s, v1.4h, v12.4h 579*15dc779aSAndroid Build Coastguard Worker 580*15dc779aSAndroid Build Coastguard Worker uMULL v22.4s, v6.4h, v9.4h 581*15dc779aSAndroid Build Coastguard Worker uMULL v20.4s, v4.4h, v9.4h 582*15dc779aSAndroid Build Coastguard Worker 583*15dc779aSAndroid Build Coastguard Worker 584*15dc779aSAndroid Build Coastguard Worker ADD v28.4s, v28.4s , v26.4s 585*15dc779aSAndroid Build Coastguard Worker SUB v30.4s, v30.4s , v24.4s 586*15dc779aSAndroid Build Coastguard Worker NEG v28.4s, v28.4s 587*15dc779aSAndroid Build Coastguard Worker 588*15dc779aSAndroid Build Coastguard Worker uMULL v18.4s, v6.4h, v8.4h 589*15dc779aSAndroid Build Coastguard Worker uMULL v16.4s, v4.4h, v8.4h 590*15dc779aSAndroid Build Coastguard Worker 591*15dc779aSAndroid Build Coastguard Worker mov v26.8b, v30.8b 592*15dc779aSAndroid Build Coastguard Worker mov v27.D[0], v30.D[1] 593*15dc779aSAndroid Build Coastguard Worker ushR v22.4s, v22.4s, #16 594*15dc779aSAndroid Build Coastguard Worker 595*15dc779aSAndroid Build Coastguard Worker mov v24.16b, v28.16b 596*15dc779aSAndroid Build Coastguard Worker mov v25.D[0], v28.D[1] 597*15dc779aSAndroid Build Coastguard Worker ushR v20.4s, v20.4s, #16 598*15dc779aSAndroid Build Coastguard Worker 599*15dc779aSAndroid Build Coastguard Worker 600*15dc779aSAndroid Build Coastguard Worker MOV v31.8B, V26.8B 601*15dc779aSAndroid Build Coastguard Worker UZP1 v26.4h, v31.4h, v27.4h 602*15dc779aSAndroid Build Coastguard Worker UZP2 v27.4h, v31.4h, v27.4h 603*15dc779aSAndroid Build Coastguard Worker ushr v18.4s, v18.4s, #16 604*15dc779aSAndroid Build Coastguard Worker 605*15dc779aSAndroid Build Coastguard Worker MOV v31.8B, V24.8B 606*15dc779aSAndroid Build Coastguard Worker UZP1 v24.4h, v31.4h, v25.4h 607*15dc779aSAndroid Build Coastguard Worker UZP2 v25.4h, v31.4h, v25.4h 608*15dc779aSAndroid Build Coastguard Worker ushR v16.4s, v16.4s, #16 609*15dc779aSAndroid Build Coastguard Worker 610*15dc779aSAndroid Build Coastguard Worker sMLAL v22.4s, v7.4h, v9.4h 611*15dc779aSAndroid Build Coastguard Worker sMLAL v20.4s, v5.4h, v9.4h 612*15dc779aSAndroid Build Coastguard Worker sMLAL v18.4s, v7.4h, v8.4h 613*15dc779aSAndroid Build Coastguard Worker sMLAL v16.4s, v5.4h, v8.4h 614*15dc779aSAndroid Build Coastguard Worker 615*15dc779aSAndroid Build Coastguard Worker 616*15dc779aSAndroid Build Coastguard Worker uMULL v0.4s, v26.4h, v10.4h 617*15dc779aSAndroid Build Coastguard Worker 618*15dc779aSAndroid Build Coastguard Worker 619*15dc779aSAndroid Build Coastguard Worker uMULL v2.4s, v24.4h, v10.4h 620*15dc779aSAndroid Build Coastguard Worker 621*15dc779aSAndroid Build Coastguard Worker ADD v22.4s, v22.4s , v16.4s 622*15dc779aSAndroid Build Coastguard Worker 623*15dc779aSAndroid Build Coastguard Worker 624*15dc779aSAndroid Build Coastguard Worker SUB v20.4s, v18.4s , v20.4s 625*15dc779aSAndroid Build Coastguard Worker 626*15dc779aSAndroid Build Coastguard Worker 627*15dc779aSAndroid Build Coastguard Worker NEG v22.4s, v22.4s 628*15dc779aSAndroid Build Coastguard Worker 629*15dc779aSAndroid Build Coastguard Worker 630*15dc779aSAndroid Build Coastguard Worker mov v18.8B, v22.8B 631*15dc779aSAndroid Build Coastguard Worker mov v19.D[0], v22.D[1] 632*15dc779aSAndroid Build Coastguard Worker ushR v0.4s, v0.4s, #16 633*15dc779aSAndroid Build Coastguard Worker 634*15dc779aSAndroid Build Coastguard Worker mov v16.16b, v20.16b 635*15dc779aSAndroid Build Coastguard Worker mov v17.D[0], v20.D[1] 636*15dc779aSAndroid Build Coastguard Worker ushR v2.4s, v2.4s, #16 637*15dc779aSAndroid Build Coastguard Worker 638*15dc779aSAndroid Build Coastguard Worker 639*15dc779aSAndroid Build Coastguard Worker MOV v31.8B, V18.8B 640*15dc779aSAndroid Build Coastguard Worker UZP1 v18.4h, v31.4h, v19.4h 641*15dc779aSAndroid Build Coastguard Worker UZP2 v19.4h, v31.4h, v19.4h 642*15dc779aSAndroid Build Coastguard Worker sMLAL v0.4s, v27.4h, v10.4h 643*15dc779aSAndroid Build Coastguard Worker 644*15dc779aSAndroid Build Coastguard Worker 645*15dc779aSAndroid Build Coastguard Worker MOV v31.8B, V16.8B 646*15dc779aSAndroid Build Coastguard Worker UZP1 v16.4h, v31.4h, v17.4h 647*15dc779aSAndroid Build Coastguard Worker UZP2 v17.4h, v31.4h, v17.4h 648*15dc779aSAndroid Build Coastguard Worker sMLAL v2.4s, v25.4h, v10.4h 649*15dc779aSAndroid Build Coastguard Worker 650*15dc779aSAndroid Build Coastguard Worker uMULL v4.4s, v18.4h, v10.4h 651*15dc779aSAndroid Build Coastguard Worker uMULL v6.4s, v16.4h, v10.4h 652*15dc779aSAndroid Build Coastguard Worker 653*15dc779aSAndroid Build Coastguard Worker NEG v0.4s, v0.4s 654*15dc779aSAndroid Build Coastguard Worker ADD v14.4s, v30.4s , v2.4s 655*15dc779aSAndroid Build Coastguard Worker ADD v26.4s, v28.4s , v0.4s 656*15dc779aSAndroid Build Coastguard Worker 657*15dc779aSAndroid Build Coastguard Worker rev64 v14.4s, v14.4s 658*15dc779aSAndroid Build Coastguard Worker ushR v4.4s, v4.4s, #16 659*15dc779aSAndroid Build Coastguard Worker 660*15dc779aSAndroid Build Coastguard Worker swp v14.D[0], v14.D[1] 661*15dc779aSAndroid Build Coastguard Worker ushR v6.4s, v6.4s, #16 662*15dc779aSAndroid Build Coastguard Worker 663*15dc779aSAndroid Build Coastguard Worker sMLAL v4.4s, v19.4h, v10.4h 664*15dc779aSAndroid Build Coastguard Worker 665*15dc779aSAndroid Build Coastguard Worker sMLAL v6.4s, v17.4h, v10.4h 666*15dc779aSAndroid Build Coastguard Worker 667*15dc779aSAndroid Build Coastguard Worker 668*15dc779aSAndroid Build Coastguard Worker 669*15dc779aSAndroid Build Coastguard Worker 670*15dc779aSAndroid Build Coastguard Worker ADD v24.4s, v20.4s , v4.4s 671*15dc779aSAndroid Build Coastguard Worker 672*15dc779aSAndroid Build Coastguard Worker rev64 v24.4s, v24.4s 673*15dc779aSAndroid Build Coastguard Worker NEG v16.4s, v6.4s 674*15dc779aSAndroid Build Coastguard Worker 675*15dc779aSAndroid Build Coastguard Worker swp v24.D[0], v24.D[1] 676*15dc779aSAndroid Build Coastguard Worker ADD v16.4s, v22.4s , v16.4s 677*15dc779aSAndroid Build Coastguard Worker 678*15dc779aSAndroid Build Coastguard Worker 679*15dc779aSAndroid Build Coastguard Worker MOV v15.16B, v14.16B 680*15dc779aSAndroid Build Coastguard Worker ST2 {v15.2s, v16.2s}, [x0], #16 681*15dc779aSAndroid Build Coastguard Worker 682*15dc779aSAndroid Build Coastguard Worker ST2 {v15.s, v16.s}[2], [x0], #8 683*15dc779aSAndroid Build Coastguard Worker 684*15dc779aSAndroid Build Coastguard Worker ST1 {v15.s}[3], [x0] 685*15dc779aSAndroid Build Coastguard Worker 686*15dc779aSAndroid Build Coastguard Worker ADD x7, x7, #4 687*15dc779aSAndroid Build Coastguard Worker 688*15dc779aSAndroid Build Coastguard Worker ST1 {v26.s}[0], [x7], #4 689*15dc779aSAndroid Build Coastguard Worker MOV v25.16B, v24.16B 690*15dc779aSAndroid Build Coastguard Worker ST2 {v25.s, v26.s}[1], [x7], #8 691*15dc779aSAndroid Build Coastguard Worker MOV v27.D[0], V26.d[1] 692*15dc779aSAndroid Build Coastguard Worker mov v26.d[0], v25.d[1] 693*15dc779aSAndroid Build Coastguard Worker ST2 {v26.2s, v27.2s}, [x7] 694*15dc779aSAndroid Build Coastguard Worker 695*15dc779aSAndroid Build Coastguard Worker 696*15dc779aSAndroid Build Coastguard Worker 697*15dc779aSAndroid Build Coastguard Worker 698*15dc779aSAndroid Build Coastguard Worker 699*15dc779aSAndroid Build Coastguard Worker 700*15dc779aSAndroid Build Coastguard Worker pop_v_regs 701*15dc779aSAndroid Build Coastguard Worker ret 702*15dc779aSAndroid Build Coastguard Worker 703*15dc779aSAndroid Build Coastguard Worker 704*15dc779aSAndroid Build Coastguard Worker 705*15dc779aSAndroid Build Coastguard Worker 706*15dc779aSAndroid Build Coastguard Worker 707*15dc779aSAndroid Build Coastguard Worker 708*15dc779aSAndroid Build Coastguard Worker 709*15dc779aSAndroid Build Coastguard Worker 710*15dc779aSAndroid Build Coastguard Worker 711*15dc779aSAndroid Build Coastguard Worker 712*15dc779aSAndroid Build Coastguard Worker 713*15dc779aSAndroid Build Coastguard Worker 714