summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/codecs/on2/h264dec/omxdl/arm_neon/vc/m4p2/src/armVCM4P2_DecodeVLCZigzag_AC_unsafe_s.s
diff options
context:
space:
mode:
Diffstat (limited to 'media/libstagefright/codecs/on2/h264dec/omxdl/arm_neon/vc/m4p2/src/armVCM4P2_DecodeVLCZigzag_AC_unsafe_s.s')
-rwxr-xr-xmedia/libstagefright/codecs/on2/h264dec/omxdl/arm_neon/vc/m4p2/src/armVCM4P2_DecodeVLCZigzag_AC_unsafe_s.s398
1 files changed, 0 insertions, 398 deletions
diff --git a/media/libstagefright/codecs/on2/h264dec/omxdl/arm_neon/vc/m4p2/src/armVCM4P2_DecodeVLCZigzag_AC_unsafe_s.s b/media/libstagefright/codecs/on2/h264dec/omxdl/arm_neon/vc/m4p2/src/armVCM4P2_DecodeVLCZigzag_AC_unsafe_s.s
deleted file mode 100755
index e4a7f33..0000000
--- a/media/libstagefright/codecs/on2/h264dec/omxdl/arm_neon/vc/m4p2/src/armVCM4P2_DecodeVLCZigzag_AC_unsafe_s.s
+++ /dev/null
@@ -1,398 +0,0 @@
-;/**
-; *
-; * File Name: armVCM4P2_DecodeVLCZigzag_AC_unsafe_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, intra block.
-; *
-; *
-; *
-; * Function: omxVCM4P2_DecodeVLCZigzag_AC_unsafe
-; *
-; * Description:
-; * Performs VLC decoding and inverse zigzag scan
-; *
-; *
-; *
-; *
-; */
-
-
- INCLUDE omxtypes_s.h
- INCLUDE armCOMM_s.h
- INCLUDE armCOMM_BitDec_s.h
-
-
- M_VARIANTS ARM1136JS
-
-
-
-
-
- IF ARM1136JS
-
-
-
-
-
-;//Input Arguments
-
-ppBitStream RN 0
-pBitOffset RN 1
-pDst RN 2
-shortVideoHeader RN 3
-
-
-;//Local Variables
-
-Return RN 0
-
-pVlcTableL0L1 RN 4
-pLMAXTableL0L1 RN 4
-pRMAXTableL0L1 RN 4
-pZigzagTable RN 4
-
-ftype RN 0
-temp3 RN 4
-temp RN 5
-Count RN 6
-Escape RN 5
-
-;// armVCM4P2_FillVLDBuffer
-zigzag RN 0
-storeLevel RN 1
-temp2 RN 4
-temp1 RN 5
-sign RN 5
-Last RN 7
-storeRun RN 14
-
-
-packRetIndex RN 5
-
-
-markerbit RN 5
-
-;// Scratch Registers
-
-RBitStream RN 8
-RBitBuffer RN 9
-RBitCount RN 10
-
-T1 RN 11
-T2 RN 12
-LR RN 14
-
-
-
- M_ALLOC4 pppBitStream,4
- M_ALLOC4 ppOffset,4
- M_ALLOC4 pLinkRegister,4
-
- M_START armVCM4P2_DecodeVLCZigzag_AC_unsafe
-
- ;// get the table addresses from stack
- M_ARG ppVlcTableL0L1,4
- M_ARG ppLMAXTableL0L1,4
- M_ARG ppRMAXTableL0L1,4
- M_ARG ppZigzagTable,4
-
- ;// Store ALL zeros at pDst
-
- MOV temp1,#0 ;// Initialize Count to zero
- MOV Last,#0
- M_STR LR,pLinkRegister ;// Store Link Register on Stack
- MOV temp2,#0
- MOV LR,#0
-
- ;// Initialize the Macro and Store all zeros to pDst
-
- STM pDst!,{temp2,temp1,Last,LR}
- M_BD_INIT0 ppBitStream, pBitOffset, RBitStream, RBitBuffer, RBitCount
- STM pDst!,{temp2,temp1,Last,LR}
- M_BD_INIT1 T1, T2, T2
- STM pDst!,{temp2,temp1,Last,LR}
- M_BD_INIT2 T1, T2, T2
- STM pDst!,{temp2,temp1,Last,LR}
- M_STR ppBitStream,pppBitStream ;// Store ppBitstream on stack
- STM pDst!,{temp2,temp1,Last,LR}
- M_STR pBitOffset,ppOffset ;// Store pBitOffset on stack
- STM pDst!,{temp2,temp1,Last,LR}
-
- STM pDst!,{temp2,temp1,Last,LR}
- STM pDst!,{temp2,temp1,Last,LR}
-
-
- SUB pDst,pDst,#128 ;// Restore pDst
-
- ;// The armVCM4P2_GetVLCBits begins
-
-getVLCbits
-
- M_BD_LOOK8 Escape,7 ;// Load Escape Value
- LSR Escape,Escape,#25
- CMP Escape,#3 ;// check for escape mode
- MOVNE ftype,#0
- BNE notEscapemode ;// Branch if not in Escape mode 3
-
- M_BD_VSKIP8 #7,T1
- CMP shortVideoHeader,#0 ;// Check shortVideoHeader flag to know the type of Escape mode
- BEQ endFillVLD
-
- ;// Escape Mode 4
-
- M_BD_READ8 Last,1,T1
- M_BD_READ8 storeRun,6,T1
- M_BD_READ8 storeLevel,8,T1
-
-
- ;// Check whether the Reserved values for Level are used and Exit with an Error Message if it is so
-
- TEQ storeLevel,#0
- TEQNE storeLevel,#128
- BEQ ExitError
-
- ADD temp2,storeRun,Count
- CMP temp2,#64
- BGE ExitError ;// error if Count+storeRun >= 64
-
-
- ;// Load address of zigzagTable
-
- M_LDR pZigzagTable,ppZigzagTable ;// Loading the Address of Zigzag table
-
-
- ;// armVCM4P2_FillVLDBuffer
-
- SXTB storeLevel,storeLevel ;// Sign Extend storeLevel to 32 bits
-
-
- ;// To Reflect Runlength
-
- ADD Count,Count,storeRun
- LDRB zigzag,[pZigzagTable,Count]
- ADD Count,Count,#1
- STRH storeLevel,[pDst,zigzag] ;// store Level
-
- B ExitOk
-
-
-
-endFillVLD
-
-
- ;// Load Ftype( Escape Mode) value based on the two successive bits in the bitstream
-
- M_BD_READ8 temp1,1,T1
- CMP temp1,#0
- MOVEQ ftype,#1
- BEQ notEscapemode
- M_BD_READ8 temp1,1,T1
- CMP temp1,#1
- MOVEQ ftype,#3
- MOVNE ftype,#2
-
-
-notEscapemode
-
- ;// Load optimized packed VLC table with last=0 and Last=1
-
- M_LDR pVlcTableL0L1,ppVlcTableL0L1 ;// Load Combined VLC Table
-
-
- CMP ftype,#3 ;// If ftype >=3 get perform Fixed Length Decoding (Escape Mode 3)
- BGE EscapeMode3 ;// Else continue normal VLC Decoding
-
- ;// Variable lengh decoding, "armUnPackVLC32"
-
-
- M_BD_VLD packRetIndex,T1,T2,pVlcTableL0L1,4,2
-
-
- LDR temp3,=0xFFF
-
- CMP packRetIndex,temp3 ;// Check for invalid symbol
- BEQ ExitError ;// if invalid symbol occurs exit with an error message
-
- AND Last,packRetIndex,#2 ;// Get Last from packed Index
-
-
-
-
- LSR storeRun,packRetIndex,#7 ;// Get Run Value from Packed index
- AND storeLevel,packRetIndex,#0x7c ;// storeLevel=packRetIndex[2-6],storeLevel[0-1]=0
-
-
- M_LDR pLMAXTableL0L1,ppLMAXTableL0L1 ;// Load LMAX table
-
-
- LSR storeLevel,storeLevel,#2 ;// Level value
-
- CMP ftype,#1
- BNE ftype2
-
- ;// ftype==1; Escape mode =1
-
-
- ADD temp1, pLMAXTableL0L1, Last, LSL#4 ;// If the Last=1 add 32 to table address
- LDRB temp1,[temp1,storeRun]
-
-
- ADD storeLevel,temp1,storeLevel
-
-ftype2
-
- ;// ftype =2; Escape mode =2
-
- M_LDR pRMAXTableL0L1,ppRMAXTableL0L1 ;// Load RMAX Table
-
- CMP ftype,#2
- BNE FillVLDL1
-
- ADD temp1, pRMAXTableL0L1, Last, LSL#4 ;// If Last=1 add 32 to table address
- SUB temp2,storeLevel,#1
- LDRB temp1,[temp1,temp2]
-
-
- ADD storeRun,storeRun,#1
- ADD storeRun,temp1
-
-FillVLDL1
-
-
- ;// armVCM4P2_FillVLDBuffer
-
- M_LDR pZigzagTable,ppZigzagTable ;// Load address of zigzagTable
-
- M_BD_READ8 sign,1,T1
-
- CMP sign,#1
- RSBEQ storeLevel,storeLevel,#0
-
- ADD temp1,storeRun,Count ;// Exit with an error message if Run + Count exceeds 63
- CMP temp1,#64
- BGE ExitError
-
-
-
-
-
-
- ;// To Reflect Runlenght
-
- ADD Count,Count,storeRun
-
-storeLevelL1
-
- LDRB zigzag,[pZigzagTable,Count]
- CMP Last,#2 ;// Check if the Level val is Last non zero val
- ADD Count,Count,#1
- LSR Last,Last,#1
- STRH storeLevel,[pDst,zigzag]
-
- BNE end
-
- B ExitOk
-
-
-
- ;// Fixed Lengh Decoding Escape Mode 3
-
-EscapeMode3
-
- M_BD_READ8 Last,1,T1
- M_BD_READ8 storeRun,6,T1
-
- ADD temp2,storeRun,Count ;// Exit with an error message if Run + Count exceeds 63
- CMP temp2,#64
- BGE ExitError
-
- M_BD_READ8 markerbit,1,T1
- TEQ markerbit,#0 ;// Exit with an error message if marker bit is zero
- BEQ ExitError
-
- M_BD_READ16 storeLevel,12,T1
-
- TST storeLevel,#0x800 ;// test if the level is negative
- SUBNE storeLevel,storeLevel,#4096
- CMP storeLevel,#0
- CMPNE storeLevel,#-2048
- BEQ ExitError ;// Exit with an error message if Level==0 or -2048
-
- M_LDR pZigzagTable,ppZigzagTable ;// Load address of zigzagTable
-
- M_BD_READ8 markerbit,1,T1
-
-
- ;// armVCM4P2_FillVLDBuffer ( Sign not used as storeLevel is preprocessed)
-
-
-
- ;// To Reflect Run Length
-
- ADD Count,Count,storeRun
-
-
-
-storeLevelLast
-
- LDRB zigzag,[pZigzagTable,Count]
- CMP Last,#1
- ADD Count,Count,#1
- STRH storeLevel,[pDst,zigzag]
-
- BNE end
-
- B ExitOk
-
-end
-
- CMP Count,#64 ;//Run the Loop untill Count reaches 64
-
- BLT getVLCbits
-
-
-ExitOk
- ;// Exit When VLC Decoding is done Successfully
-
- ;// Loading ppBitStream and pBitOffset from stack
-
- CMP Last,#1
- M_LDR ppBitStream,pppBitStream
- M_LDR pBitOffset,ppOffset
-
- ;//Ending the macro
-
- M_BD_FINI ppBitStream,pBitOffset
-
- MOVEQ Return,#OMX_Sts_NoErr
- MOVNE Return,#OMX_Sts_Err
- M_LDR LR,pLinkRegister ;// Load the Link Register Back
- B exit2
-
-ExitError
- ;// Exit When an Error occurs
-
- M_LDR ppBitStream,pppBitStream
- M_LDR pBitOffset,ppOffset
- ;//Ending the macro
-
- M_BD_FINI ppBitStream,pBitOffset
- M_LDR LR,pLinkRegister
- MOV Return,#OMX_Sts_Err
-
-exit2
-
-
- M_END
- ENDIF
-
- END