summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/codecs/on2/h264dec/omxdl/arm_neon/vc/m4p2/src/omxVCM4P2_DecodeVLCZigzag_IntraDCVLC_s.s
diff options
context:
space:
mode:
Diffstat (limited to 'media/libstagefright/codecs/on2/h264dec/omxdl/arm_neon/vc/m4p2/src/omxVCM4P2_DecodeVLCZigzag_IntraDCVLC_s.s')
-rwxr-xr-xmedia/libstagefright/codecs/on2/h264dec/omxdl/arm_neon/vc/m4p2/src/omxVCM4P2_DecodeVLCZigzag_IntraDCVLC_s.s224
1 files changed, 0 insertions, 224 deletions
diff --git a/media/libstagefright/codecs/on2/h264dec/omxdl/arm_neon/vc/m4p2/src/omxVCM4P2_DecodeVLCZigzag_IntraDCVLC_s.s b/media/libstagefright/codecs/on2/h264dec/omxdl/arm_neon/vc/m4p2/src/omxVCM4P2_DecodeVLCZigzag_IntraDCVLC_s.s
deleted file mode 100755
index 778aaf2..0000000
--- a/media/libstagefright/codecs/on2/h264dec/omxdl/arm_neon/vc/m4p2/src/omxVCM4P2_DecodeVLCZigzag_IntraDCVLC_s.s
+++ /dev/null
@@ -1,224 +0,0 @@
-;/**
-; *
-; * File Name: omxVCM4P2_DecodeVLCZigzag_IntraDCVLC_s.s
-; * OpenMAX DL: v1.0.2
-; * Revision: 12290
-; * Date: Wednesday, April 9, 2008
-; *
-; * (c) Copyright 2007-2008 ARM Limited. All Rights Reserved.
-; *
-; *
-; *
-; * Description:
-; * Contains modules for zigzag scanning and VLC decoding
-; * for inter block.
-; *
-; *
-; *
-; * Function: omxVCM4P2_DecodeVLCZigzag_Inter
-; *
-; * Description:
-; * Performs VLC decoding and inverse zigzag scan for one intra coded block.
-; *
-; * Remarks:
-; *
-; * Parameters:
-; * [in] ppBitStream pointer to the pointer to the current byte in
-; * the bitstream buffer
-; * [in] pBitOffset pointer to the bit position in the byte pointed
-; * to by *ppBitStream. *pBitOffset is valid within [0-7].
-; * [in] shortVideoHeader binary flag indicating presence of short_video_header;
-; * escape modes 0-3 are used if shortVideoHeader==0,
-; * and escape mode 4 is used when shortVideoHeader==1.
-; * [out] ppBitStream *ppBitStream is updated after the block is
-; * decoded, so that it points to the current byte
-; * in the bit stream buffer
-; * [out] pBitOffset *pBitOffset is updated so that it points to the
-; * current bit position in the byte pointed by
-; * *ppBitStream
-; * [out] pDst pointer to the coefficient buffer of current
-; * block. Must be 16-byte aligned
-; *
-; * Return Value:
-; * OMX_Sts_BadArgErr - bad arguments
-; * -At least one of the following pointers is NULL: ppBitStream, *ppBitStream, pBitOffset, pDst, or
-; * -pDst is not 16-byte aligned, or
-; * -*pBitOffset exceeds [0,7].
-; * OMX_Sts_Err - status error
-; * -At least one mark bit is equal to zero
-; * -Encountered an illegal stream code that cannot be found in the VLC table
-; * -Encountered and illegal code in the VLC FLC table
-; * -The number of coefficients is greater than 64
-; *
-; */
-
-
- INCLUDE omxtypes_s.h
- INCLUDE armCOMM_s.h
- INCLUDE armCOMM_BitDec_s.h
-
-
- M_VARIANTS CortexA8
-
-
-
-
-
- IF CortexA8
-
-
- ;// Import various tables needed for the function
-
-
- IMPORT armVCM4P2_IntraVlcL0L1 ;// Contains optimized and packed VLC Tables for both Last =1 and last=0
- ;// Packed in Run:Level:Last format
- IMPORT armVCM4P2_IntraL0L1LMAX ;// Contains LMAX table entries with both Last=0 and Last=1
- IMPORT armVCM4P2_IntraL0L1RMAX ;// Contains RMAX table entries with both Last=0 and Last=1
- IMPORT armVCM4P2_aClassicalZigzagScan ;// contains CLassical, Horizontal, Vertical Zigzag table entries with double the original values
- IMPORT armVCM4P2_aIntraDCLumaChromaIndex ;// Contains Optimized DCLuma and DCChroma Index table Entries
-
-
- IMPORT armVCM4P2_DecodeVLCZigzag_AC_unsafe
-
-;//Input Arguments
-
-ppBitStream RN 0
-pBitOffset RN 1
-pDst RN 2
-PredDir RN 3
-shortVideoHeader RN 3
-videoComp RN 5
-;//Local Variables
-
-Return RN 0
-
-pDCLumaChromaIndex RN 4
-pDCChromaIndex RN 7
-pVlcTableL0L1 RN 4
-pLMAXTableL0L1 RN 4
-pRMAXTableL0L1 RN 4
-pZigzagTable RN 4
-Count RN 6
-DCValueSize RN 6
-powOfSize RN 7
-temp1 RN 5
-
-
-;// Scratch Registers
-
-RBitStream RN 8
-RBitBuffer RN 9
-RBitCount RN 10
-
-T1 RN 11
-T2 RN 12
-DCVal RN 14
-
-
- ;// Allocate stack memory to store optimized VLC,Zigzag, RMAX, LMAX Table Addresses
-
- M_ALLOC4 ppVlcTableL0L1,4
- M_ALLOC4 ppLMAXTableL0L1,4
- M_ALLOC4 ppRMAXTableL0L1,4
- M_ALLOC4 ppZigzagTable,4
- M_ALLOC4 pDCCoeff,4
-
-
-
- M_START omxVCM4P2_DecodeVLCZigzag_IntraDCVLC,r12
-
- M_ARG shortVideoHeaderonStack,4 ;// Pointer to argument on stack
- M_ARG videoComponstack,4 ;// Pointer to argument on stack
-
-
- ;// Decode DC Coefficient
-
-
- LDR pDCLumaChromaIndex, =armVCM4P2_aIntraDCLumaChromaIndex ;// Load Optimized VLC Table for Luminance and Chrominance
-
- ;// Initializing the Bitstream Macro
-
- M_BD_INIT0 ppBitStream, pBitOffset, RBitStream, RBitBuffer, RBitCount
- M_LDR videoComp,videoComponstack
- M_BD_INIT1 T1, T2, T2
- ADD pDCLumaChromaIndex,pDCLumaChromaIndex,videoComp, LSL #6
- M_BD_INIT2 T1, T2, T2
-
-
- M_BD_VLD DCValueSize,T1,T2,pDCLumaChromaIndex,4,2 ;// VLC Decode using optimized Luminance and Chrominance VLC Table
-
-
-
-
-DecodeDC
-
- CMP DCValueSize,#12
- BGT ExitError
-
- CMP DCValueSize,#0
- MOVEQ DCVal,#0 ;// If DCValueSize is zero then DC coeff =0
- BEQ ACDecode ;// Branch to perform AC Coeff Decoding
-
- M_BD_VREAD16 DCVal,DCValueSize,T1,T2 ;// Get DC Value From Bit stream
-
-
- MOV powOfSize,#1
- LSL powOfSize,DCValueSize ;// powOfSize=pow(2,DCValueSize)
- CMP DCVal,powOfSize,LSR #1 ;// Compare DCVal with powOfSize/2
- ADDLT DCVal,DCVal,#1
- SUBLT DCVal,DCVal,powOfSize ;// If Lessthan powOfSize/2 DCVal=DCVal-powOfSize+1
- ;// Else DCVal= fetchbits from bit stream
-
-CheckDCValueSize
-
- CMP DCValueSize,#8 ;// If DCValueSize greater than 8 check marker bit
-
- BLE ACDecode
-
- M_BD_READ8 temp1,1,T1
- TEQ temp1,#0 ;// If Marker bit is zero Exit with an Error Message
- BEQ ExitError
-
-
-
- ;// Decode AC Coefficient
-
-ACDecode
-
- M_STR DCVal,pDCCoeff ;// Store Decoded DC Coeff on Stack
- M_BD_FINI ppBitStream,pBitOffset ;// Terminating the Bit stream Macro
-
- LDR pZigzagTable, =armVCM4P2_aClassicalZigzagScan ;// Load Zigzag talbe address
- ADD pZigzagTable, pZigzagTable, PredDir, LSL #6 ;// Modify the Zigzag table adress based on PredDir
-
- M_STR pZigzagTable,ppZigzagTable ;// Store zigzag table on stack
- LDR pVlcTableL0L1, =armVCM4P2_IntraVlcL0L1 ;// Load Optimized VLC Table With both Last=0 and Last=1 Entries
- M_STR pVlcTableL0L1,ppVlcTableL0L1 ;// Store Optimized VLC Table on stack
- LDR pLMAXTableL0L1, =armVCM4P2_IntraL0L1LMAX ;// Load LMAX Table
- M_STR pLMAXTableL0L1,ppLMAXTableL0L1 ;// Store LMAX table on stack
- LDR pRMAXTableL0L1, =armVCM4P2_IntraL0L1RMAX ;// Load RMAX Table
- MOV Count,#1 ;// Set Start =1
-
- M_STR pRMAXTableL0L1,ppRMAXTableL0L1 ;// Store RMAX Table on Stack
-
-
- M_LDR shortVideoHeader,shortVideoHeaderonStack ;// Load the Input Argument From Stack
-
- BL armVCM4P2_DecodeVLCZigzag_AC_unsafe ;// Call the Unsafe Function
-
- M_LDR DCVal,pDCCoeff ;// Get the Decoded DC Value From Stack
- STRH DCVal,[pDst] ;// Store the DC Value
- B ExitOK
-
-
-
-ExitError
-
- M_BD_FINI ppBitStream,pBitOffset ;// Terminating the Bit Stream Macro in case of an Error
- MOV Return,#OMX_Sts_Err ;// Exit with an Error Message
-ExitOK
-
- M_END
- ENDIF
-
- END