mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-19 09:18:10 +02:00
"The implementation is based on what LLVM AMD target expect. The compiler provided an id link to argument desc and format used. The runtime need to store them to be able to parse the buffer filled by the device during the kernel execution, ie, an id value to find the format and followed by the arguments values" v2: airlied Split out the core code to a separate patch, add support for the different global buffer formats, and move the LLVM specific code as much as possible to the backend. v3: handle strings differences better llvm backend stores strings to the printf buffer nir backend stores them to a sideband storage in NIR and stores an index in the buffer. v4: move specifier parsing to util code. v5: rename buffer fmt + make printf code work v6: handle args/specifier number mismatch support v7: move to single string + struct v8: use "%s" to print strings to avoid bad specifier, fix str calcs. v9: move to the same global buffer format as llvm, just strings are different now. This requires changes to nir lowering. buffer format: [0] contains offset into buffer at start contains 8 [1] contains length of buffer v10: printf const clean, add warning, endian assert, print %% at end, fix specifiers to vector v11: minor cleanups, make sure the format string never contains an n. v12: validate format string Reviewed-by: Francisco Jerez <currojerez@riseup.net> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8254> |
||
|---|---|---|
| .. | ||
| amd | ||
| android_stub | ||
| broadcom | ||
| compiler | ||
| drm-shim | ||
| egl | ||
| etnaviv | ||
| freedreno | ||
| gallium | ||
| gbm | ||
| getopt | ||
| glx | ||
| gtest | ||
| hgl | ||
| imgui | ||
| intel | ||
| loader | ||
| mapi | ||
| mesa | ||
| microsoft | ||
| panfrost | ||
| util | ||
| virtio | ||
| vulkan | ||
| meson.build | ||
| SConscript | ||