047f87bb4f8657081a58c0d80ceb875077f21ec3
SWDEV-80874 - Fixed ORCA RT HSA printf buffer indexing issues The format of the buffer is: printf_id, <arg1>, <arg2>, ... The RT did not advance index for printf_id field, so for example for a format string "%d" we have been printing printf_id instead of actual argument for every other string. The other issue is that outputDbgBuffer is adjusting its last argument (idx) by the number of consumed DWORD values, but PrintfDbgHSA::output() is also ajusting dbgBufferPtr, so we had adjustment done twice, printing only half of the actual data and then printing zeroes from the buffer. The resolution for both is to always pass 1 as index to outputDbgBuffer(). 1 because 0 is printf_id. Testing: smoke, precheckin, conformance printf with HSAIL forced, custom tests Reviewed by Brian Sumner and German Andreev Affected files ... ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuprintf.cpp#40 edit
Description
No description provided
Languages
C++
67.5%
C
20.6%
Python
6.6%
CMake
3.4%
Shell
0.6%
Other
1.1%