Ray Quinney & Nebeker
Compiler sub expression directed acyclic graph (DAG) remat for register pressure
The present disclosure relates to devices and methods for transforming program source code using a rematerialization operation. The devices and methods may identify at least one hot spot with high register pressure in a program source code for an application and identify a plurality of live variables within the at least one hot spot. The devices and methods may group the plurality of live variables by a basic block that has contained a define or single use of the plurality of live variables. The devices and methods may build a directed acyclic graph (DAG) for each basic block that has a grouped plurality of live variables. The devices and methods may save the DAG as a candidate instruction to move in the program source code and may generate transformed program source code for the application by moving the candidate instruction.
MICROSOFT TECHNOLOGY LICENSING, LLC
G G G G
G06F G06F G06F G06F
inventional inventional additional inventional
Michael Alan David McCarthy Xiang
Dougherty Peixotto Li