interaction between instruction scheduling and register assignment has
to be considered. The goal of register assignment is to determine the
physical registers which are used to store the values of the variables
in the program to be optimized. Integer linear programming allows to
integrate instruction scheduling and register assignment in a
homogeneous problem description. The modelling of register assignment
on basic block level as an integer programming problem will be presented
in this talk.
Since the potential parallelism inside basic blocks is restricted, it is
desirable to extend the scope of the optimizations to include multiple
basic blocks. Several basic blocks can be combined to superblocks which
are used as the starting point for ILP generation. The superblock
construction and the required extensions of the register assignment
algorithm will also be addressed in the talk.