mirror of
https://gitlab.com/camelot/kickc.git
synced 2024-12-26 18:29:54 +00:00
Merged master into branch.
Rolled back main mem only coalesce.
This commit is contained in:
parent
153ab54f10
commit
ccf880e617
@ -96,9 +96,6 @@ public class KickC implements Callable<Integer> {
|
|||||||
@CommandLine.Option(names = {"-Ocoalesce"}, description = "Optimization Option. Enables zero-page coalesce pass which limits zero-page usage significantly, but takes a lot of compile time.")
|
@CommandLine.Option(names = {"-Ocoalesce"}, description = "Optimization Option. Enables zero-page coalesce pass which limits zero-page usage significantly, but takes a lot of compile time.")
|
||||||
private boolean optimizeZeroPageCoalesce = false;
|
private boolean optimizeZeroPageCoalesce = false;
|
||||||
|
|
||||||
@CommandLine.Option(names = {"-Ofastcoalesce"}, description = "Optimization Option. Enables zero-page only coalesce, which reduces compile time significantly, but with less coalesce optimimzation.")
|
|
||||||
private boolean optimizeFastCoalesce = false;
|
|
||||||
|
|
||||||
@CommandLine.Option(names = {"-Onocoalesce"}, description = "Optimization Option. Disables coalesce completely, which reduces compile time significantly.")
|
@CommandLine.Option(names = {"-Onocoalesce"}, description = "Optimization Option. Disables coalesce completely, which reduces compile time significantly.")
|
||||||
private boolean optimizeNoCoalesce = false;
|
private boolean optimizeNoCoalesce = false;
|
||||||
|
|
||||||
|
@ -156,7 +156,8 @@ public abstract class Pass4MemoryCoalesce extends Pass2Base {
|
|||||||
// Check the both registers are in memory
|
// Check the both registers are in memory
|
||||||
if(!register1.isMem() || !register2.isMem())
|
if(!register1.isMem() || !register2.isMem())
|
||||||
return false;
|
return false;
|
||||||
if(register1.getType() == Registers.RegisterType.MAIN_MEM)
|
// Check the both registers have the same type
|
||||||
|
if(!register1.getType().equals(register2.getType()))
|
||||||
return false;
|
return false;
|
||||||
// Check the both registers have the same size
|
// Check the both registers have the same size
|
||||||
if(register1.getBytes() != register2.getBytes())
|
if(register1.getBytes() != register2.getBytes())
|
||||||
|
Loading…
Reference in New Issue
Block a user