move around shaders in vertices uber 1/2 (#166180)
Still failed to compile on the P10. Moving shaders around until it works
(now it works).
diff --git a/engine/src/flutter/impeller/entity/contents/content_context.cc b/engine/src/flutter/impeller/entity/contents/content_context.cc
index 81f6281..e1207d7 100644
--- a/engine/src/flutter/impeller/entity/contents/content_context.cc
+++ b/engine/src/flutter/impeller/entity/contents/content_context.cc
@@ -1427,7 +1427,7 @@
PipelineRef ContentContext::GetDrawVerticesUberPipeline(
BlendMode blend_mode,
ContentContextOptions opts) const {
- if (blend_mode <= BlendMode::kSoftLight) {
+ if (blend_mode <= BlendMode::kHardLight) {
return GetPipeline(this, pipelines_->vertices_uber_1_, opts);
} else {
return GetPipeline(this, pipelines_->vertices_uber_2_, opts);
diff --git a/engine/src/flutter/impeller/entity/shaders/blending/blend_select.glsl b/engine/src/flutter/impeller/entity/shaders/blending/blend_select.glsl
index 645e358..57a18c6 100644
--- a/engine/src/flutter/impeller/entity/shaders/blending/blend_select.glsl
+++ b/engine/src/flutter/impeller/entity/shaders/blending/blend_select.glsl
@@ -93,13 +93,13 @@
if (blend_type == 6) {
return IPBlendHardLight(dst, src);
}
- if (blend_type == 7) {
- return IPBlendSoftLight(dst, src);
- }
return f16vec3(0.0hf);
}
f16vec3 AdvancedBlendHalf2(f16vec3 dst, f16vec3 src, int blend_type) {
+ if (blend_type == 7) {
+ return IPBlendSoftLight(dst, src);
+ }
if (blend_type == 8) {
return IPBlendDifference(dst, src);
}
diff --git a/engine/src/flutter/impeller/tools/malioc.json b/engine/src/flutter/impeller/tools/malioc.json
index 83636d9..499e73d 100644
--- a/engine/src/flutter/impeller/tools/malioc.json
+++ b/engine/src/flutter/impeller/tools/malioc.json
@@ -7718,10 +7718,10 @@
"arith_fma"
],
"longest_path_cycles": [
- 1.2625000476837158,
- 1.2625000476837158,
- 0.737500011920929,
- 0.3125,
+ 0.887499988079071,
+ 0.887499988079071,
+ 0.53125,
+ 0.125,
0.0,
0.5,
0.25
@@ -7741,7 +7741,7 @@
"shortest_path_cycles": [
0.421875,
0.421875,
- 0.375,
+ 0.34375,
0.0625,
0.0,
0.5,
@@ -7752,10 +7752,10 @@
"arith_fma"
],
"total_cycles": [
- 2.40625,
- 2.40625,
- 1.75,
- 0.6875,
+ 1.625,
+ 1.625,
+ 1.34375,
+ 0.5,
0.0,
0.5,
0.25
@@ -7763,8 +7763,8 @@
},
"stack_spill_bytes": 0,
"thread_occupancy": 100,
- "uniform_registers_used": 10,
- "work_registers_used": 32
+ "uniform_registers_used": 8,
+ "work_registers_used": 26
}
}
},
@@ -7775,14 +7775,14 @@
"type": "Fragment",
"variants": {
"Main": {
- "has_stack_spilling": true,
+ "has_stack_spilling": false,
"performance": {
"longest_path_bound_pipelines": [
"arithmetic"
],
"longest_path_cycles": [
- 11.880000114440918,
- 5.0,
+ 9.569999694824219,
+ 1.0,
1.0
],
"pipelines": [
@@ -7794,7 +7794,7 @@
"arithmetic"
],
"shortest_path_cycles": [
- 4.289999961853027,
+ 3.9600000381469727,
1.0,
1.0
],
@@ -7802,8 +7802,8 @@
"arithmetic"
],
"total_cycles": [
- 23.0,
- 6.0,
+ 18.66666603088379,
+ 1.0,
1.0
]
},
@@ -7835,9 +7835,9 @@
"arith_fma"
],
"longest_path_cycles": [
- 1.1124999523162842,
- 1.1124999523162842,
- 0.800000011920929,
+ 1.2625000476837158,
+ 1.2625000476837158,
+ 0.637499988079071,
0.3125,
0.0,
0.5,
@@ -7869,10 +7869,10 @@
"arith_fma"
],
"total_cycles": [
- 1.8875000476837158,
- 1.8875000476837158,
- 1.28125,
- 0.375,
+ 2.6875,
+ 2.6875,
+ 1.6749999523162842,
+ 0.5625,
0.0,
0.5,
0.25
@@ -7880,8 +7880,8 @@
},
"stack_spill_bytes": 0,
"thread_occupancy": 100,
- "uniform_registers_used": 8,
- "work_registers_used": 24
+ "uniform_registers_used": 12,
+ "work_registers_used": 32
}
}
},
@@ -7892,14 +7892,14 @@
"type": "Fragment",
"variants": {
"Main": {
- "has_stack_spilling": true,
+ "has_stack_spilling": false,
"performance": {
"longest_path_bound_pipelines": [
"arithmetic"
],
"longest_path_cycles": [
- 11.220000267028809,
- 9.0,
+ 11.550000190734863,
+ 1.0,
1.0
],
"pipelines": [
@@ -7908,25 +7908,25 @@
"texture"
],
"shortest_path_bound_pipelines": [
- "load_store"
+ "arithmetic"
],
"shortest_path_cycles": [
- 3.630000114440918,
- 5.0,
+ 4.289999961853027,
+ 1.0,
1.0
],
"total_bound_pipelines": [
"arithmetic"
],
"total_cycles": [
- 27.66666603088379,
- 14.0,
+ 31.66666603088379,
+ 1.0,
1.0
]
},
- "thread_occupancy": 100,
+ "thread_occupancy": 50,
"uniform_registers_used": 1,
- "work_registers_used": 4
+ "work_registers_used": 8
}
}
}
@@ -10678,10 +10678,10 @@
"arith_fma"
],
"longest_path_cycles": [
- 1.2625000476837158,
- 1.2625000476837158,
- 0.6875,
- 0.3125,
+ 0.887499988079071,
+ 0.887499988079071,
+ 0.46875,
+ 0.125,
0.0,
0.5,
0.25
@@ -10713,10 +10713,10 @@
"arith_fma"
],
"total_cycles": [
- 2.4375,
- 2.4375,
- 1.5,
- 0.6875,
+ 1.6375000476837158,
+ 1.6375000476837158,
+ 1.1749999523162842,
+ 0.5,
0.0,
0.5,
0.25
@@ -10724,8 +10724,8 @@
},
"stack_spill_bytes": 0,
"thread_occupancy": 100,
- "uniform_registers_used": 12,
- "work_registers_used": 32
+ "uniform_registers_used": 10,
+ "work_registers_used": 27
}
}
}
@@ -10753,7 +10753,7 @@
"longest_path_cycles": [
1.1124999523162842,
1.1124999523162842,
- 0.699999988079071,
+ 0.737500011920929,
0.3125,
0.0,
0.5,
@@ -10775,7 +10775,7 @@
"shortest_path_cycles": [
0.5625,
0.5625,
- 0.234375,
+ 0.265625,
0.125,
0.0,
0.5,
@@ -10786,10 +10786,10 @@
"arith_fma"
],
"total_cycles": [
- 1.90625,
- 1.90625,
- 1.09375,
- 0.375,
+ 2.700000047683716,
+ 2.700000047683716,
+ 1.4249999523162842,
+ 0.5625,
0.0,
0.5,
0.25
@@ -10797,8 +10797,8 @@
},
"stack_spill_bytes": 0,
"thread_occupancy": 100,
- "uniform_registers_used": 8,
- "work_registers_used": 23
+ "uniform_registers_used": 12,
+ "work_registers_used": 32
}
}
}