This is better but there are still environment variables that affect compilation. For instance, the INTEL_SCALAR_VS/TCS/TES/GS environment variables.
On Sun, Jul 22, 2018 at 9:28 PM Jordan Justen <jordan.l.jus...@intel.com> wrote: > Since various options within INTEL_DEBUG could impact code generation, > we need to set the disk cache driver_flags parameter based on the > INTEL_DEBUG flags in use. > > An example that will affect the program generated by i965 is the > INTEL_DEBUG=nocompact option. > > The DEBUG_DISK_CACHE_MASK value is added to mask the settings of > INTEL_DEBUG that can affect program generation. > > v2: > * Use driver_flags (Tim) > * Also update Anvil (Jason) > > Signed-off-by: Jordan Justen <jordan.l.jus...@intel.com> > Reviewed-by: Lionel Landwerlin <lionel.g.landwer...@intel.com> (v1) > --- > src/intel/common/gen_debug.h | 5 +++++ > src/intel/vulkan/anv_device.c | 3 ++- > src/mesa/drivers/dri/i965/brw_disk_cache.c | 3 ++- > 3 files changed, 9 insertions(+), 2 deletions(-) > > diff --git a/src/intel/common/gen_debug.h b/src/intel/common/gen_debug.h > index f6c44eeb912..aa9f3cf80d7 100644 > --- a/src/intel/common/gen_debug.h > +++ b/src/intel/common/gen_debug.h > @@ -84,6 +84,11 @@ extern uint64_t INTEL_DEBUG; > #define DEBUG_COLOR (1ull << 40) > #define DEBUG_REEMIT (1ull << 41) > > +/* These flags may affect program generation */ > +#define DEBUG_DISK_CACHE_MASK \ > + (DEBUG_SHADER_TIME | DEBUG_NO16 | DEBUG_NO_DUAL_OBJECT_GS | DEBUG_NO8 > | \ > + DEBUG_SPILL_FS | DEBUG_SPILL_VEC4 | DEBUG_NO_COMPACTION | DEBUG_DO32) > + > #ifdef HAVE_ANDROID_PLATFORM > #define LOG_TAG "INTEL-MESA" > #if ANDROID_API_LEVEL >= 26 > diff --git a/src/intel/vulkan/anv_device.c b/src/intel/vulkan/anv_device.c > index 247ba641336..97a71563b8a 100644 > --- a/src/intel/vulkan/anv_device.c > +++ b/src/intel/vulkan/anv_device.c > @@ -286,7 +286,8 @@ anv_physical_device_init_disk_cache(struct > anv_physical_device *device) > char timestamp[41]; > _mesa_sha1_format(timestamp, device->driver_build_sha1); > > - device->disk_cache = disk_cache_create(renderer, timestamp, 0); > + const uint64_t driver_flags = INTEL_DEBUG & DEBUG_DISK_CACHE_MASK; > + device->disk_cache = disk_cache_create(renderer, timestamp, > driver_flags); > #else > device->disk_cache = NULL; > #endif > diff --git a/src/mesa/drivers/dri/i965/brw_disk_cache.c > b/src/mesa/drivers/dri/i965/brw_disk_cache.c > index a678c355b9d..8f1b064fd61 100644 > --- a/src/mesa/drivers/dri/i965/brw_disk_cache.c > +++ b/src/mesa/drivers/dri/i965/brw_disk_cache.c > @@ -393,6 +393,7 @@ brw_disk_cache_init(struct intel_screen *screen) > char timestamp[41]; > _mesa_sha1_format(timestamp, id_sha1); > > - screen->disk_cache = disk_cache_create(renderer, timestamp, 0); > + const uint64_t driver_flags = INTEL_DEBUG & DEBUG_DISK_CACHE_MASK; > + screen->disk_cache = disk_cache_create(renderer, timestamp, > driver_flags); > #endif > } > -- > 2.18.0 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/mesa-dev >
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev