| 462 | } |
| 463 | #endif |
| 464 | void WelsInitEncodingFuncs (SWelsFuncPtrList* pFuncList, uint32_t uiCpuFlag) { |
| 465 | pFuncList->pfCopy8x8Aligned = WelsCopy8x8_c; |
| 466 | pFuncList->pfCopy16x16Aligned = |
| 467 | pFuncList->pfCopy16x16NotAligned = WelsCopy16x16_c; |
| 468 | pFuncList->pfCopy16x8NotAligned = WelsCopy16x8_c; |
| 469 | pFuncList->pfCopy8x16Aligned = WelsCopy8x16_c; |
| 470 | pFuncList->pfCopy4x4 = WelsCopy4x4_c; |
| 471 | pFuncList->pfCopy8x4 = WelsCopy8x4_c; |
| 472 | pFuncList->pfCopy4x8 = WelsCopy4x8_c; |
| 473 | pFuncList->pfQuantizationHadamard2x2 = WelsHadamardQuant2x2_c; |
| 474 | pFuncList->pfQuantizationHadamard2x2Skip = WelsHadamardQuant2x2Skip_c; |
| 475 | pFuncList->pfTransformHadamard4x4Dc = WelsHadamardT4Dc_c; |
| 476 | |
| 477 | pFuncList->pfDctT4 = WelsDctT4_c; |
| 478 | pFuncList->pfDctFourT4 = WelsDctFourT4_c; |
| 479 | |
| 480 | pFuncList->pfScan4x4 = WelsScan4x4DcAc_c; |
| 481 | pFuncList->pfScan4x4Ac = WelsScan4x4Ac_c; |
| 482 | pFuncList->pfCalculateSingleCtr4x4 = WelsCalculateSingleCtr4x4_c; |
| 483 | |
| 484 | pFuncList->pfGetNoneZeroCount = WelsGetNoneZeroCount_c; |
| 485 | |
| 486 | pFuncList->pfQuantization4x4 = WelsQuant4x4_c; |
| 487 | pFuncList->pfQuantizationDc4x4 = WelsQuant4x4Dc_c; |
| 488 | pFuncList->pfQuantizationFour4x4 = WelsQuantFour4x4_c; |
| 489 | pFuncList->pfQuantizationFour4x4Max = WelsQuantFour4x4Max_c; |
| 490 | |
| 491 | #if defined(X86_ASM) |
| 492 | if (uiCpuFlag & WELS_CPU_MMXEXT) { |
| 493 | |
| 494 | pFuncList->pfQuantizationHadamard2x2 = WelsHadamardQuant2x2_mmx; |
| 495 | pFuncList->pfQuantizationHadamard2x2Skip = WelsHadamardQuant2x2Skip_mmx; |
| 496 | |
| 497 | pFuncList->pfDctT4 = WelsDctT4_mmx; |
| 498 | |
| 499 | pFuncList->pfCopy8x8Aligned = WelsCopy8x8_mmx; |
| 500 | pFuncList->pfCopy8x16Aligned = WelsCopy8x16_mmx; |
| 501 | } |
| 502 | if (uiCpuFlag & WELS_CPU_SSE2) { |
| 503 | pFuncList->pfGetNoneZeroCount = WelsGetNoneZeroCount_sse2; |
| 504 | pFuncList->pfTransformHadamard4x4Dc = WelsHadamardT4Dc_sse2; |
| 505 | |
| 506 | pFuncList->pfQuantization4x4 = WelsQuant4x4_sse2; |
| 507 | pFuncList->pfQuantizationDc4x4 = WelsQuant4x4Dc_sse2; |
| 508 | pFuncList->pfQuantizationFour4x4 = WelsQuantFour4x4_sse2; |
| 509 | pFuncList->pfQuantizationFour4x4Max = WelsQuantFour4x4Max_sse2; |
| 510 | |
| 511 | pFuncList->pfCopy16x16Aligned = WelsCopy16x16_sse2; |
| 512 | pFuncList->pfCopy16x16NotAligned = WelsCopy16x16NotAligned_sse2; |
| 513 | pFuncList->pfCopy16x8NotAligned = WelsCopy16x8NotAligned_sse2; |
| 514 | |
| 515 | pFuncList->pfScan4x4 = WelsScan4x4DcAc_sse2; |
| 516 | pFuncList->pfScan4x4Ac = WelsScan4x4Ac_sse2; |
| 517 | pFuncList->pfCalculateSingleCtr4x4 = WelsCalculateSingleCtr4x4_sse2; |
| 518 | |
| 519 | pFuncList->pfDctT4 = WelsDctT4_sse2; |
| 520 | pFuncList->pfDctFourT4 = WelsDctFourT4_sse2; |
| 521 | } |
no outgoing calls
no test coverage detected