From 5290f50e44b632c22800df15c691394e768796be Mon Sep 17 00:00:00 2001 From: Sebastian Neubauer Date: Tue, 20 Oct 2020 18:23:24 +0200 Subject: [PATCH] [AMDGPU] Fix off by one in assert D89217 did not subtract one when accessing SubRegFromChannelTable in one place. Differential Revision: https://reviews.llvm.org/D89804 --- llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp b/llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp index c7a0121b058b..6000c8a2a7fd 100644 --- a/llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp +++ b/llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp @@ -98,9 +98,10 @@ SIRegisterInfo::SIRegisterInfo(const GCNSubtarget &ST) Width = SubRegFromChannelTableWidthMap[Width]; if (Width == 0) continue; - assert((Width - 1) < SubRegFromChannelTable.size()); - assert(Offset < SubRegFromChannelTable[Width].size()); - SubRegFromChannelTable[Width - 1][Offset] = Idx; + unsigned TableIdx = Width - 1; + assert(TableIdx < SubRegFromChannelTable.size()); + assert(Offset < SubRegFromChannelTable[TableIdx].size()); + SubRegFromChannelTable[TableIdx][Offset] = Idx; } };