Sounds great. Reviewed-by: Jose Fonseca <jfons...@vmware.com>
BTW, it's not really difficult to do gather with unsigned offsets: add 0x80000000 to the base, subtract 0x8000000 to the offsets, and use the signed gather. If the cost of doing so is significant, we could do this just for large textures, by adding a bit per texture to the shader key. Jose ________________________________ From: srol...@vmware.com <srol...@vmware.com> Sent: Thursday, October 10, 2019 19:18 To: Jose Fonseca <jfons...@vmware.com>; mesa-dev@lists.freedesktop.org <mesa-dev@lists.freedesktop.org> Cc: Roland Scheidegger <srol...@vmware.com> Subject: [PATCH] llvmpipe: increase max texture size to 2GB From: Roland Scheidegger <srol...@vmware.com> The 1GB limit was arbitrary, increase this to 2GB (which is the max possible without code changes). --- src/gallium/drivers/llvmpipe/lp_limits.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/llvmpipe/lp_limits.h b/src/gallium/drivers/llvmpipe/lp_limits.h index c2808162c78..569179ecdf4 100644 --- a/src/gallium/drivers/llvmpipe/lp_limits.h +++ b/src/gallium/drivers/llvmpipe/lp_limits.h @@ -43,7 +43,11 @@ /** * Max texture sizes */ -#define LP_MAX_TEXTURE_SIZE (1 * 1024 * 1024 * 1024ULL) /* 1GB for now */ +/** + * 2GB is the actual max currently (we always use 32bit offsets, and both + * llvm GEP as well as avx2 gather use signed offsets). + */ +#define LP_MAX_TEXTURE_SIZE (2 * 1024 * 1024 * 1024ULL) #define LP_MAX_TEXTURE_2D_LEVELS 14 /* 8K x 8K for now */ #define LP_MAX_TEXTURE_3D_LEVELS 12 /* 2K x 2K x 2K for now */ #define LP_MAX_TEXTURE_CUBE_LEVELS 14 /* 8K x 8K for now */ -- 2.17.1
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev