Fix bugs on Register Mapping
Reuse IN set to simplify RegMap generation

Original CodeGenerator::PopulateRegMap() reconstructed the register
table. This is unnecessary since at this stage, liveness analysis is
already done. This is fixed by reusing IN set information to write
CodeGenerator::PopulateRegMap().

Signed-off-by: Hongjiu Zhang <zhanghj@umich.edu>
Fix bugs on graph coloring
Fix multiple virtual method definition

Virtual const methods was not overloaded. Const keywords are added back
to fix this problem.

Signed-off-by: Hongjiu Zhang <zhanghj@umich.edu>
Fix bugs on graph coloring
Adjust working environment

Now test.sh can report successful build, and make can automatically
disable PaX protection for dcc.

Signed-off-by: Hongjiu Zhang <zhanghj@umich.edu>
Code refactory

Signed-off-by: Hongjiu Zhang <zhanghj@umich.edu>
Fix a stupid error about local variable copy

Signed-off-by: Hongjiu Zhang <zhanghj@umich.edu>
Fix a bug that orphan nodes are not allocated

Orphan nodes were not included in the interference graph. While
register allocation is based on interference graph search, all orphan
nodes were left. This is fixed by adding orphan nodes back into graph.

Signed-off-by: Hongjiu Zhang <zhanghj@umich.edu>
Add reference to GEN sets.

Signed-off-by: Hongjiu Zhang <zhanghj@umich.edu>
Fix a stupid error about local variable copy

Signed-off-by: Hongjiu Zhang <zhanghj@umich.edu>
Fix bugs on LCall and ACall