[#llvm-LICMPass] = xref:llvm.adoc[llvm]::LICMPass :relfileprefix: ../ :mrdocs: Performs Loop Invariant Code Motion Pass. == Synopsis Declared in `<llvm/Transforms/Scalar/LICM.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- class LICMPass : public xref:llvm/OptionalPassInfoMixin-0246.adoc[OptionalPassInfoMixin<LICMPass>] ---- == Base Classes [cols="1,4"] |=== | Name| Description | `xref:llvm/OptionalPassInfoMixin-0246.adoc[OptionalPassInfoMixin<LICMPass>]` | A CRTP mix‐in for passes that can be skipped. |=== == Member Functions [cols="1,4"] |=== | Name| Description | xref:llvm/LICMPass/2constructor-06.adoc[`LICMPass`] [.small]#[constructor]# | Constructors | xref:llvm/LICMPass/printPipeline.adoc[`printPipeline`] | Print this pass's pipeline representation to `OS.` | xref:llvm/LICMPass/run.adoc[`run`] | Run loop invariant code motion over the loop. |=== == Static Member Functions [cols="1,4"] |=== | Name| Description | xref:llvm/LICMPass/isRequired.adoc[`isRequired`] | Return false; optional passes may be skipped. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#