Add a minimalistic reload pass.

The reload pass inserts spill and fill instructions as needed so
instructions that operate on registers will never see a value with stack
affinity.

This is a very basic implementation, and we can't write good test cases
until we have a spilling pass.
This commit is contained in:
Jakob Stoklund Olesen
2017-05-24 09:28:15 -07:00
parent dcdfa59aec
commit 0d227fd230
5 changed files with 306 additions and 1 deletions

View File

@@ -12,6 +12,7 @@ mod affinity;
mod context;
mod diversion;
mod pressure;
mod reload;
mod solver;
pub use self::allocatable_set::AllocatableSet;