aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPierre-Eric Pelloux-Prayer <[email protected]>2019-11-04 15:04:20 +0100
committerPierre-Eric Pelloux-Prayer <[email protected]>2019-11-06 10:15:37 +0100
commit21be5c8edd3ad156f6cbfbceb96e7939716d9f2c (patch)
tree877e9e18059c65b3b07ac822083799abfd3f412f
parentfb07fd4e6cb9feb8c9a812dd5f859f165f213465 (diff)
radeonsi: fix shader disk cache key
Use unsigned values otherwise signed extension will produce a 64 bits value where the 32 left-most bits are 1. Fixes: 2afeed30101 ("radeonsi: tell the shader disk cache what IR is used")
-rw-r--r--src/gallium/drivers/radeonsi/si_pipe.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/gallium/drivers/radeonsi/si_pipe.c b/src/gallium/drivers/radeonsi/si_pipe.c
index 7b68afddcb2..1be3db4602b 100644
--- a/src/gallium/drivers/radeonsi/si_pipe.c
+++ b/src/gallium/drivers/radeonsi/si_pipe.c
@@ -904,8 +904,9 @@ static void si_disk_cache_create(struct si_screen *sscreen)
#define ALL_FLAGS (DBG(SI_SCHED) | DBG(GISEL))
uint64_t shader_debug_flags = sscreen->debug_flags & ALL_FLAGS;
/* Reserve left-most bit for tgsi/nir selector */
- assert(!(shader_debug_flags & (1 << 31)));
- shader_debug_flags |= ((sscreen->options.enable_nir & 0x1) << 31);
+ assert(!(shader_debug_flags & (1u << 31)));
+ shader_debug_flags |= (uint32_t)
+ ((sscreen->options.enable_nir & 0x1) << 31);
/* Add the high bits of 32-bit addresses, which affects
* how 32-bit addresses are expanded to 64 bits.