On Thu, Feb 21, 2019 at 11:09 AM Marek Olšák <[email protected]> wrote: > > On Thu, Feb 21, 2019, 12:08 AM Ilia Mirkin <[email protected]> wrote: >> >> I don't think that's right... this is used in e.g. >> >> case TGSI_OPCODE_RESQ: >> if (tgsi_is_bindless_image_file(fullinst->Src[0].Register.File)) >> info->uses_bindless_images = true; >> break; >> >> And if you call RESQ with a src0 that is not IMAGE or BUFFER, then >> that's a bindless reference. > > > No it's not. TEMP, CONST, IN, and OUT are bindless references. CONSTBUF isn't.
Indeed you're quite right. Looks like the collective "we" thought of this problem ahead of time. Excellent. (Now that you mention it, I feel like I might have even been involved in that... how time flies.) Reviewed-by: Ilia Mirkin <[email protected]> > > Marek > >> >> I think the problem is that this is interacting poorly with the load >> constbuf stuff -- probably needs a bit of subtlety there. >> >> -ilia >> >> On Thu, Feb 21, 2019 at 12:03 AM Marek Olšák <[email protected]> wrote: >> > >> > From: Marek Olšák <[email protected]> >> > >> > This might have decreased performance for radeonsi/tgsi, because most >> > most shaders claimed they used bindless. >> > >> > Cc: 18.3 19.0 <[email protected]> >> > --- >> > src/gallium/auxiliary/tgsi/tgsi_scan.h | 4 +++- >> > 1 file changed, 3 insertions(+), 1 deletion(-) >> > >> > diff --git a/src/gallium/auxiliary/tgsi/tgsi_scan.h >> > b/src/gallium/auxiliary/tgsi/tgsi_scan.h >> > index 580c73a2814..51d85af4fcb 100644 >> > --- a/src/gallium/auxiliary/tgsi/tgsi_scan.h >> > +++ b/src/gallium/auxiliary/tgsi/tgsi_scan.h >> > @@ -214,18 +214,20 @@ tgsi_scan_arrays(const struct tgsi_token *tokens, >> > void >> > tgsi_scan_tess_ctrl(const struct tgsi_token *tokens, >> > const struct tgsi_shader_info *info, >> > struct tgsi_tessctrl_info *out); >> > >> > static inline bool >> > tgsi_is_bindless_image_file(unsigned file) >> > { >> > return file != TGSI_FILE_IMAGE && >> > file != TGSI_FILE_MEMORY && >> > - file != TGSI_FILE_BUFFER; >> > + file != TGSI_FILE_BUFFER && >> > + file != TGSI_FILE_CONSTBUF && >> > + file != TGSI_FILE_HW_ATOMIC; >> > } >> > >> > #ifdef __cplusplus >> > } // extern "C" >> > #endif >> > >> > #endif /* TGSI_SCAN_H */ >> > -- >> > 2.17.1 >> > >> > _______________________________________________ >> > mesa-dev mailing list >> > [email protected] >> > https://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
