GBE: Optimize scratch memory usage using register interval
authorRuiling Song <ruiling.song@intel.com>
Fri, 28 Feb 2014 02:16:45 +0000 (10:16 +0800)
committerZhigang Gong <zhigang.gong@intel.com>
Fri, 28 Feb 2014 05:44:04 +0000 (13:44 +0800)
commit3a7bfa1300913115879c3ca6486fc5df3d1a3a20
treeaec993baaadaff651ae2473f8fa07d26b9540d41
parent6aff966a826314b74157b8b43882bae65732a3c9
GBE: Optimize scratch memory usage using register interval

As scratch memory is a limited resource in HW. And different
register have the opptunity to share same scratch memory. So
I introduce an allocator for scratch memory management.

v2:
In order to reuse the registerFilePartitioner, I rename it as
SimpleAllocator, and derive ScratchAllocator & RegisterAllocator
from it.

v3:
fix a typo, scratch size is 12KB.

Signed-off-by: Ruiling Song <ruiling.song@intel.com>
Reviewed-by: Zhigang Gong <zhigang.gong@linux.intel.com>
backend/src/backend/context.cpp
backend/src/backend/context.hpp
backend/src/backend/gen_reg_allocation.cpp