mesa/src/broadcom
Daivik Bhatia a8c7a25fb1 broadcom/compiler: Add explicit NOP instruction at page boundaries
The QPU prefetches the next instruction during shader execution.
If the shader assembly size perfectly aligns with a page boundary,
the prefetching mechanism reads past the compiled boundary,
leading to an MMU error.

This commit insert an explicit NOP instruction at the end of the shader
and increases the qpu_inst_count by one when the instruction count
exactly hits a page boundary. This ensures we don't fall off the end
of the last executable instruction page and into invalid memory.

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40983>
2026-05-06 09:21:28 +00:00
..
ci ci: Delete references to various broken traces. 2026-04-22 17:39:31 +00:00
cle broadcom/cle: parse once the XML spec 2026-04-06 09:17:15 +00:00
clif broadcom: use Mesa logging functions 2026-04-06 07:40:55 +00:00
common broadcom: remove unused Android log utils 2026-05-01 20:23:23 +00:00
compiler broadcom/compiler: Add explicit NOP instruction at page boundaries 2026-05-06 09:21:28 +00:00
drm-shim broadcom: use Mesa logging functions 2026-04-06 07:40:55 +00:00
ds mesa: replace most occurrences of getenv() with os_get_option() 2025-11-06 04:36:13 +00:00
perfcntrs broadcom: use Mesa logging functions 2026-04-06 07:40:55 +00:00
qpu broadcom/qpu: add V3D 7.1 disasm tests 2026-05-06 07:33:42 +00:00
simulator broadcom: use Mesa logging functions 2026-04-06 07:40:55 +00:00
vulkan v3dv: Emulate multi-queue support via vk_queue for Android 2026-05-05 07:03:08 +00:00
.editorconfig
meson.build broadcom: Add perfetto data source 2024-12-13 12:29:11 +00:00