Some special register which are preallocated at g0 and not
managed by our register allocator. So we need to ignore
them when process the register expieration. Otherwise,
it will trigger an assert latter.
Signed-off-by: Zhigang Gong <zhigang.gong@linux.intel.com>
Reviewed-by: Yang Rong <rong.r.yang@intel.com>
return false;
auto it = RA.find(reg);
GBE_ASSERT(it != RA.end());
-
+ // offset less than 32 means it is not managed by our reg allocator.
+ if (it->second < 32) {
+ this->expiringID++;
+ continue;
+ }
// Case 1 - it does not belong to a vector. Just remove it
if (vectorMap.contains(reg) == false) {
ctx.deallocate(it->second);