Lines Matching full:optimizer
40 class SPIRV_TOOLS_EXPORT Optimizer { class
74 explicit Optimizer(spv_target_env env);
77 Optimizer(const Optimizer&) = delete;
78 Optimizer(Optimizer&&) = delete;
79 Optimizer& operator=(const Optimizer&) = delete;
80 Optimizer& operator=(Optimizer&&) = delete;
83 ~Optimizer();
92 // Registers the given |pass| to this optimizer. Passes will be run in the
95 Optimizer& RegisterPass(PassToken&& pass);
103 Optimizer& RegisterPerformancePasses();
104 Optimizer& RegisterPerformancePasses(bool preserve_interface);
112 Optimizer& RegisterSizePasses();
113 Optimizer& RegisterSizePasses(bool preserve_interface);
126 Optimizer& RegisterLegalizationPasses();
127 Optimizer& RegisterLegalizationPasses(bool preserve_interface);
130 // string of a form accepted by Optimizer::FlagHasValidForm().
134 // Optimizer::SetMessageConsumer to define a message consumer, if needed).
152 // (Optimizer::RegisterPerformancePasses)
155 // (Optimizer::RegisterSizePasses).
218 // validator options set on the optimizer options.
224 // optimizer's pass manager. These strings are valid until the associated
231 Optimizer& SetPrintAll(std::ostream* out);
236 Optimizer& SetTimeReport(std::ostream* out);
239 Optimizer& SetValidateAfterAll(bool validate);
248 Optimizer::PassToken CreateNullPass();
253 Optimizer::PassToken CreateStripDebugInfoPass();
256 Optimizer::PassToken CreateStripReflectInfoPass();
261 Optimizer::PassToken CreateStripNonSemanticInfoPass();
267 Optimizer::PassToken CreateEliminateDeadFunctionsPass();
272 Optimizer::PassToken CreateEliminateDeadMembersPass();
279 Optimizer::PassToken CreateSetSpecConstantDefaultValuePass(
287 Optimizer::PassToken CreateSetSpecConstantDefaultValuePass(
297 Optimizer::PassToken CreateFlattenDecorationPass();
309 Optimizer::PassToken CreateFreezeSpecConstantValuePass();
331 Optimizer::PassToken CreateFoldSpecConstantOpAndCompositePass();
347 Optimizer::PassToken CreateUnifyConstantPass();
355 Optimizer::PassToken CreateEliminateDeadConstantPass();
361 Optimizer::PassToken CreateStrengthReductionPass();
377 Optimizer::PassToken CreateBlockMergePass();
386 Optimizer::PassToken CreateInlineExhaustivePass();
397 Optimizer::PassToken CreateInlineOpaquePass();
420 Optimizer::PassToken CreateLocalSingleBlockLoadStoreElimPass();
436 Optimizer::PassToken CreateDeadBranchElimPass();
453 Optimizer::PassToken CreateLocalMultiStoreElimPass();
470 Optimizer::PassToken CreateLocalAccessChainConvertPass();
491 Optimizer::PassToken CreateLocalSingleStoreElimPass();
503 Optimizer::PassToken CreateInsertExtractElimPass();
518 Optimizer::PassToken CreateDeadInsertElimPass();
549 Optimizer::PassToken CreateAggressiveDCEPass();
550 Optimizer::PassToken CreateAggressiveDCEPass(bool preserve_interface);
551 Optimizer::PassToken CreateAggressiveDCEPass(bool preserve_interface,
559 Optimizer::PassToken CreateRemoveUnusedInterfaceVariablesPass();
565 Optimizer::PassToken CreatePropagateLineInfoPass();
571 Optimizer::PassToken CreateRedundantLineInfoElimPass();
575 Optimizer::PassToken CreateCompactIdsPass();
583 Optimizer::PassToken CreateRemoveDuplicatesPass();
591 Optimizer::PassToken CreateCFGCleanupPass();
596 Optimizer::PassToken CreateDeadVariableEliminationPass();
611 Optimizer::PassToken CreateMergeReturnPass();
616 Optimizer::PassToken CreateLocalRedundancyEliminationPass();
621 Optimizer::PassToken CreateLoopInvariantCodeMotionPass();
626 Optimizer::PassToken CreateLoopFissionPass(size_t threshold);
632 Optimizer::PassToken CreateLoopFusionPass(size_t max_registers_per_loop);
640 Optimizer::PassToken CreateLoopPeelingPass();
646 Optimizer::PassToken CreateLoopUnswitchPass();
651 Optimizer::PassToken CreateRedundancyEliminationPass();
658 Optimizer::PassToken CreateScalarReplacementPass(uint32_t size_limit = 100);
664 Optimizer::PassToken CreatePrivateToLocalPass();
675 Optimizer::PassToken CreateCCPPass();
682 Optimizer::PassToken CreateWorkaround1209Pass();
685 Optimizer::PassToken CreateIfConversionPass();
689 Optimizer::PassToken CreateReplaceInvalidOpcodePass();
692 Optimizer::PassToken CreateSimplificationPass();
700 Optimizer::PassToken CreateLoopUnrollPass(bool fully_unroll, int factor = 0);
707 Optimizer::PassToken CreateSSARewritePass();
718 Optimizer::PassToken CreateConvertRelaxedToHalfPass();
723 Optimizer::PassToken CreateRelaxFloatOpsPass();
728 Optimizer::PassToken CreateCopyPropagateArraysPass();
734 Optimizer::PassToken CreateVectorDCEPass();
742 Optimizer::PassToken CreateReduceLoadSizePass(
748 Optimizer::PassToken CreateCombineAccessChainsPass();
754 Optimizer::PassToken CreateUpgradeMemoryModelPass();
758 Optimizer::PassToken CreateCodeSinkingPass();
763 Optimizer::PassToken CreateFixStorageClassPass();
794 Optimizer::PassToken CreateGraphicsRobustAccessPass();
807 Optimizer::PassToken CreateSpreadVolatileSemanticsPass();
814 Optimizer::PassToken CreateReplaceDescArrayAccessUsingVarIndexPass();
826 Optimizer::PassToken CreateDescriptorScalarReplacementPass();
828 Optimizer::PassToken CreateDescriptorCompositeScalarReplacementPass();
830 Optimizer::PassToken CreateDescriptorArrayScalarReplacementPass();
836 Optimizer::PassToken CreateWrapOpKillPass();
841 Optimizer::PassToken CreateAmdExtToKhrPass();
850 Optimizer::PassToken CreateInterpolateFixupPass();
856 Optimizer::PassToken CreateOpExtInstWithForwardReferenceFixupPass();
869 Optimizer::PassToken CreateEliminateDeadInputComponentsPass();
882 Optimizer::PassToken CreateEliminateDeadOutputComponentsPass();
890 Optimizer::PassToken CreateEliminateDeadInputComponentsSafePass();
897 Optimizer::PassToken CreateAnalyzeLiveInputPass(
908 Optimizer::PassToken CreateEliminateDeadOutputStoresPass(
918 Optimizer::PassToken CreateConvertToSampledImagePass(
925 Optimizer::PassToken CreateInterfaceVariableScalarReplacementPass();
930 Optimizer::PassToken CreateRemoveDontInlinePass();
935 Optimizer::PassToken CreateFixFuncCallArgumentsPass();
945 Optimizer::PassToken CreateTrimCapabilitiesPass();
953 Optimizer::PassToken CreateStructPackingPass(const char* structToPack,
959 Optimizer::PassToken CreateSwitchDescriptorSetPass(uint32_t ds_from,
966 Optimizer::PassToken CreateInvocationInterlockPlacementPass();
970 Optimizer::PassToken CreateModifyMaximalReconvergencePass(bool add);