diff --git a/amd/comgr/src/comgr-hotswap-elf.cpp b/amd/comgr/src/comgr-hotswap-elf.cpp index 29552e6dd86ea..29a475ea59c34 100644 --- a/amd/comgr/src/comgr-hotswap-elf.cpp +++ b/amd/comgr/src/comgr-hotswap-elf.cpp @@ -29,6 +29,17 @@ using Phdr = ELF::Elf64_Phdr; using ELFT = ElfView::ELFT; using ELFFileT = ElfView::ELFFileT; +// This file depends on the COMPUTE_PGM_RSRC1_GRANULATED_* field layout below. +// Assert it so the dependency is caught at compile time if it ever shifts. +static_assert( + amdhsa::COMPUTE_PGM_RSRC1_GRANULATED_WORKITEM_VGPR_COUNT_SHIFT == 0 && + amdhsa::COMPUTE_PGM_RSRC1_GRANULATED_WORKITEM_VGPR_COUNT_WIDTH == 6, + "GRANULATED_WORKITEM_VGPR_COUNT layout changed unexpectedly."); +static_assert( + amdhsa::COMPUTE_PGM_RSRC1_GRANULATED_WAVEFRONT_SGPR_COUNT_SHIFT == 6 && + amdhsa::COMPUTE_PGM_RSRC1_GRANULATED_WAVEFRONT_SGPR_COUNT_WIDTH == 4, + "GRANULATED_WAVEFRONT_SGPR_COUNT layout changed unexpectedly."); + // -- applyByteReplace --------------------------------------------------------- bool applyByteReplace(const RewriteRule &Rule, uint64_t InstOffset,