Build Method Improvement

1) BetterPGO
2) Apply PGO to all modules — will be enabled by default in official edition

About System Clock Tweak Experimental Feature

System Clock Rate ( abbreviated as SCR below ) Tweak
Provide some about:config options to modify SCR at startup
1) pcxfirefox.scr.enabled : The option control whether to modify SCR, whose default value is true ( Enabled SCR modifying at startup ).
2) pcxfirefox.scr.always : The option control whether to modify SCR if you use Battery Power, whose default value is false ( If you use Battery Power, set scr.always to false wont modify SCR, if you set it true, that will ignore Power type detect. )
pcxfirefox.scr.timer : The option provides Battery Power detecting period ( unit is second ), when reaching this time, detecing your Power Type again to do the behavior depending on pcxfirefox.scr.always

About SmatRAM Experimental Feature

Control your present RAM
Provide some about:config options related with SmartRAM at startup
1) pcxfirefox.memory.firefox.smart : The option controls whether to enable SmartRAM feature, whose default value is true ( Enabled SmartRAM at startup ).
2) pcxfirefox.memory.firefox.smart.dynamic : The option controls different memory trim methods, whose default value is true, when it is true, then pcxfirefox.memory.firefox.smart.dynamic.min and pcxfirefox.memory.firefox.smart.dynamic.ratio is valid.
pcxfirefox.memory.firefox.smart.dynamic.min : The option controls SmartRAM dynamic method’s minimized memory you want, whose default value is 128 MB.
pcxfirefox.memory.firefox.smart.dynamic.ratio : The option controls SmartRAM dynamic method’s the memory ratio you want, whose default value is 80, which means when hitting SmartRAM dynamic method event, the memory will be released to the 80% of the firefox.exe’s present memory.
3) pcxfirefox.memory.firefox.smart.keep : The option controls SmartRAM keep methos’s memory size, whose default value is 512 MB, when pcxfirefox.memory.firefox.smart.dynamic is false, the option is valid.
4) pcxfirefox.memory.firefox.smart.timer : The option provides SmartRAM event period ( unit is second ), whose default value is 3600 seconds.
CAUTION: dont’t set pcxfirefox.memory.firefox.smart.dynamic.ratio, pcxfirefox.memory.firefox.smart.keep, and pcxfirefox.memory.firefox.smart.timer to a very small value, if you really want a small value, please use them at your own risk ( which will greatly increased your OS’s I/O pressure )!

About tmemutil.dll

It is mine public fork from libportable, and I make it compatible with tete009’s tmemutil.dll
The setting file is also tmemutil.ini, you can see tmemutil-sample.ini for an example
The tmemutil.dll’s new feature compared to tete009’s tmemutil.dll is
1) Security Enhancements ( SafeEx=1 ), if you don’t know what it is, you should keep SafeEx=0
2) Process White List ( Prevent some API hook and Browser overflow attacks, EnableWhiteList=1 ), if you don’t know what it is, you should keep EnableWhiteList=0
3) Provide another two Environment Variables ( TmpDataPath and NpluginPath )
4) Provide Bosskey function ( Bosskey=1 ), you can refer to https://code.google.com/p/cppinfo/wiki/about_portable_configuration_file?tm=6#%E7%83%AD%E9%94%AE%E4%BD%BF%E7%94%A8
5) Provide another portable mode ( Nocompatete=1 ), whose portable path is very shallow