Register Allocation Via Coloring