Bug 1643832 - Add Pref flag to enable shader precaching at startup. r=jnicol

Differential Revision: https://phabricator.services.mozilla.com/D78580
This commit is contained in:
Kris Taeleman 2020-06-08 08:18:34 +00:00
Родитель 9d82f7b285
Коммит ca4c948827
3 изменённых файлов: 10 добавлений и 2 удалений

Просмотреть файл

@ -926,7 +926,9 @@ void RenderThread::MaybeEnableGLDebugMessage(gl::GLContext* aGLContext) {
WebRenderShaders::WebRenderShaders(gl::GLContext* gl,
WebRenderProgramCache* programCache) {
mGL = gl;
mShaders = wr_shaders_new(gl, programCache ? programCache->Raw() : nullptr);
mShaders =
wr_shaders_new(gl, programCache ? programCache->Raw() : nullptr,
StaticPrefs::gfx_webrender_precache_shaders_AtStartup());
}
WebRenderShaders::~WebRenderShaders() {

Просмотреть файл

@ -3749,10 +3749,11 @@ pub unsafe extern "C" fn wr_device_delete(device: *mut Device) {
pub extern "C" fn wr_shaders_new(
gl_context: *mut c_void,
program_cache: Option<&mut WrProgramCache>,
precache_shaders: bool,
) -> *mut WrShaders {
let mut device = wr_device_new(gl_context, program_cache);
let precache_flags = if env_var_to_bool("MOZ_WR_PRECACHE_SHADERS") {
let precache_flags = if precache_shaders || env_var_to_bool("MOZ_WR_PRECACHE_SHADERS") {
ShaderPrecacheFlags::FULL_COMPILE
} else {
ShaderPrecacheFlags::ASYNC_COMPILE

Просмотреть файл

@ -4274,6 +4274,11 @@
value: true
mirror: once
- name: gfx.webrender.precache-shaders
type: bool
value: false
mirror: once
# When gl debug message is a high severity message, forwward it to gfx critical
# note.
- name: gfx.webrender.gl-debug-message-critical-note