1; 2; Copyright (C) 2009 The Android Open Source Project 3; 4; Licensed under the Apache License, Version 2.0 (the "License"); 5; you may not use this file except in compliance with the License. 6; You may obtain a copy of the License at 7; 8; http://www.apache.org/licenses/LICENSE-2.0 9; 10; Unless required by applicable law or agreed to in writing, software 11; distributed under the License is distributed on an "AS IS" BASIS, 12; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13; See the License for the specific language governing permissions and 14; limitations under the License. 15; 16 17 REQUIRE8 18 PRESERVE8 19 20 AREA |.text|, CODE 21 22 EXPORT h264bsdClearMbLayer 23 24; Input / output registers 25pMbLayer RN 0 26size RN 1 27pTmp RN 2 28step RN 3 29 30; -- NEON registers -- 31 32qZero QN Q0.U8 33 34;/*------------------------------------------------------------------------------ 35; 36; Function: h264bsdClearMbLayer 37; 38; Functional description: 39; 40; Inputs: 41; 42; Outputs: 43; 44; Returns: 45; 46;------------------------------------------------------------------------------*/ 47 48h264bsdClearMbLayer 49 50 VMOV qZero, #0 51 ADD pTmp, pMbLayer, #16 52 MOV step, #32 53 SUBS size, size, #64 54 55loop 56 VST1 qZero, [pMbLayer], step 57 SUBS size, size, #64 58 VST1 qZero, [pTmp], step 59 VST1 qZero, [pMbLayer], step 60 VST1 qZero, [pTmp], step 61 BCS loop 62 63 BX lr 64 END 65 66 67