|
@@ -267,7 +267,7 @@ interface
|
|
|
type
|
|
|
{ optimizer }
|
|
|
toptimizerswitch = (cs_opt_none,
|
|
|
- cs_opt_level1,cs_opt_level2,cs_opt_level3,
|
|
|
+ cs_opt_level1,cs_opt_level2,cs_opt_level3,cs_opt_level4,
|
|
|
cs_opt_regvar,cs_opt_uncertain,cs_opt_size,cs_opt_stackframe,
|
|
|
cs_opt_peephole,cs_opt_asmcse,cs_opt_loopunroll,cs_opt_tailrecursion,cs_opt_nodecse,
|
|
|
cs_opt_nodedfa,cs_opt_loopstrength,cs_opt_scheduler,cs_opt_autoinline,cs_useebp,cs_userbp,
|
|
@@ -313,7 +313,7 @@ interface
|
|
|
|
|
|
const
|
|
|
OptimizerSwitchStr : array[toptimizerswitch] of string[17] = ('',
|
|
|
- 'LEVEL1','LEVEL2','LEVEL3',
|
|
|
+ 'LEVEL1','LEVEL2','LEVEL3','LEVEL4',
|
|
|
'REGVAR','UNCERTAIN','SIZE','STACKFRAME',
|
|
|
'PEEPHOLE','ASMCSE','LOOPUNROLL','TAILREC','CSE',
|
|
|
'DFA','STRENGTH','SCHEDULE','AUTOINLINE','USEEBP','USERBP',
|
|
@@ -345,7 +345,7 @@ interface
|
|
|
genericlevel1optimizerswitches = [cs_opt_level1,cs_opt_peephole];
|
|
|
genericlevel2optimizerswitches = [cs_opt_level2,cs_opt_remove_emtpy_proc];
|
|
|
genericlevel3optimizerswitches = [cs_opt_level3,cs_opt_constant_propagate,cs_opt_nodedfa];
|
|
|
- genericlevel4optimizerswitches = [cs_opt_reorder_fields,cs_opt_dead_values,cs_opt_fastmath];
|
|
|
+ genericlevel4optimizerswitches = [cs_opt_level4,cs_opt_reorder_fields,cs_opt_dead_values,cs_opt_fastmath];
|
|
|
|
|
|
{ whole program optimizations whose information generation requires
|
|
|
information from all loaded units
|