nvk: Fix pre-Volta GPUs
!27205 (merged) broke everything before Volta because it screwed up the shader heap for GPUs where it's contiguous with a base address. This MR fixes it by further reworking things to handle the relative offsets in nvk_shader.c where they're easier to deal with.