diff options
Diffstat (limited to '3rdparty/bgfx/3rdparty/spirv-tools/source/opt/simplification_pass.h')
-rw-r--r-- | 3rdparty/bgfx/3rdparty/spirv-tools/source/opt/simplification_pass.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/3rdparty/bgfx/3rdparty/spirv-tools/source/opt/simplification_pass.h b/3rdparty/bgfx/3rdparty/spirv-tools/source/opt/simplification_pass.h index bcb88bfcd3f..149874b0944 100644 --- a/3rdparty/bgfx/3rdparty/spirv-tools/source/opt/simplification_pass.h +++ b/3rdparty/bgfx/3rdparty/spirv-tools/source/opt/simplification_pass.h @@ -42,6 +42,14 @@ class SimplificationPass : public Pass { // instruction in |function| until nothing else in the function can be // simplified. bool SimplifyFunction(Function* function); + + // FactorAddMul can create |folded_inst| Mul of new Add. If Mul, push any Add + // operand not in |seen_inst| into |worklist|. This is heavily restricted to + // improve compile time but can be expanded for future simplifications which + // simiarly create new operations. + void AddNewOperands(Instruction* folded_inst, + std::unordered_set<Instruction*>* inst_seen, + std::vector<Instruction*>* work_list); }; } // namespace opt |