1 /* 2 * (c) Copyright 2007-2008 ARM Limited. All Rights Reserved. 3 * 4 */ 5 6 .eabi_attribute 24, 1 7 .eabi_attribute 25, 1 8 9 .arm 10 .fpu neon 11 .section .rodata 12 .align 4 13 14 15 .global armVCM4P10_QPDivTable 16 .global armVCM4P10_VMatrixQPModTable 17 .global armVCM4P10_PosToVCol4x4 18 .global armVCM4P10_PosToVCol2x2 19 .global armVCM4P10_VMatrix 20 .global armVCM4P10_QPModuloTable 21 .global armVCM4P10_VMatrixU16 22 23 armVCM4P10_PosToVCol4x4: 24 .byte 0, 2, 0, 2 25 .byte 2, 1, 2, 1 26 .byte 0, 2, 0, 2 27 .byte 2, 1, 2, 1 28 29 armVCM4P10_PosToVCol2x2: 30 .byte 0, 2 31 .byte 2, 1 32 33 armVCM4P10_VMatrix: 34 .byte 10, 16, 13 35 .byte 11, 18, 14 36 .byte 13, 20, 16 37 .byte 14, 23, 18 38 .byte 16, 25, 20 39 .byte 18, 29, 23 40 41 ;//------------------------------------------------------- 42 ;// This table evaluates the expression [(INT)(QP/6)], 43 ;// for values of QP from 0 to 51 (inclusive). 44 ;//------------------------------------------------------- 45 46 armVCM4P10_QPDivTable: 47 .byte 0, 0, 0, 0, 0, 0 48 .byte 1, 1, 1, 1, 1, 1 49 .byte 2, 2, 2, 2, 2, 2 50 .byte 3, 3, 3, 3, 3, 3 51 .byte 4, 4, 4, 4, 4, 4 52 .byte 5, 5, 5, 5, 5, 5 53 .byte 6, 6, 6, 6, 6, 6 54 .byte 7, 7, 7, 7, 7, 7 55 .byte 8, 8, 8, 8, 8, 8 56 57 ;//---------------------------------------------------- 58 ;// This table contains armVCM4P10_VMatrix[QP%6][0] entires, 59 ;// for values of QP from 0 to 51 (inclusive). 60 ;//---------------------------------------------------- 61 62 armVCM4P10_VMatrixQPModTable: 63 .byte 10, 11, 13, 14, 16, 18 64 .byte 10, 11, 13, 14, 16, 18 65 .byte 10, 11, 13, 14, 16, 18 66 .byte 10, 11, 13, 14, 16, 18 67 .byte 10, 11, 13, 14, 16, 18 68 .byte 10, 11, 13, 14, 16, 18 69 .byte 10, 11, 13, 14, 16, 18 70 .byte 10, 11, 13, 14, 16, 18 71 .byte 10, 11, 13, 14, 16, 18 72 73 ;//------------------------------------------------------- 74 ;// This table evaluates the modulus expression [QP%6]*6, 75 ;// for values of QP from 0 to 51 (inclusive). 76 ;//------------------------------------------------------- 77 78 armVCM4P10_QPModuloTable: 79 .byte 0, 6, 12, 18, 24, 30 80 .byte 0, 6, 12, 18, 24, 30 81 .byte 0, 6, 12, 18, 24, 30 82 .byte 0, 6, 12, 18, 24, 30 83 .byte 0, 6, 12, 18, 24, 30 84 .byte 0, 6, 12, 18, 24, 30 85 .byte 0, 6, 12, 18, 24, 30 86 .byte 0, 6, 12, 18, 24, 30 87 .byte 0, 6, 12, 18, 24, 30 88 89 ;//------------------------------------------------------- 90 ;// This table contains the invidual byte values stored as 91 ;// halfwords. This avoids unpacking inside the function 92 ;//------------------------------------------------------- 93 94 armVCM4P10_VMatrixU16: 95 .hword 10, 16, 13 96 .hword 11, 18, 14 97 .hword 13, 20, 16 98 .hword 14, 23, 18 99 .hword 16, 25, 20 100 .hword 18, 29, 23 101 102 .end 103 104