vulkan-cts: upgrade 1.4.4.0 -> 1.4.4.2

Upgrade Vulkan CTS to the point release, fixing several tests. While we
are at it, refresh Vulkan-Video-Samples patches.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
Dmitry Baryshkov 2025-12-11 07:49:10 +02:00 committed by Khem Raj
parent c13be1b757
commit 374949c531
No known key found for this signature in database
GPG Key ID: BB053355919D3314
4 changed files with 46 additions and 37 deletions

View File

@ -9,8 +9,10 @@ Building NEON code on ARMv7 fails with the following error:
Add missing vreinterpret call in order to fix that error.
Fixes KhronosGroup/VK-GL-CTS#547
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Upstream-Status: Submitted [https://github.com/KhronosGroup/Vulkan-Video-Samples/pull/109]
Upstream-Status: Backport [https://github.com/KhronosGroup/Vulkan-Video-Samples/commit/1e665d0f5139114203e04a1398de8c94ef031fd7]
---
vk_video_decoder/libs/NvVideoParser/src/NextStartCodeNEON.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

View File

@ -17,73 +17,80 @@ note: called from here
| ~~~~~~~~^~~~~~~~~
Reported-by: Ryan Eatmon <reatmon@ti.com>
Co-developed-by: Stéphane Cerveau <scerveau@igalia.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Upstream-Status: Submitted [https://github.com/KhronosGroup/Vulkan-Video-Samples/pull/112]
Upstream-Status: Backport [https://github.com/KhronosGroup/Vulkan-Video-Samples/commit/8aabc529c7a981f2738acab1527745989ae91f26]
---
.../libs/NvVideoParser/CMakeLists.txt | 18 +++++++++++++++++-
.../NvVideoParser/src/VulkanVideoDecoder.cpp | 2 ++
2 files changed, 19 insertions(+), 1 deletion(-)
.../libs/NvVideoParser/CMakeLists.txt | 27 ++++++++++++++-----
.../NvVideoParser/src/VulkanVideoDecoder.cpp | 2 ++
2 files changed, 22 insertions(+), 7 deletions(-)
diff --git a/vk_video_decoder/libs/NvVideoParser/CMakeLists.txt b/vk_video_decoder/libs/NvVideoParser/CMakeLists.txt
index 84251ed60ab9..65da635e2929 100644
index 84251ed6..8c324408 100644
--- a/vk_video_decoder/libs/NvVideoParser/CMakeLists.txt
+++ b/vk_video_decoder/libs/NvVideoParser/CMakeLists.txt
@@ -65,6 +65,13 @@ check_cxx_source_compiles("
@@ -65,6 +65,14 @@ check_cxx_source_compiles("
#endif
" IS_ARM)
+check_cxx_source_compiles("
+ #include <arm_neon.h>
+ uint8_t *pin;
+ uint8x16_t vdata;
+ int main() { vdata = vld1q_u8(pin); return 0; }
+ #if defined(__ARM_NEON)
+ int main() { return 0; }
+ #else
+ #error Not ARM NEON
+ #endif
+ " HAS_ARM_NEON)
+
check_cxx_source_compiles("
#if defined(__x86_64__) || defined(_M_X64) || defined(__i386__) || defined(_M_IX86)
int main() { return 0; }
@@ -85,6 +99,7 @@ if (IS_AARCH64 OR (CMAKE_GENERATOR_PLATFORM MATCHES "^aarch64") OR (CMAKE_GENERA
@@ -84,7 +92,6 @@ if (IS_AARCH64 OR (CMAKE_GENERATOR_PLATFORM MATCHES "^aarch64") OR (CMAKE_GENERA
set(NEON_CPU_FEATURE "-march=armv8-a")
set(SVE_CPU_FEATURE "-march=armv8-a+sve")
endif()
MESSAGE(STATUS "Parser optimizations selected for generic ARM NEON")
+ add_compile_definitions(HAS_ARM_NEON=1)
- MESSAGE(STATUS "Parser optimizations selected for generic ARM NEON")
add_library(next_start_code_c OBJECT ${CMAKE_CURRENT_SOURCE_DIR}/src/NextStartCodeC.cpp include)
target_include_directories(next_start_code_c PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include)
add_library(next_start_code_neon OBJECT ${CMAKE_CURRENT_SOURCE_DIR}/src/NextStartCodeNEON.cpp include)
@@ -102,7 +117,7 @@ if (IS_AARCH64 OR (CMAKE_GENERATOR_PLATFORM MATCHES "^aarch64") OR (CMAKE_GENERA
target_link_libraries(${VULKAN_VIDEO_PARSER_LIB} next_start_code_c next_start_code_neon next_start_code_sve)
target_link_libraries(${VULKAN_VIDEO_PARSER_STATIC_LIB} next_start_code_c next_start_code_neon next_start_code_sve)
@@ -113,12 +120,18 @@ elseif (IS_ARM OR (CMAKE_GENERATOR_PLATFORM MATCHES "^arm") OR (CMAKE_GENERATOR_
endif()
-elseif (IS_ARM OR (CMAKE_GENERATOR_PLATFORM MATCHES "^arm") OR (CMAKE_GENERATOR_PLATFORM MATCHES "^ARM"))
+elseif ((IS_ARM OR (CMAKE_GENERATOR_PLATFORM MATCHES "^arm") OR (CMAKE_GENERATOR_PLATFORM MATCHES "^ARM")) AND HAS_ARM_NEON)
MESSAGE(STATUS "Parser optimization for ARM ${CMAKE_SYSTEM_PROCESSOR}")
add_library(next_start_code_c OBJECT ${CMAKE_CURRENT_SOURCE_DIR}/src/NextStartCodeC.cpp include)
target_include_directories(next_start_code_c PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include)
- add_library(next_start_code_neon OBJECT ${CMAKE_CURRENT_SOURCE_DIR}/src/NextStartCodeNEON.cpp include)
- set_target_properties(next_start_code_neon PROPERTIES COMPILE_FLAGS ${NEON_CPU_FEATURE} )
- target_include_directories(next_start_code_neon PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include)
- MESSAGE(STATUS "Parser optimizations linking ARM next_start_code_c next_start_code_neon")
- target_link_libraries(${VULKAN_VIDEO_PARSER_LIB} next_start_code_c next_start_code_neon)
- target_link_libraries(${VULKAN_VIDEO_PARSER_STATIC_LIB} next_start_code_c next_start_code_neon)
+ if (HAS_ARM_NEON)
+ add_library(next_start_code_neon OBJECT ${CMAKE_CURRENT_SOURCE_DIR}/src/NextStartCodeNEON.cpp include)
+ set_target_properties(next_start_code_neon PROPERTIES COMPILE_FLAGS ${NEON_CPU_FEATURE} )
+ target_include_directories(next_start_code_neon PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include)
+ MESSAGE(STATUS "Parser optimizations linking ARM next_start_code_c next_start_code_neon")
+ target_link_libraries(${VULKAN_VIDEO_PARSER_LIB} next_start_code_c next_start_code_neon)
+ target_link_libraries(${VULKAN_VIDEO_PARSER_STATIC_LIB} next_start_code_c next_start_code_neon)
+ else()
+ MESSAGE(STATUS "Parser optimizations linking ARM next_start_code_c")
+ target_link_libraries(${VULKAN_VIDEO_PARSER_LIB} next_start_code_c)
+ target_link_libraries(${VULKAN_VIDEO_PARSER_STATIC_LIB} next_start_code_c)
+ endif()
elseif (IS_X86)
MESSAGE(STATUS "Parser optimization for X86 ${CMAKE_SYSTEM_PROCESSOR}")
if(WIN32)
MESSAGE(STATUS "Parser optimizations selected for WIN32 VFPv4")
@@ -111,6 +126,7 @@ elseif (IS_ARM OR (CMAKE_GENERATOR_PLATFORM MATCHES "^arm") OR (CMAKE_GENERATOR_
MESSAGE(STATUS "Parser optimizations selected for UNIX armv7-a+simd")
set(NEON_CPU_FEATURE "-march=armv7-a+simd")
endif()
+ add_compile_definitions(HAS_ARM_NEON=1)
add_library(next_start_code_c OBJECT ${CMAKE_CURRENT_SOURCE_DIR}/src/NextStartCodeC.cpp include)
target_include_directories(next_start_code_c PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include)
add_library(next_start_code_neon OBJECT ${CMAKE_CURRENT_SOURCE_DIR}/src/NextStartCodeNEON.cpp include)
diff --git a/vk_video_decoder/libs/NvVideoParser/src/VulkanVideoDecoder.cpp b/vk_video_decoder/libs/NvVideoParser/src/VulkanVideoDecoder.cpp
index 83b968ef55df..eced7fcd7bba 100644
index 83b968ef..5f7ff53e 100644
--- a/vk_video_decoder/libs/NvVideoParser/src/VulkanVideoDecoder.cpp
+++ b/vk_video_decoder/libs/NvVideoParser/src/VulkanVideoDecoder.cpp
@@ -335,10 +335,12 @@ bool VulkanVideoDecoder::ParseByteStream(const VkParserBitstreamPacket* pck, siz
return ParseByteStreamSVE(pck, pParsedBytes);
} else
#endif //__aarch64__
+#if defined(HAS_ARM_NEON)
+#if defined(__ARM_NEON)
if (m_NextStartCode == SIMD_ISA::NEON)
{
return ParseByteStreamNEON(pck, pParsedBytes);
} else
+#endif // HAS_ARM_NEON
+#endif // __ARM_NEON
#endif
{
return ParseByteStreamC(pck, pParsedBytes);
--
2.51.0

View File

@ -6,7 +6,7 @@
RECIPE_UPGRADE_EXTRA_TASKS += "do_refresh_srcuri"
python __anonymous() {
if d.getVar("PV") != "1.4.4.0":
if d.getVar("PV") != "1.4.4.2":
bb.warn("-sources.inc out of date, run refresh_srcuri task")
}

View File

@ -2,7 +2,7 @@ DESCRIPTION = "Vulkan CTS"
require khronos-cts.inc
SRCREV_vk-gl-cts = "03c0746a55b78eab63c664a11948b52419e1f309"
SRCREV_vk-gl-cts = "aa481ab6eb66a1c74768fabec453ea6e60f0ee0e"
require vulkan-cts-sources.inc