Compiling simd v0.2.1 Compiling cfg-if v0.1.0 Pass Arguments: -tti -targetlibinfo -targetpassconfig -machinemoduleinfo -tbaa -scoped-noalias -assumption-cache-tracker -collector-metadata -profile-summary-info -machine-branch-prob -pre-isel-intrinsic-lowering -atomic-expand -domtree -basicaa -verify -loops -loop-simplify -scalar-evolution -iv-users -loop-reduce -expandmemcmp -gc-lowering -shadow-stack-gc-lowering -unreachableblockelim -domtree -loops -branch-prob -block-freq -consthoist -partially-inline-libcalls -post-inline-ee-instrument -scalarize-masked-mem-intrin -expand-reductions -domtree -interleaved-access -indirectbr-expand -domtree -loops -codegenprepare -rewrite-symbols -domtree -dwarfehprepare -safe-stack -stack-protector -verify -domtree -basicaa -aa -loops -branch-prob -machinedomtree -expand-isel-pseudos -x86-domain-reassignment -tailduplication -opt-phis -slotindexes -stack-coloring -localstackalloc -dead-mi-elimination -machinedomtree -machine-loops -machine-trace-metrics -early-ifcvt -machine-combiner -x86-cmov-conversion -machinedomtree -machine-loops -machinelicm -machine-cse -machinepostdomtree -machine-block-freq -machine-sink -peephole-opt -dead-mi-elimination -lrshrink -x86-cf-opt -detect-dead-lanes -processimpdefs -unreachable-mbb-elimination -livevars -machinedomtree -machine-loops -phi-node-elimination -twoaddressinstruction -slotindexes -liveintervals -simple-register-coalescing -rename-independent-subregs -machine-scheduler -machine-block-freq -livedebugvars -livestacksPass Arguments: - -virtregmaptti - -liveregmatrixtargetlibinfo - -edge-bundlestbaa - -spill-code-placementscoped-noalias - -lazy-machine-block-freqassumption-cache-tracker - -machine-opt-remark-emitterverify - -greedyee-instrument - -virtregrewritersimplifycfg - -stack-slot-coloringdomtree - -machinelicmsroa - -edge-bundlesearly-cse - -machine-block-freqlower-expect - machinepostdomtreeTarget Transform Information - shrink-wrapTarget Library Information - lazy-machine-block-freqType-Based Alias Analysis - machine-opt-remark-emitterScoped NoAlias Alias Analysis - prologepilogAssumption Cache Tracker - branch-folder -FunctionPass Manager tailduplication -Module Verifiermachine-cp - postrapseudosInstrument function entry/exit with calls to e.g. mcount() (pre inlining) - machinedomtree -Simplify the CFGmachine-loops - post-RA-schedDominator Tree Construction - gc-analysis -SROAmachine-block-freq - machinepostdomtreeEarly CSE - block-placement -Lower 'expect' Intrinsicsx86-execution-deps-fix -machinedomtree -machine-loops -x86-fixup-bw-insts -x86-fixup-LEAs -x86-evex-to-vex-compress -Pass Arguments: funclet-layout - -ttistackmap-liveness - -targetlibinfolivedebugvalues - -tbaafentry-insert - -scoped-noaliasmachinedomtree - -assumption-cache-trackermachine-loops - -profile-summary-infoxray-instrumentation - -forceattrspatchable-function - -inferattrslazy-machine-block-freq - -ipsccpmachine-opt-remark-emitter - -called-value-propagationmachinedomtree - -globaloptmachine-loops - domtreeTarget Transform Information - mem2regTarget Library Information - deadargelimTarget Pass Configuration - domtreeMachine Module Information - basicaaType-Based Alias Analysis - aaScoped NoAlias Alias Analysis - loopsAssumption Cache Tracker - lazy-branch-probCreate Garbage Collector Module Metadata - lazy-block-freqProfile summary info - opt-remark-emitterMachine Branch Probability Analysis - instcombine -ModulePass Manager simplifycfg -Pre-ISel Intrinsic Loweringbasiccg - globals-aaFunctionPass Manager - prune-ehExpand Atomic instructions - inline -Dominator Tree Constructionfunctionattrs - domtreeBasic Alias Analysis (stateless AA impl) - sroa -Module Verifierbasicaa - aaNatural Loop Information - memoryssa -Canonicalize natural loopsearly-cse-memssa - speculative-executionScalar Evolution Analysis - domtree -Loop Pass Manager basicaa -Induction Variable Usersaa - lazy-value-infoLoop Strength Reduction - jump-threading -Expand memcmp() to load/storeslazy-value-info - correlated-propagationLower Garbage Collection Instructions - simplifycfg -Shadow Stack GC Loweringdomtree - basicaaRemove unreachable blocks from the CFG - aa -Dominator Tree Constructionloops - lazy-branch-probNatural Loop Information - lazy-block-freq -Branch Probability Analysisopt-remark-emitter - instcombineBlock Frequency Analysis - libcalls-shrinkwrap -Constant Hoistingloops - branch-probPartially inline calls to library functions - block-freq -Instrument function entry/exit with calls to e.g. mcount() (post inlining)lazy-branch-prob - lazy-block-freqScalarize Masked Memory Intrinsics - opt-remark-emitter -Expand reduction intrinsicspgo-memop-opt - domtreeDominator Tree Construction - basicaa -Interleaved Access Passaa - loopsExpand indirectbr instructions - lazy-branch-prob -Dominator Tree Constructionlazy-block-freq - opt-remark-emitterNatural Loop Information - tailcallelim -CodeGen Preparesimplifycfg - reassociateRewrite Symbols - domtree -FunctionPass Manager loops -Dominator Tree Constructionloop-simplify - lcssa-verificationException handling preparation - lcssa -Safe Stack instrumentation passbasicaa - aaInsert stack protectors - scalar-evolution -Module Verifierloop-rotate - licmDominator Tree Construction - loop-unswitch -Basic Alias Analysis (stateless AA impl)simplifycfg - domtreeFunction Alias Analysis Results - basicaa -Natural Loop Informationaa - loopsBranch Probability Analysis - lazy-branch-prob -X86 DAG->DAG Instruction Selectionlazy-block-freq - opt-remark-emitterMachineDominator Tree Construction - instcombine -Local Dynamic TLS Access Clean-uploop-simplify - lcssa-verificationX86 PIC Global Base Reg Initialization - lcssa -Expand ISel Pseudo-instructionsscalar-evolution - indvarsX86 Domain Reassignment Pass - loop-idiom -Tail Duplicationloop-deletion - loop-unrollOptimize machine instruction PHIs - mldst-motion -Slot index numberingaa - memdepMerge disjoint stack slots - lazy-branch-prob -Local Stack Slot Allocationlazy-block-freq - opt-remark-emitterRemove dead machine instructions - gvn -MachineDominator Tree Constructionbasicaa - aaMachine Natural Loop Construction - memdep -Machine Trace Metricsmemcpyopt - sccpEarly If-Conversion - domtree -Machine InstCombinerdemanded-bits - bdceX86 cmov Conversion - basicaa -MachineDominator Tree Constructionaa - loopsMachine Natural Loop Construction - lazy-branch-prob -Machine Loop Invariant Code Motionlazy-block-freq - opt-remark-emitterMachine Common Subexpression Elimination - instcombine -MachinePostDominator Tree Constructionlazy-value-info - jump-threadingMachine Block Frequency Analysis - lazy-value-info -Machine code sinkingcorrelated-propagation - domtreePeephole Optimizations - basicaa -Remove dead machine instructionsaa - memdepLive Range Shrink - dse -X86 Fixup SetCCloops - loop-simplifyX86 LEA Optimize - lcssa-verification -X86 Optimize Call Framelcssa - aaX86 WinAlloca Expander - scalar-evolution -Detect Dead Laneslicm - postdomtreeProcess Implicit Definitions - adce -Remove unreachable machine basic blockssimplifycfg - domtreeLive Variable Analysis - basicaa -MachineDominator Tree Constructionaa - loopsMachine Natural Loop Construction - lazy-branch-prob -Eliminate PHI nodes for register allocationlazy-block-freq - opt-remark-emitterTwo-Address instruction pass - instcombine -Slot index numberingbarrier - elim-avail-externLive Interval Analysis - basiccg -Simple Register Coalescingrpo-functionattrs - globaloptRename Disconnected Subregister Components - globaldce -Machine Instruction Schedulerbasiccg - globals-aaMachine Block Frequency Analysis - float2int -Debug Variable Analysisdomtree - loopsLive Stack Slot Analysis - loop-simplify -Virtual Register Maplcssa-verification - lcssaLive Register Matrix - basicaa -Bundle Machine CFG Edgesaa - scalar-evolutionSpill Code Placement Analysis - loop-rotate -Lazy Machine Block Frequency Analysisloop-accesses - lazy-branch-probMachine Optimization Remark Emitter - lazy-block-freq -Greedy Register Allocatoropt-remark-emitter - loop-distributeVirtual Register Rewriter - branch-prob -Stack Slot Coloringblock-freq - scalar-evolutionMachine Loop Invariant Code Motion - basicaa -Bundle Machine CFG Edgesaa - loop-accessesX86 FP Stackifier - demanded-bits -Machine Block Frequency Analysislazy-branch-prob - lazy-block-freqMachinePostDominator Tree Construction - opt-remark-emitter -Shrink Wrapping analysisloop-vectorize - loop-simplifyLazy Machine Block Frequency Analysis - scalar-evolution -Machine Optimization Remark Emitteraa - loop-accessesPrologue/Epilogue Insertion & Frame Finalization - loop-load-elim -Control Flow Optimizerbasicaa - aaTail Duplication - lazy-branch-prob -Machine Copy Propagation Passlazy-block-freq - opt-remark-emitterPost-RA pseudo instruction expansion pass - instcombine -X86 pseudo instruction expansion passsimplifycfg - domtreeMachineDominator Tree Construction - basicaa -Machine Natural Loop Constructionaa - loopsPost RA top-down list latency scheduler - lazy-branch-prob -Analyze Machine Code For Garbage Collectionlazy-block-freq - opt-remark-emitterMachine Block Frequency Analysis - instcombine -MachinePostDominator Tree Constructionloop-simplify - lcssa-verificationBranch Probability Basic Block Placement - lcssa -X86 Execution Dependency Fixscalar-evolution - loop-unrollX86 vzeroupper inserter - lazy-branch-prob -MachineDominator Tree Constructionlazy-block-freq - opt-remark-emitterMachine Natural Loop Construction - instcombine -X86 Byte/Word Instruction Fixuploop-simplify - lcssa-verificationX86 Atom pad short functions - lcssa -X86 LEA Fixupscalar-evolution - licmCompressing EVEX instrs to VEX encoding when possible - alignment-from-assumptions -Contiguously Lay Out Funcletsstrip-dead-prototypes - globaldceStackMap Liveness Analysis - constmerge -Live DEBUG_VALUE analysisdomtree - loopsInsert fentry calls - branch-prob -MachineDominator Tree Constructionblock-freq - loop-simplifyMachine Natural Loop Construction - lcssa-verification -Insert XRay opslcssa - basicaaImplement the 'patchable-function' attribute - aa -X86 Retpoline Thunksscalar-evolution - branch-probLazy Machine Block Frequency Analysis - block-freq -Machine Optimization Remark Emitterloop-sink - lazy-branch-probMachineDominator Tree Construction - lazy-block-freq -Machine Natural Loop Constructionopt-remark-emitter - instsimplifyX86 Assembly Printer - div-rem-pairs -Free MachineFunctionsimplifycfg Target Transform Information Target Library Information Type-Based Alias Analysis Scoped NoAlias Alias Analysis Assumption Cache Tracker Profile summary info ModulePass Manager Force set function attributes Infer set function attributes Interprocedural Sparse Conditional Constant Propagation Called Value Propagation Global Variable Optimizer Unnamed pass: implement Pass::getPassName() FunctionPass Manager Dominator Tree Construction Promote Memory to Register Dead Argument Elimination FunctionPass Manager Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Combine redundant instructions Simplify the CFG CallGraph Construction Globals Alias Analysis Call Graph SCC Pass Manager Remove unused exception handling info Function Integration/Inlining Deduce function attributes FunctionPass Manager Dominator Tree Construction SROA Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Memory SSA Early CSE w/ MemorySSA Speculatively execute instructions if target has divergent branches Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Lazy Value Information Analysis Jump Threading Lazy Value Information Analysis Value Propagation Simplify the CFG Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Combine redundant instructions Conditionally eliminate dead library calls Natural Loop Information Branch Probability Analysis Block Frequency Analysis Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter PGOMemOPSize Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Tail Call Elimination Simplify the CFG Reassociate expressions Dominator Tree Construction Natural Loop Information Canonicalize natural loops LCSSA Verifier Loop-Closed SSA Form Pass Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Scalar Evolution Analysis Loop Pass Manager Rotate Loops Loop Invariant Code Motion Unswitch loops Simplify the CFG Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Combine redundant instructions Canonicalize natural loops LCSSA Verifier Loop-Closed SSA Form Pass Scalar Evolution Analysis Loop Pass Manager Induction Variable Simplification Recognize loop idioms Delete dead loops Unroll loops MergedLoadStoreMotion Function Alias Analysis Results Memory Dependence Analysis Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Global Value Numbering Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Memory Dependence Analysis MemCpy Optimization Sparse Conditional Constant Propagation Dominator Tree Construction Demanded bits analysis Bit-Tracking Dead Code Elimination Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Combine redundant instructions Lazy Value Information Analysis Jump Threading Lazy Value Information Analysis Value Propagation Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Memory Dependence Analysis Dead Store Elimination Natural Loop Information Canonicalize natural loops LCSSA Verifier Loop-Closed SSA Form Pass Function Alias Analysis Results Scalar Evolution Analysis Loop Pass Manager Loop Invariant Code Motion Post-Dominator Tree Construction Aggressive Dead Code Elimination Simplify the CFG Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Combine redundant instructions A No-Op Barrier Pass Eliminate Available Externally Globals CallGraph Construction Deduce function attributes in RPO Global Variable Optimizer Unnamed pass: implement Pass::getPassName() Dead Global Elimination CallGraph Construction Globals Alias Analysis FunctionPass Manager Float to int Dominator Tree Construction Natural Loop Information Canonicalize natural loops LCSSA Verifier Loop-Closed SSA Form Pass Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Scalar Evolution Analysis Loop Pass Manager Rotate Loops Loop Access Analysis Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Loop Distribution Branch Probability Analysis Block Frequency Analysis Scalar Evolution Analysis Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Loop Access Analysis Demanded bits analysis Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Loop Vectorization Canonicalize natural loops Scalar Evolution Analysis Function Alias Analysis Results Loop Access Analysis Loop Load Elimination Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Combine redundant instructions Simplify the CFG Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Combine redundant instructions Canonicalize natural loops LCSSA Verifier Loop-Closed SSA Form Pass Scalar Evolution Analysis Loop Pass Manager Unroll loops Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Combine redundant instructions Canonicalize natural loops LCSSA Verifier Loop-Closed SSA Form Pass Scalar Evolution Analysis Loop Pass Manager Loop Invariant Code Motion Alignment from assumptions Strip Unused Function Prototypes Dead Global Elimination Merge Duplicate Global Constants FunctionPass Manager Dominator Tree Construction Natural Loop Information Branch Probability Analysis Block Frequency Analysis Canonicalize natural loops LCSSA Verifier Loop-Closed SSA Form Pass Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Scalar Evolution Analysis Branch Probability Analysis Block Frequency Analysis Loop Pass Manager Loop Sink Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Remove redundant instructions Hoist/decompose integer division and remainder Simplify the CFG Pass Arguments: -domtree FunctionPass Manager Dominator Tree Construction Pass Arguments: -domtree FunctionPass Manager Dominator Tree Construction Pass Arguments: -assumption-cache-tracker -profile-summary-info -targetlibinfo -module-summary-analysis -write-thinlto-bitcode Assumption Cache Tracker Profile summary info Target Library Information ModulePass Manager Module Summary Analysis Unnamed pass: implement Pass::getPassName() ThinLTO Bitcode Writer Pass Arguments: -targetlibinfo -domtree -loops -branch-prob -block-freq Target Library Information FunctionPass Manager Dominator Tree Construction Natural Loop Information Branch Probability Analysis Block Frequency Analysis Pass Arguments: -tti -targetlibinfo -targetpassconfig -machinemoduleinfo -tbaa -scoped-noalias -assumption-cache-tracker -collector-metadata -profile-summary-info -machine-branch-prob -pre-isel-intrinsic-lowering -atomic-expand -domtree -basicaa -verify -loops -loop-simplify -scalar-evolution -iv-users -loop-reduce -expandmemcmp -gc-lowering -shadow-stack-gc-lowering -unreachableblockelim -domtree -loops -branch-prob -block-freq -consthoist -partially-inline-libcalls -post-inline-ee-instrument -scalarize-masked-mem-intrin -expand-reductions -domtree -interleaved-access -indirectbr-expand -domtree -loops -codegenprepare -rewrite-symbols -domtree -dwarfehprepare -safe-stack -stack-protector -verify -domtree -basicaa -aa -loops -branch-prob -machinedomtree -expand-isel-pseudos -x86-domain-reassignment -tailduplication -opt-phis -slotindexes -stack-coloring -localstackalloc -dead-mi-elimination -machinedomtree -machine-loops -machine-trace-metrics -early-ifcvt -machine-combiner -x86-cmov-conversion -machinedomtree -machine-loops -machinelicm -machine-cse -machinepostdomtree -machine-block-freq -machine-sink -peephole-opt -dead-mi-elimination -lrshrink -x86-cf-opt -detect-dead-lanes -processimpdefs -unreachable-mbb-elimination -livevars -machinedomtree -machine-loops -phi-node-elimination -twoaddressinstruction -slotindexes -liveintervals -simple-register-coalescing -rename-independent-subregs -machine-scheduler -machine-block-freq -livedebugvars -livestacks -virtregmap -liveregmatrix -edge-bundles -spill-code-placement -lazy-machine-block-freq -machine-opt-remark-emitter -greedy -virtregrewriter -stack-slot-coloring -machinelicm -edge-bundles -machine-block-freq -machinepostdomtree -shrink-wrap -lazy-machine-block-freq -machine-opt-remark-emitter -prologepilog -branch-folder -tailduplication -machine-cp -postrapseudos -machinedomtree -machine-loops -post-RA-sched -gc-analysis -machine-block-freq -machinepostdomtree -block-placement -x86-execution-deps-fix -machinedomtree -machine-loops -x86-fixup-bw-insts -x86-fixup-LEAs -x86-evex-to-vex-compress -funclet-layout -stackmap-liveness -livedebugvalues -fentry-insert -machinedomtree -machine-loops -xray-instrumentation -patchable-function -lazy-machine-block-freq -machine-opt-remark-emitter -machinedomtree -machine-loops Target Transform Information Target Library Information Target Pass Configuration Machine Module Information Type-Based Alias Analysis Scoped NoAlias Alias Analysis Assumption Cache Tracker Create Garbage Collector Module Metadata Profile summary info Machine Branch Probability Analysis ModulePass Manager Pre-ISel Intrinsic Lowering FunctionPass Manager Expand Atomic instructions Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Module Verifier Natural Loop Information Canonicalize natural loops Scalar Evolution Analysis Loop Pass Manager Induction Variable Users Loop Strength Reduction Expand memcmp() to load/stores Lower Garbage Collection Instructions Shadow Stack GC Lowering Remove unreachable blocks from the CFG Dominator Tree Construction Natural Loop Information Branch Probability Analysis Block Frequency Analysis Constant Hoisting Partially inline calls to library functions Instrument function entry/exit with calls to e.g. mcount() (post inlining) Scalarize Masked Memory Intrinsics Expand reduction intrinsics Dominator Tree Construction Interleaved Access Pass Expand indirectbr instructions Dominator Tree Construction Natural Loop Information CodeGen Prepare Rewrite Symbols FunctionPass Manager Dominator Tree Construction Exception handling preparation Safe Stack instrumentation pass Insert stack protectors Module Verifier Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Branch Probability Analysis X86 DAG->DAG Instruction Selection MachineDominator Tree Construction Local Dynamic TLS Access Clean-up X86 PIC Global Base Reg Initialization Expand ISel Pseudo-instructions X86 Domain Reassignment Pass Tail Duplication Optimize machine instruction PHIs Slot index numbering Merge disjoint stack slots Local Stack Slot Allocation Remove dead machine instructions MachineDominator Tree Construction Machine Natural Loop Construction Machine Trace Metrics Early If-Conversion Machine InstCombiner X86 cmov Conversion MachineDominator Tree Construction Machine Natural Loop Construction Machine Loop Invariant Code Motion Machine Common Subexpression Elimination MachinePostDominator Tree Construction Machine Block Frequency Analysis Machine code sinking Peephole Optimizations Remove dead machine instructions Live Range Shrink X86 Fixup SetCC X86 LEA Optimize X86 Optimize Call Frame X86 WinAlloca Expander Detect Dead Lanes Process Implicit Definitions Remove unreachable machine basic blocks Live Variable Analysis MachineDominator Tree Construction Machine Natural Loop Construction Eliminate PHI nodes for register allocation Two-Address instruction pass Slot index numbering Live Interval Analysis Simple Register Coalescing Rename Disconnected Subregister Components Machine Instruction Scheduler Machine Block Frequency Analysis Debug Variable Analysis Live Stack Slot Analysis Virtual Register Map Live Register Matrix Bundle Machine CFG Edges Spill Code Placement Analysis Lazy Machine Block Frequency Analysis Machine Optimization Remark Emitter Greedy Register Allocator Virtual Register Rewriter Stack Slot Coloring Machine Loop Invariant Code Motion Bundle Machine CFG Edges X86 FP Stackifier Machine Block Frequency Analysis MachinePostDominator Tree Construction Shrink Wrapping analysis Lazy Machine Block Frequency Analysis Machine Optimization Remark Emitter Prologue/Epilogue Insertion & Frame Finalization Control Flow Optimizer Tail Duplication Machine Copy Propagation Pass Post-RA pseudo instruction expansion pass X86 pseudo instruction expansion pass MachineDominator Tree Construction Machine Natural Loop Construction Post RA top-down list latency scheduler Analyze Machine Code For Garbage Collection Machine Block Frequency Analysis MachinePostDominator Tree Construction Branch Probability Basic Block Placement X86 Execution Dependency Fix X86 vzeroupper inserter MachineDominator Tree Construction Machine Natural Loop Construction X86 Byte/Word Instruction Fixup X86 Atom pad short functions X86 LEA Fixup Compressing EVEX instrs to VEX encoding when possible Contiguously Lay Out Funclets StackMap Liveness Analysis Live DEBUG_VALUE analysis Insert fentry calls MachineDominator Tree Construction Machine Natural Loop Construction Insert XRay ops Implement the 'patchable-function' attribute X86 Retpoline Thunks Lazy Machine Block Frequency Analysis Machine Optimization Remark Emitter MachineDominator Tree Construction Machine Natural Loop Construction X86 Assembly Printer Free MachineFunction Pass Arguments: -tti -targetlibinfo -targetpassconfig -machinemoduleinfo -tbaa -scoped-noalias -assumption-cache-tracker -collector-metadata -profile-summary-info -machine-branch-prob -pre-isel-intrinsic-lowering -atomic-expand -domtree -basicaa -verify -loops -loop-simplify -scalar-evolution -iv-users -loop-reduce -expandmemcmp -gc-lowering -shadow-stack-gc-lowering -unreachableblockelim -domtree -loops -branch-prob -block-freq -consthoist -partially-inline-libcalls -post-inline-ee-instrument -scalarize-masked-mem-intrin -expand-reductions -domtree -interleaved-access -indirectbr-expand -domtree -loops -codegenprepare -rewrite-symbols -domtree -dwarfehprepare -safe-stack -stack-protector -verify -domtree -basicaa -aa -loops -branch-prob -machinedomtree -expand-isel-pseudos -x86-domain-reassignment -tailduplication -opt-phis -slotindexes -stack-coloring -localstackalloc -dead-mi-elimination -machinedomtree -machine-loops -machine-trace-metrics -early-ifcvt -machine-combiner -x86-cmov-conversion -machinedomtree -machine-loops -machinelicm -machine-cse -machinepostdomtree -machine-block-freq -machine-sink -peephole-opt -dead-mi-elimination -lrshrink -x86-cf-opt -detect-dead-lanes -processimpdefs -unreachable-mbb-elimination -livevars -machinedomtree -machine-loops -phi-node-elimination -twoaddressinstruction -slotindexes -liveintervals -simple-register-coalescing -rename-independent-subregs -machine-scheduler -machine-block-freq -livedebugvars -livestacks -virtregmap -liveregmatrix -edge-bundles -spill-code-placement -lazy-machine-block-freq -machine-opt-remark-emitter -greedy -virtregrewriter -stack-slot-coloring -machinelicm -edge-bundles -machine-block-freq -machinepostdomtree -shrink-wrap -lazy-machine-block-freq -machine-opt-remark-emitter -prologepilog -branch-folder -tailduplication -machine-cp -postrapseudos -machinedomtree -machine-loops -post-RA-sched -gc-analysis -machine-block-freq -machinepostdomtree -block-placement -x86-execution-deps-fix -machinedomtree -machine-loops -x86-fixup-bw-insts -x86-fixup-LEAs -x86-evex-to-vex-compress -funclet-layout -stackmap-liveness -livedebugvalues -fentry-insert -machinedomtree -machine-loops -xray-instrumentation -patchable-function -lazy-machine-block-freq -machine-opt-remark-emitter -machinedomtree -machine-loops Target Transform Information Target Library Information Target Pass Configuration Machine Module Information Type-Based Alias Analysis Scoped NoAlias Alias Analysis Assumption Cache Tracker Create Garbage Collector Module Metadata Profile summary info Machine Branch Probability Analysis ModulePass Manager Pre-ISel Intrinsic Lowering FunctionPass Manager Expand Atomic instructions Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Module Verifier Natural Loop Information Canonicalize natural loops Scalar Evolution Analysis Loop Pass Manager Induction Variable Users Loop Strength Reduction Expand memcmp() to load/stores Lower Garbage Collection Instructions Shadow Stack GC Lowering Remove unreachable blocks from the CFG Dominator Tree Construction Natural Loop Information Branch Probability Analysis Block Frequency Analysis Constant Hoisting Partially inline calls to library functions Instrument function entry/exit with calls to e.g. mcount() (post inlining) Scalarize Masked Memory Intrinsics Expand reduction intrinsics Dominator Tree Construction Interleaved Access Pass Expand indirectbr instructions Dominator Tree Construction Natural Loop Information CodeGen Prepare Rewrite Symbols FunctionPass Manager Dominator Tree Construction Exception handling preparation Safe Stack instrumentation pass Insert stack protectors Module Verifier Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Branch Probability Analysis X86 DAG->DAG Instruction Selection MachineDominator Tree Construction Local Dynamic TLS Access Clean-up X86 PIC Global Base Reg Initialization Expand ISel Pseudo-instructions X86 Domain Reassignment Pass Tail Duplication Optimize machine instruction PHIs Slot index numbering Merge disjoint stack slots Local Stack Slot Allocation Remove dead machine instructions MachineDominator Tree Construction Machine Natural Loop Construction Machine Trace Metrics Early If-Conversion Machine InstCombiner X86 cmov Conversion MachineDominator Tree Construction Machine Natural Loop Construction Machine Loop Invariant Code Motion Machine Common Subexpression Elimination MachinePostDominator Tree Construction Machine Block Frequency Analysis Machine code sinking Peephole Optimizations Remove dead machine instructions Live Range Shrink X86 Fixup SetCC X86 LEA Optimize X86 Optimize Call Frame X86 WinAlloca Expander Detect Dead Lanes Process Implicit Definitions Remove unreachable machine basic blocks Live Variable Analysis MachineDominator Tree Construction Machine Natural Loop Construction Eliminate PHI nodes for register allocation Two-Address instruction pass Slot index numbering Live Interval Analysis Simple Register Coalescing Rename Disconnected Subregister Components Machine Instruction Scheduler Machine Block Frequency Analysis Debug Variable Analysis Live Stack Slot Analysis Virtual Register Map Live Register Matrix Bundle Machine CFG Edges Spill Code Placement Analysis Lazy Machine Block Frequency Analysis Machine Optimization Remark Emitter Greedy Register Allocator Virtual Register Rewriter Stack Slot Coloring Machine Loop Invariant Code Motion Bundle Machine CFG Edges X86 FP Stackifier Machine Block Frequency Analysis MachinePostDominator Tree Construction Shrink Wrapping analysis Lazy Machine Block Frequency Analysis Machine Optimization Remark Emitter Prologue/Epilogue Insertion & Frame Finalization Control Flow Optimizer Tail Duplication Machine Copy Propagation Pass Post-RA pseudo instruction expansion pass X86 pseudo instruction expansion pass MachineDominator Tree Construction Machine Natural Loop Construction Post RA top-down list latency scheduler Analyze Machine Code For Garbage Collection Machine Block Frequency Analysis MachinePostDominator Tree Construction Branch Probability Basic Block Placement X86 Execution Dependency Fix X86 vzeroupper inserter MachineDominator Tree Construction Machine Natural Loop Construction X86 Byte/Word Instruction Fixup X86 Atom pad short functions X86 LEA Fixup Compressing EVEX instrs to VEX encoding when possible Contiguously Lay Out Funclets StackMap Liveness Analysis Live DEBUG_VALUE analysis Insert fentry calls MachineDominator Tree Construction Machine Natural Loop Construction Insert XRay ops Implement the 'patchable-function' attribute X86 Retpoline Thunks Lazy Machine Block Frequency Analysis Machine Optimization Remark Emitter MachineDominator Tree Construction Machine Natural Loop Construction X86 Assembly Printer Free MachineFunction Pass Arguments: -tti -targetlibinfo -targetpassconfig -machinemoduleinfo -tbaa -scoped-noalias -assumption-cache-tracker -collector-metadata -profile-summary-info -machine-branch-prob -pre-isel-intrinsic-lowering -atomic-expand -domtree -basicaa -verify -loops -loop-simplify -scalar-evolution -iv-users -loop-reduce -expandmemcmp -gc-lowering -shadow-stack-gc-lowering -unreachableblockelim -domtree -loops -branch-prob -block-freq -consthoist -partially-inline-libcalls -post-inline-ee-instrument -scalarize-masked-mem-intrin -expand-reductions -domtree -interleaved-access -indirectbr-expand -domtree -loops -codegenprepare -rewrite-symbols -domtree -dwarfehprepare -safe-stack -stack-protector -verify -domtree -basicaa -aa -loops -branch-prob -machinedomtree -expand-isel-pseudos -x86-domain-reassignment -tailduplication -opt-phis -slotindexes -stack-coloring -localstackalloc -dead-mi-elimination -machinedomtree -machine-loops -machine-trace-metrics -early-ifcvt -machine-combiner -x86-cmov-conversion -machinedomtree -machine-loops -machinelicm -machine-cse -machinepostdomtree -machine-block-freq -machine-sink -peephole-opt -dead-mi-elimination -lrshrink -x86-cf-opt -detect-dead-lanes -processimpdefs -unreachable-mbb-elimination -livevars -machinedomtree -machine-loops -phi-node-elimination -twoaddressinstruction -slotindexes -liveintervals -simple-register-coalescing -rename-independent-subregs -machine-scheduler -machine-block-freq -livedebugvars -livestacks -virtregmap -liveregmatrix -edge-bundles -spill-code-placement -lazy-machine-block-freq -machine-opt-remark-emitter -greedy -virtregrewriter -stack-slot-coloring -machinelicm -edge-bundles -machine-block-freq -machinepostdomtree -shrink-wrap -lazy-machine-block-freq -machine-opt-remark-emitter -prologepilog -branch-folder -tailduplication -machine-cp -postrapseudos -machinedomtree -machine-loops -post-RA-sched -gc-analysis -machine-block-freq -machinepostdomtree -block-placement -x86-execution-deps-fix -machinedomtree -machine-loops -x86-fixup-bw-insts -x86-fixup-LEAs -x86-evex-to-vex-compress -funclet-layout -stackmap-liveness -livedebugvalues -fentry-insert -machinedomtree -machine-loops -xray-instrumentation -patchable-function -lazy-machine-block-freq -machine-opt-remark-emitter -machinedomtree -machine-loops Target Transform Information Target Library Information Target Pass Configuration Machine Module Information Type-Based Alias Analysis Scoped NoAlias Alias Analysis Assumption Cache Tracker Create Garbage Collector Module Metadata Profile summary info Machine Branch Probability Analysis ModulePass Manager Pre-ISel Intrinsic Lowering FunctionPass Manager Expand Atomic instructions Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Module Verifier Natural Loop Information Canonicalize natural loops Scalar Evolution Analysis Loop Pass Manager Induction Variable Users Loop Strength Reduction Expand memcmp() to load/stores Lower Garbage Collection Instructions Shadow Stack GC Lowering Remove unreachable blocks from the CFG Dominator Tree Construction Natural Loop Information Branch Probability Analysis Block Frequency Analysis Constant Hoisting Partially inline calls to library functions Instrument function entry/exit with calls to e.g. mcount() (post inlining) Scalarize Masked Memory Intrinsics Expand reduction intrinsics Dominator Tree Construction Interleaved Access Pass Expand indirectbr instructions Dominator Tree Construction Natural Loop Information CodeGen Prepare Rewrite Symbols FunctionPass Manager Dominator Tree Construction Exception handling preparation Safe Stack instrumentation pass Insert stack protectors Module Verifier Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Branch Probability Analysis X86 DAG->DAG Instruction Selection MachineDominator Tree Construction Local Dynamic TLS Access Clean-up X86 PIC Global Base Reg Initialization Expand ISel Pseudo-instructions X86 Domain Reassignment Pass Tail Duplication Optimize machine instruction PHIs Slot index numbering Merge disjoint stack slots Local Stack Slot Allocation Remove dead machine instructions MachineDominator Tree Construction Machine Natural Loop Construction Machine Trace Metrics Early If-Conversion Machine InstCombiner X86 cmov Conversion MachineDominator Tree Construction Machine Natural Loop Construction Machine Loop Invariant Code Motion Machine Common Subexpression Elimination MachinePostDominator Tree Construction Machine Block Frequency Analysis Machine code sinking Peephole Optimizations Remove dead machine instructions Live Range Shrink X86 Fixup SetCC X86 LEA Optimize X86 Optimize Call Frame X86 WinAlloca Expander Detect Dead Lanes Process Implicit Definitions Remove unreachable machine basic blocks Live Variable Analysis MachineDominator Tree Construction Machine Natural Loop Construction Eliminate PHI nodes for register allocation Two-Address instruction pass Slot index numbering Live Interval Analysis Simple Register Coalescing Rename Disconnected Subregister Components Machine Instruction Scheduler Machine Block Frequency Analysis Debug Variable Analysis Live Stack Slot Analysis Virtual Register Map Live Register Matrix Bundle Machine CFG Edges Spill Code Placement Analysis Lazy Machine Block Frequency Analysis Machine Optimization Remark Emitter Greedy Register Allocator Virtual Register Rewriter Stack Slot Coloring Machine Loop Invariant Code Motion Bundle Machine CFG Edges X86 FP Stackifier Machine Block Frequency Analysis MachinePostDominator Tree Construction Shrink Wrapping analysis Lazy Machine Block Frequency Analysis Machine Optimization Remark Emitter Prologue/Epilogue Insertion & Frame Finalization Control Flow Optimizer Tail Duplication Machine Copy Propagation Pass Post-RA pseudo instruction expansion pass X86 pseudo instruction expansion pass MachineDominator Tree Construction Machine Natural Loop Construction Post RA top-down list latency scheduler Analyze Machine Code For Garbage Collection Machine Block Frequency Analysis MachinePostDominator Tree Construction Branch Probability Basic Block Placement X86 Execution Dependency Fix X86 vzeroupper inserter MachineDominator Tree Construction Machine Natural Loop Construction X86 Byte/Word Instruction Fixup X86 Atom pad short functions X86 LEA Fixup Compressing EVEX instrs to VEX encoding when possible Contiguously Lay Out Funclets StackMap Liveness Analysis Live DEBUG_VALUE analysis Insert fentry calls MachineDominator Tree Construction Machine Natural Loop Construction Insert XRay ops Implement the 'patchable-function' attribute X86 Retpoline Thunks Lazy Machine Block Frequency Analysis Machine Optimization Remark Emitter MachineDominator Tree Construction Machine Natural Loop Construction X86 Assembly Printer Free MachineFunction Pass Arguments: -tti -targetlibinfo -tbaa -scoped-noalias -assumption-cache-tracker -verify -ee-instrument -simplifycfg -domtree -sroa -early-cse -lower-expect Target Transform Information Target Library Information Type-Based Alias Analysis Scoped NoAlias Alias Analysis Assumption Cache Tracker FunctionPass Manager Module Verifier Instrument function entry/exit with calls to e.g. mcount() (pre inlining) Simplify the CFG Dominator Tree Construction SROA Early CSE Lower 'expect' Intrinsics Pass Arguments: -tti -targetlibinfo -tbaa -scoped-noalias -assumption-cache-tracker -profile-summary-info -forceattrs -inferattrs -ipsccp -called-value-propagation -globalopt -domtree -mem2reg -deadargelim -domtree -basicaa -aa -loops -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -instcombine -simplifycfg -basiccg -globals-aa -prune-eh -inline -functionattrs -domtree -sroa -basicaa -aa -memoryssa -early-cse-memssa -speculative-execution -domtree -basicaa -aa -lazy-value-info -jump-threading -lazy-value-info -correlated-propagation -simplifycfg -domtree -basicaa -aa -loops -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -instcombine -libcalls-shrinkwrap -loops -branch-prob -block-freq -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -pgo-memop-opt -domtree -basicaa -aa -loops -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -tailcallelim -simplifycfg -reassociate -domtree -loops -loop-simplify -lcssa-verification -lcssa -basicaa -aa -scalar-evolution -loop-rotate -licm -loop-unswitch -simplifycfg -domtree -basicaa -aa -loops -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -instcombine -loop-simplify -lcssa-verification -lcssa -scalar-evolution -indvars -loop-idiom -loop-deletion -loop-unroll -mldst-motion -aa -memdep -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -gvn -basicaa -aa -memdep -memcpyopt -sccp -domtree -demanded-bits -bdce -basicaa -aa -loops -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -instcombine -lazy-value-info -jump-threading -lazy-value-info -correlated-propagation -domtree -basicaa -aa -memdep -dse -loops -loop-simplify -lcssa-verification -lcssa -aa -scalar-evolution -licm -postdomtree -adce -simplifycfg -domtree -basicaa -aa -loops -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -instcombine -barrier -elim-avail-extern -basiccg -rpo-functionattrs -globalopt -globaldce -basiccg -globals-aa -float2int -domtree -loops -loop-simplify -lcssa-verification -lcssa -basicaa -aa -scalar-evolution -loop-rotate -loop-accesses -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -loop-distribute -branch-prob -block-freq -scalar-evolution -basicaa -aa -loop-accesses -demanded-bits -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -loop-vectorize -loop-simplify -scalar-evolution -aa -loop-accesses -loop-load-elim -basicaa -aa -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -instcombine -simplifycfg -domtree -basicaa -aa -loops -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -instcombine -loop-simplify -lcssa-verification -lcssa -scalar-evolution -loop-unroll -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -instcombine -loop-simplify -lcssa-verification -lcssa -scalar-evolution -licm -alignment-from-assumptions -strip-dead-prototypes -globaldce -constmerge -domtree -loops -branch-prob -block-freq -loop-simplify -lcssa-verification -lcssa -basicaa -aa -scalar-evolution -branch-prob -block-freq -loop-sink -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -instsimplify -div-rem-pairs -simplifycfg Target Transform Information Target Library Information Type-Based Alias Analysis Scoped NoAlias Alias Analysis Assumption Cache Tracker Profile summary info ModulePass Manager Force set function attributes Infer set function attributes Interprocedural Sparse Conditional Constant Propagation Called Value Propagation Global Variable Optimizer Unnamed pass: implement Pass::getPassName() FunctionPass Manager Dominator Tree Construction Promote Memory to Register Dead Argument Elimination FunctionPass Manager Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Combine redundant instructions Simplify the CFG CallGraph Construction Globals Alias Analysis Call Graph SCC Pass Manager Remove unused exception handling info Function Integration/Inlining Deduce function attributes FunctionPass Manager Dominator Tree Construction SROA Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Memory SSA Early CSE w/ MemorySSA Speculatively execute instructions if target has divergent branches Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Lazy Value Information Analysis Jump Threading Lazy Value Information Analysis Value Propagation Simplify the CFG Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Combine redundant instructions Conditionally eliminate dead library calls Natural Loop Information Branch Probability Analysis Block Frequency Analysis Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter PGOMemOPSize Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Tail Call Elimination Simplify the CFG Reassociate expressions Dominator Tree Construction Natural Loop Information Canonicalize natural loops LCSSA Verifier Loop-Closed SSA Form Pass Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Scalar Evolution Analysis Loop Pass Manager Rotate Loops Loop Invariant Code Motion Unswitch loops Simplify the CFG Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Combine redundant instructions Canonicalize natural loops LCSSA Verifier Loop-Closed SSA Form Pass Scalar Evolution Analysis Loop Pass Manager Induction Variable Simplification Recognize loop idioms Delete dead loops Unroll loops MergedLoadStoreMotion Function Alias Analysis Results Memory Dependence Analysis Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Global Value Numbering Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Memory Dependence Analysis MemCpy Optimization Sparse Conditional Constant Propagation Dominator Tree Construction Demanded bits analysis Bit-Tracking Dead Code Elimination Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Combine redundant instructions Lazy Value Information Analysis Jump Threading Lazy Value Information Analysis Value Propagation Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Memory Dependence Analysis Dead Store Elimination Natural Loop Information Canonicalize natural loops LCSSA Verifier Loop-Closed SSA Form Pass Function Alias Analysis Results Scalar Evolution Analysis Loop Pass Manager Loop Invariant Code Motion Post-Dominator Tree Construction Aggressive Dead Code Elimination Simplify the CFG Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Combine redundant instructions A No-Op Barrier Pass Eliminate Available Externally Globals CallGraph Construction Deduce function attributes in RPO Global Variable Optimizer Unnamed pass: implement Pass::getPassName() Dead Global Elimination CallGraph Construction Globals Alias Analysis FunctionPass Manager Float to int Dominator Tree Construction Natural Loop Information Canonicalize natural loops LCSSA Verifier Loop-Closed SSA Form Pass Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Scalar Evolution Analysis Loop Pass Manager Rotate Loops Loop Access Analysis Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Loop Distribution Branch Probability Analysis Block Frequency Analysis Scalar Evolution Analysis Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Loop Access Analysis Demanded bits analysis Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Loop Vectorization Canonicalize natural loops Scalar Evolution Analysis Function Alias Analysis Results Loop Access Analysis Loop Load Elimination Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Combine redundant instructions Simplify the CFG Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Combine redundant instructions Canonicalize natural loops LCSSA Verifier Loop-Closed SSA Form Pass Scalar Evolution Analysis Loop Pass Manager Unroll loops Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Combine redundant instructions Canonicalize natural loops LCSSA Verifier Loop-Closed SSA Form Pass Scalar Evolution Analysis Loop Pass Manager Loop Invariant Code Motion Alignment from assumptions Strip Unused Function Prototypes Dead Global Elimination Merge Duplicate Global Constants FunctionPass Manager Dominator Tree Construction Natural Loop Information Branch Probability Analysis Block Frequency Analysis Canonicalize natural loops LCSSA Verifier Loop-Closed SSA Form Pass Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Scalar Evolution Analysis Branch Probability Analysis Block Frequency Analysis Loop Pass Manager Loop Sink Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Remove redundant instructions Hoist/decompose integer division and remainder Simplify the CFG Pass Arguments: -domtree FunctionPass Manager Dominator Tree Construction Pass Arguments: -domtree FunctionPass Manager Dominator Tree Construction Pass Arguments: -assumption-cache-tracker -profile-summary-info -targetlibinfo -module-summary-analysis -write-thinlto-bitcode Assumption Cache Tracker Profile summary info Target Library Information ModulePass Manager Module Summary Analysis Unnamed pass: implement Pass::getPassName() ThinLTO Bitcode Writer Pass Arguments: -targetlibinfo -domtree -loops -branch-prob -block-freq Target Library Information FunctionPass Manager Dominator Tree Construction Natural Loop Information Branch Probability Analysis Block Frequency Analysis Pass Arguments: -tti -targetlibinfo -targetpassconfig -machinemoduleinfo -tbaa -scoped-noalias -assumption-cache-tracker -collector-metadata -profile-summary-info -machine-branch-prob -pre-isel-intrinsic-lowering -atomic-expand -domtree -basicaa -verify -loops -loop-simplify -scalar-evolution -iv-users -loop-reduce -expandmemcmp -gc-lowering -shadow-stack-gc-lowering -unreachableblockelim -domtree -loops -branch-prob -block-freq -consthoist -partially-inline-libcalls -post-inline-ee-instrument -scalarize-masked-mem-intrin -expand-reductions -domtree -interleaved-access -indirectbr-expand -domtree -loops -codegenprepare -rewrite-symbols -domtree -dwarfehprepare -safe-stack -stack-protector -verify -domtree -basicaa -aa -loops -branch-prob -machinedomtree -expand-isel-pseudos -x86-domain-reassignment -tailduplication -opt-phis -slotindexes -stack-coloring -localstackalloc -dead-mi-elimination -machinedomtree -machine-loops -machine-trace-metrics -early-ifcvt -machine-combiner -x86-cmov-conversion -machinedomtree -machine-loops -machinelicm -machine-cse -machinepostdomtree -machine-block-freq -machine-sink -peephole-opt -dead-mi-elimination -lrshrink -x86-cf-opt -detect-dead-lanes -processimpdefs -unreachable-mbb-elimination -livevars -machinedomtree -machine-loops -phi-node-elimination -twoaddressinstruction -slotindexes -liveintervals -simple-register-coalescing -rename-independent-subregs -machine-scheduler -machine-block-freq -livedebugvars -livestacks -virtregmap -liveregmatrix -edge-bundles -spill-code-placement -lazy-machine-block-freq -machine-opt-remark-emitter -greedy -virtregrewriter -stack-slot-coloring -machinelicm -edge-bundles -machine-block-freq -machinepostdomtree -shrink-wrap -lazy-machine-block-freq -machine-opt-remark-emitter -prologepilog -branch-folder -tailduplication -machine-cp -postrapseudos -machinedomtree -machine-loops -post-RA-sched -gc-analysis -machine-block-freq -machinepostdomtree -block-placement -x86-execution-deps-fix -machinedomtree -machine-loops -x86-fixup-bw-insts -x86-fixup-LEAs -x86-evex-to-vex-compress -funclet-layout -stackmap-liveness -livedebugvalues -fentry-insert -machinedomtree -machine-loops -xray-instrumentation -patchable-function -lazy-machine-block-freq -machine-opt-remark-emitter -machinedomtree -machine-loops Target Transform Information Target Library Information Target Pass Configuration Machine Module Information Type-Based Alias Analysis Scoped NoAlias Alias Analysis Assumption Cache Tracker Create Garbage Collector Module Metadata Profile summary info Machine Branch Probability Analysis ModulePass Manager Pre-ISel Intrinsic Lowering FunctionPass Manager Expand Atomic instructions Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Module Verifier Natural Loop Information Canonicalize natural loops Scalar Evolution Analysis Loop Pass Manager Induction Variable Users Loop Strength Reduction Expand memcmp() to load/stores Lower Garbage Collection Instructions Shadow Stack GC Lowering Remove unreachable blocks from the CFG Dominator Tree Construction Natural Loop Information Branch Probability Analysis Block Frequency Analysis Constant Hoisting Partially inline calls to library functions Instrument function entry/exit with calls to e.g. mcount() (post inlining) Scalarize Masked Memory Intrinsics Expand reduction intrinsics Dominator Tree Construction Interleaved Access Pass Expand indirectbr instructions Dominator Tree Construction Natural Loop Information CodeGen Prepare Rewrite Symbols FunctionPass Manager Dominator Tree Construction Exception handling preparation Safe Stack instrumentation pass Insert stack protectors Module Verifier Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Branch Probability Analysis X86 DAG->DAG Instruction Selection MachineDominator Tree Construction Local Dynamic TLS Access Clean-up X86 PIC Global Base Reg Initialization Expand ISel Pseudo-instructions X86 Domain Reassignment Pass Tail Duplication Optimize machine instruction PHIs Slot index numbering Merge disjoint stack slots Local Stack Slot Allocation Remove dead machine instructions MachineDominator Tree Construction Machine Natural Loop Construction Machine Trace Metrics Early If-Conversion Machine InstCombiner X86 cmov Conversion MachineDominator Tree Construction Machine Natural Loop Construction Machine Loop Invariant Code Motion Machine Common Subexpression Elimination MachinePostDominator Tree Construction Machine Block Frequency Analysis Machine code sinking Peephole Optimizations Remove dead machine instructions Live Range Shrink X86 Fixup SetCC X86 LEA Optimize X86 Optimize Call Frame X86 WinAlloca Expander Detect Dead Lanes Process Implicit Definitions Remove unreachable machine basic blocks Live Variable Analysis MachineDominator Tree Construction Machine Natural Loop Construction Eliminate PHI nodes for register allocation Two-Address instruction pass Slot index numbering Live Interval Analysis Simple Register Coalescing Rename Disconnected Subregister Components Machine Instruction Scheduler Machine Block Frequency Analysis Debug Variable Analysis Live Stack Slot Analysis Virtual Register Map Live Register Matrix Bundle Machine CFG Edges Spill Code Placement Analysis Lazy Machine Block Frequency Analysis Machine Optimization Remark Emitter Greedy Register Allocator Virtual Register Rewriter Stack Slot Coloring Machine Loop Invariant Code Motion Bundle Machine CFG Edges X86 FP Stackifier Machine Block Frequency Analysis MachinePostDominator Tree Construction Shrink Wrapping analysis Lazy Machine Block Frequency Analysis Machine Optimization Remark Emitter Prologue/Epilogue Insertion & Frame Finalization Control Flow Optimizer Tail Duplication Machine Copy Propagation Pass Post-RA pseudo instruction expansion pass X86 pseudo instruction expansion pass MachineDominator Tree Construction Machine Natural Loop Construction Post RA top-down list latency scheduler Analyze Machine Code For Garbage Collection Machine Block Frequency Analysis MachinePostDominator Tree Construction Branch Probability Basic Block Placement X86 Execution Dependency Fix X86 vzeroupper inserter MachineDominator Tree Construction Machine Natural Loop Construction X86 Byte/Word Instruction Fixup X86 Atom pad short functions X86 LEA Fixup Compressing EVEX instrs to VEX encoding when possible Contiguously Lay Out Funclets StackMap Liveness Analysis Live DEBUG_VALUE analysis Insert fentry calls MachineDominator Tree Construction Machine Natural Loop Construction Insert XRay ops Implement the 'patchable-function' attribute X86 Retpoline Thunks Lazy Machine Block Frequency Analysis Machine Optimization Remark Emitter MachineDominator Tree Construction Machine Natural Loop Construction X86 Assembly Printer Free MachineFunction Pass Arguments: -tti -targetlibinfo -targetpassconfig -machinemoduleinfo -tbaa -scoped-noalias -assumption-cache-tracker -collector-metadata -profile-summary-info -machine-branch-prob -pre-isel-intrinsic-lowering -atomic-expand -domtree -basicaa -verify -loops -loop-simplify -scalar-evolution -iv-users -loop-reduce -expandmemcmp -gc-lowering -shadow-stack-gc-lowering -unreachableblockelim -domtree -loops -branch-prob -block-freq -consthoist -partially-inline-libcalls -post-inline-ee-instrument -scalarize-masked-mem-intrin -expand-reductions -domtree -interleaved-access -indirectbr-expand -domtree -loops -codegenprepare -rewrite-symbols -domtree -dwarfehprepare -safe-stack -stack-protector -verify -domtree -basicaa -aa -loops -branch-prob -machinedomtree -expand-isel-pseudos -x86-domain-reassignment -tailduplication -opt-phis -slotindexes -stack-coloring -localstackalloc -dead-mi-elimination -machinedomtree -machine-loops -machine-trace-metrics -early-ifcvt -machine-combiner -x86-cmov-conversion -machinedomtree -machine-loops -machinelicm -machine-cse -machinepostdomtree -machine-block-freq -machine-sink -peephole-opt -dead-mi-elimination -lrshrink -x86-cf-opt -detect-dead-lanes -processimpdefs -unreachable-mbb-elimination -livevars -machinedomtree -machine-loops -phi-node-elimination -twoaddressinstruction -slotindexes -liveintervals -simple-register-coalescing -rename-independent-subregs -machine-scheduler -machine-block-freq -livedebugvars -livestacks -virtregmap -liveregmatrix -edge-bundles -spill-code-placement -lazy-machine-block-freq -machine-opt-remark-emitter -greedy -virtregrewriter -stack-slot-coloring -machinelicm -edge-bundles -machine-block-freq -machinepostdomtree -shrink-wrap -lazy-machine-block-freq -machine-opt-remark-emitter -prologepilog -branch-folder -tailduplication -machine-cp -postrapseudos -machinedomtree -machine-loops -post-RA-sched -gc-analysis -machine-block-freq -machinepostdomtree -block-placement -x86-execution-deps-fix -machinedomtree -machine-loops -x86-fixup-bw-insts -x86-fixup-LEAs -x86-evex-to-vex-compress -funclet-layout -stackmap-liveness -livedebugvalues -fentry-insert -machinedomtree -machine-loops -xray-instrumentation -patchable-function -lazy-machine-block-freq -machine-opt-remark-emitter -machinedomtree -machine-loops Target Transform Information Target Library Information Target Pass Configuration Machine Module Information Type-Based Alias Analysis Scoped NoAlias Alias Analysis Assumption Cache Tracker Create Garbage Collector Module Metadata Profile summary info Machine Branch Probability Analysis ModulePass Manager Pre-ISel Intrinsic Lowering FunctionPass Manager Expand Atomic instructions Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Module Verifier Natural Loop Information Canonicalize natural loops Scalar Evolution Analysis Loop Pass Manager Induction Variable Users Loop Strength Reduction Expand memcmp() to load/stores Lower Garbage Collection Instructions Shadow Stack GC Lowering Remove unreachable blocks from the CFG Dominator Tree Construction Natural Loop Information Branch Probability Analysis Block Frequency Analysis Constant Hoisting Partially inline calls to library functions Instrument function entry/exit with calls to e.g. mcount() (post inlining) Scalarize Masked Memory Intrinsics Expand reduction intrinsics Dominator Tree Construction Interleaved Access Pass Expand indirectbr instructions Dominator Tree Construction Natural Loop Information CodeGen Prepare Rewrite Symbols FunctionPass Manager Dominator Tree Construction Exception handling preparation Safe Stack instrumentation pass Insert stack protectors Module Verifier Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Branch Probability Analysis X86 DAG->DAG Instruction Selection MachineDominator Tree Construction Local Dynamic TLS Access Clean-up X86 PIC Global Base Reg Initialization Expand ISel Pseudo-instructions X86 Domain Reassignment Pass Tail Duplication Optimize machine instruction PHIs Slot index numbering Merge disjoint stack slots Local Stack Slot Allocation Remove dead machine instructions MachineDominator Tree Construction Machine Natural Loop Construction Machine Trace Metrics Early If-Conversion Machine InstCombiner X86 cmov Conversion MachineDominator Tree Construction Machine Natural Loop Construction Machine Loop Invariant Code Motion Machine Common Subexpression Elimination MachinePostDominator Tree Construction Machine Block Frequency Analysis Machine code sinking Peephole Optimizations Remove dead machine instructions Live Range Shrink X86 Fixup SetCC X86 LEA Optimize X86 Optimize Call Frame X86 WinAlloca Expander Detect Dead Lanes Process Implicit Definitions Remove unreachable machine basic blocks Live Variable Analysis MachineDominator Tree Construction Machine Natural Loop Construction Eliminate PHI nodes for register allocation Two-Address instruction pass Slot index numbering Live Interval Analysis Simple Register Coalescing Rename Disconnected Subregister Components Machine Instruction Scheduler Machine Block Frequency Analysis Debug Variable Analysis Live Stack Slot Analysis Virtual Register Map Live Register Matrix Bundle Machine CFG Edges Spill Code Placement Analysis Lazy Machine Block Frequency Analysis Machine Optimization Remark Emitter Greedy Register Allocator Virtual Register Rewriter Stack Slot Coloring Machine Loop Invariant Code Motion Bundle Machine CFG Edges X86 FP Stackifier Machine Block Frequency Analysis MachinePostDominator Tree Construction Shrink Wrapping analysis Lazy Machine Block Frequency Analysis Machine Optimization Remark Emitter Prologue/Epilogue Insertion & Frame Finalization Control Flow Optimizer Tail Duplication Machine Copy Propagation Pass Post-RA pseudo instruction expansion pass X86 pseudo instruction expansion pass MachineDominator Tree Construction Machine Natural Loop Construction Post RA top-down list latency scheduler Analyze Machine Code For Garbage Collection Machine Block Frequency Analysis MachinePostDominator Tree Construction Branch Probability Basic Block Placement X86 Execution Dependency Fix X86 vzeroupper inserter MachineDominator Tree Construction Machine Natural Loop Construction X86 Byte/Word Instruction Fixup X86 Atom pad short functions X86 LEA Fixup Compressing EVEX instrs to VEX encoding when possible Contiguously Lay Out Funclets StackMap Liveness Analysis Live DEBUG_VALUE analysis Insert fentry calls MachineDominator Tree Construction Machine Natural Loop Construction Insert XRay ops Implement the 'patchable-function' attribute X86 Retpoline Thunks Lazy Machine Block Frequency Analysis Machine Optimization Remark Emitter MachineDominator Tree Construction Machine Natural Loop Construction X86 Assembly Printer Free MachineFunction Compiling encoding_rs v0.7.2 (file:///opt/Projects/encoding_rs) Pass Arguments: -tti -targetlibinfo -targetpassconfig -machinemoduleinfo -tbaa -scoped-noalias -assumption-cache-tracker -collector-metadata -profile-summary-info -machine-branch-prob -pre-isel-intrinsic-lowering -atomic-expand -domtree -basicaa -verify -loops -loop-simplify -scalar-evolution -iv-users -loop-reduce -expandmemcmp -gc-lowering -shadow-stack-gc-lowering -unreachableblockelim -domtree -loops -branch-prob -block-freq -consthoist -partially-inline-libcalls -post-inline-ee-instrument -scalarize-masked-mem-intrin -expand-reductions -domtree -interleaved-access -indirectbr-expand -domtree -loops -codegenprepare -rewrite-symbols -domtree -dwarfehprepare -safe-stack -stack-protector -verify -domtree -basicaa -aa -loops -branch-prob -machinedomtree -expand-isel-pseudos -x86-domain-reassignment -tailduplication -opt-phis -slotindexes -stack-coloring -localstackalloc -dead-mi-elimination -machinedomtree -machine-loops -machine-trace-metrics -early-ifcvt -machine-combiner -x86-cmov-conversion -machinedomtree -machine-loops -machinelicm -machine-cse -machinepostdomtree -machine-block-freq -machine-sink -peephole-opt -dead-mi-elimination -lrshrink -x86-cf-opt -detect-dead-lanes -processimpdefs -unreachable-mbb-elimination -livevars -machinedomtree -machine-loops -phi-node-elimination -twoaddressinstruction -slotindexes -liveintervals -simple-register-coalescing -rename-independent-subregs -machine-scheduler -machine-block-freq -livedebugvars -livestacks -virtregmap -liveregmatrix -edge-bundles -spill-code-placement -lazy-machine-block-freq -machine-opt-remark-emitter -greedy -virtregrewriter -stack-slot-coloring -machinelicm -edge-bundles -machine-block-freq -machinepostdomtree -shrink-wrap -lazy-machine-block-freq -machine-opt-remark-emitter -prologepilog -branch-folder -tailduplication -machine-cp -postrapseudos -machinedomtree -machine-loops -post-RA-sched -gc-analysis -machine-block-freq -machinepostdomtree -block-placement -x86-execution-deps-fix -machinedomtree -machine-loops -x86-fixup-bw-insts -x86-fixup-LEAs -x86-evex-to-vex-compress -funclet-layout -stackmap-liveness -livedebugvalues -fentry-insert -machinedomtree -machine-loops -xray-instrumentation -patchable-function -lazy-machine-block-freq -machine-opt-remark-emitter -machinedomtree -machine-loops Target Transform Information Target Library Information Target Pass Configuration Machine Module Information Type-Based Alias Analysis Scoped NoAlias Alias Analysis Assumption Cache Tracker Create Garbage Collector Module Metadata Profile summary info Machine Branch Probability Analysis ModulePass Manager Pre-ISel Intrinsic Lowering FunctionPass Manager Expand Atomic instructions Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Module Verifier Natural Loop Information Canonicalize natural loops Scalar Evolution Analysis Loop Pass Manager Induction Variable Users Loop Strength Reduction Expand memcmp() to load/stores Lower Garbage Collection Instructions Shadow Stack GC Lowering Remove unreachable blocks from the CFG Dominator Tree Construction Natural Loop Information Branch Probability Analysis Block Frequency Analysis Constant Hoisting Partially inline calls to library functions Instrument function entry/exit with calls to e.g. mcount() (post inlining) Scalarize Masked Memory Intrinsics Expand reduction intrinsics Dominator Tree Construction Interleaved Access Pass Expand indirectbr instructions Dominator Tree Construction Natural Loop Information CodeGen Prepare Rewrite Symbols FunctionPass Manager Dominator Tree Construction Exception handling preparation Safe Stack instrumentation pass Insert stack protectors Module Verifier Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Branch Probability Analysis X86 DAG->DAG Instruction Selection MachineDominator Tree Construction Local Dynamic TLS Access Clean-up X86 PIC Global Base Reg Initialization Expand ISel Pseudo-instructions X86 Domain Reassignment Pass Tail Duplication Optimize machine instruction PHIs Slot index numbering Merge disjoint stack slots Local Stack Slot Allocation Remove dead machine instructions MachineDominator Tree Construction Machine Natural Loop Construction Machine Trace Metrics Early If-Conversion Machine InstCombiner X86 cmov Conversion MachineDominator Tree Construction Machine Natural Loop Construction Machine Loop Invariant Code Motion Machine Common Subexpression Elimination MachinePostDominator Tree Construction Machine Block Frequency Analysis Machine code sinking Peephole Optimizations Remove dead machine instructions Live Range Shrink X86 Fixup SetCC X86 LEA Optimize X86 Optimize Call Frame X86 WinAlloca Expander Detect Dead Lanes Process Implicit Definitions Remove unreachable machine basic blocks Live Variable Analysis MachineDominator Tree Construction Machine Natural Loop Construction Eliminate PHI nodes for register allocation Two-Address instruction pass Slot index numbering Live Interval Analysis Simple Register Coalescing Rename Disconnected Subregister Components Machine Instruction Scheduler Machine Block Frequency Analysis Debug Variable Analysis Live Stack Slot Analysis Virtual Register Map Live Register Matrix Bundle Machine CFG Edges Spill Code Placement Analysis Lazy Machine Block Frequency Analysis Machine Optimization Remark Emitter Greedy Register Allocator Virtual Register Rewriter Stack Slot Coloring Machine Loop Invariant Code Motion Bundle Machine CFG Edges X86 FP Stackifier Machine Block Frequency Analysis MachinePostDominator Tree Construction Shrink Wrapping analysis Lazy Machine Block Frequency Analysis Machine Optimization Remark Emitter Prologue/Epilogue Insertion & Frame Finalization Control Flow Optimizer Tail Duplication Machine Copy Propagation Pass Post-RA pseudo instruction expansion pass X86 pseudo instruction expansion pass MachineDominator Tree Construction Machine Natural Loop Construction Post RA top-down list latency scheduler Analyze Machine Code For Garbage Collection Machine Block Frequency Analysis MachinePostDominator Tree Construction Branch Probability Basic Block Placement X86 Execution Dependency Fix X86 vzeroupper inserter MachineDominator Tree Construction Machine Natural Loop Construction X86 Byte/Word Instruction Fixup X86 Atom pad short functions X86 LEA Fixup Compressing EVEX instrs to VEX encoding when possible Contiguously Lay Out Funclets StackMap Liveness Analysis Live DEBUG_VALUE analysis Insert fentry calls MachineDominator Tree Construction Machine Natural Loop Construction Insert XRay ops Implement the 'patchable-function' attribute X86 Retpoline Thunks Lazy Machine Block Frequency Analysis Machine Optimization Remark Emitter MachineDominator Tree Construction Machine Natural Loop Construction X86 Assembly Printer Free MachineFunction Pass Arguments: -tti -targetlibinfo -tbaa -scoped-noalias -assumption-cache-tracker -verify -ee-instrument -simplifycfg -domtree -sroa -early-cse -lower-expect Target Transform Information Target Library Information Type-Based Alias Analysis Scoped NoAlias Alias Analysis Assumption Cache Tracker FunctionPass Manager Module Verifier Instrument function entry/exit with calls to e.g. mcount() (pre inlining) Simplify the CFG Dominator Tree Construction SROA Early CSE Lower 'expect' Intrinsics Pass Arguments: -tti -targetlibinfo -tbaa -scoped-noalias -assumption-cache-tracker -profile-summary-info -forceattrs -inferattrs -ipsccp -called-value-propagation -globalopt -domtree -mem2reg -deadargelim -domtree -basicaa -aa -loops -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -instcombine -simplifycfg -basiccg -globals-aa -prune-eh -inline -functionattrs -domtree -sroa -basicaa -aa -memoryssa -early-cse-memssa -speculative-execution -domtree -basicaa -aa -lazy-value-info -jump-threading -lazy-value-info -correlated-propagation -simplifycfg -domtree -basicaa -aa -loops -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -instcombine -libcalls-shrinkwrap -loops -branch-prob -block-freq -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -pgo-memop-opt -domtree -basicaa -aa -loops -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -tailcallelim -simplifycfg -reassociate -domtree -loops -loop-simplify -lcssa-verification -lcssa -basicaa -aa -scalar-evolution -loop-rotate -licm -loop-unswitch -simplifycfg -domtree -basicaa -aa -loops -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -instcombine -loop-simplify -lcssa-verification -lcssa -scalar-evolution -indvars -loop-idiom -loop-deletion -loop-unroll -mldst-motion -aa -memdep -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -gvn -basicaa -aa -memdep -memcpyopt -sccp -domtree -demanded-bits -bdce -basicaa -aa -loops -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -instcombine -lazy-value-info -jump-threading -lazy-value-info -correlated-propagation -domtree -basicaa -aa -memdep -dse -loops -loop-simplify -lcssa-verification -lcssa -aa -scalar-evolution -licm -postdomtree -adce -simplifycfg -domtree -basicaa -aa -loops -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -instcombine -barrier -elim-avail-extern -basiccg -rpo-functionattrs -globalopt -globaldce -basiccg -globals-aa -float2int -domtree -loops -loop-simplify -lcssa-verification -lcssa -basicaa -aa -scalar-evolution -loop-rotate -loop-accesses -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -loop-distribute -branch-prob -block-freq -scalar-evolution -basicaa -aa -loop-accesses -demanded-bits -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -loop-vectorize -loop-simplify -scalar-evolution -aa -loop-accesses -loop-load-elim -basicaa -aa -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -instcombine -simplifycfg -domtree -basicaa -aa -loops -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -instcombine -loop-simplify -lcssa-verification -lcssa -scalar-evolution -loop-unroll -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -instcombine -loop-simplify -lcssa-verification -lcssa -scalar-evolution -licm -alignment-from-assumptions -strip-dead-prototypes -globaldce -constmerge -domtree -loops -branch-prob -block-freq -loop-simplify -lcssa-verification -lcssa -basicaa -aa -scalar-evolution -branch-prob -block-freq -loop-sink -lazy-branch-prob -lazy-block-freq -opt-remark-emitter -instsimplify -div-rem-pairs -simplifycfg Target Transform Information Target Library Information Type-Based Alias Analysis Scoped NoAlias Alias Analysis Assumption Cache Tracker Profile summary info ModulePass Manager Force set function attributes Infer set function attributes Interprocedural Sparse Conditional Constant Propagation Called Value Propagation Global Variable Optimizer Unnamed pass: implement Pass::getPassName() FunctionPass Manager Dominator Tree Construction Promote Memory to Register Dead Argument Elimination FunctionPass Manager Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Combine redundant instructions Simplify the CFG CallGraph Construction Globals Alias Analysis Call Graph SCC Pass Manager Remove unused exception handling info Function Integration/Inlining Deduce function attributes FunctionPass Manager Dominator Tree Construction SROA Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Memory SSA Early CSE w/ MemorySSA Speculatively execute instructions if target has divergent branches Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Lazy Value Information Analysis Jump Threading Lazy Value Information Analysis Value Propagation Simplify the CFG Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Combine redundant instructions Conditionally eliminate dead library calls Natural Loop Information Branch Probability Analysis Block Frequency Analysis Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter PGOMemOPSize Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Tail Call Elimination Simplify the CFG Reassociate expressions Dominator Tree Construction Natural Loop Information Canonicalize natural loops LCSSA Verifier Loop-Closed SSA Form Pass Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Scalar Evolution Analysis Loop Pass Manager Rotate Loops Loop Invariant Code Motion Unswitch loops Simplify the CFG Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Combine redundant instructions Canonicalize natural loops LCSSA Verifier Loop-Closed SSA Form Pass Scalar Evolution Analysis Loop Pass Manager Induction Variable Simplification Recognize loop idioms Delete dead loops Unroll loops MergedLoadStoreMotion Function Alias Analysis Results Memory Dependence Analysis Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Global Value Numbering Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Memory Dependence Analysis MemCpy Optimization Sparse Conditional Constant Propagation Dominator Tree Construction Demanded bits analysis Bit-Tracking Dead Code Elimination Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Combine redundant instructions Lazy Value Information Analysis Jump Threading Lazy Value Information Analysis Value Propagation Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Memory Dependence Analysis Dead Store Elimination Natural Loop Information Canonicalize natural loops LCSSA Verifier Loop-Closed SSA Form Pass Function Alias Analysis Results Scalar Evolution Analysis Loop Pass Manager Loop Invariant Code Motion Post-Dominator Tree Construction Aggressive Dead Code Elimination Simplify the CFG Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Combine redundant instructions A No-Op Barrier Pass Eliminate Available Externally Globals CallGraph Construction Deduce function attributes in RPO Global Variable Optimizer Unnamed pass: implement Pass::getPassName() Dead Global Elimination CallGraph Construction Globals Alias Analysis FunctionPass Manager Float to int Dominator Tree Construction Natural Loop Information Canonicalize natural loops LCSSA Verifier Loop-Closed SSA Form Pass Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Scalar Evolution Analysis Loop Pass Manager Rotate Loops Loop Access Analysis Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Loop Distribution Branch Probability Analysis Block Frequency Analysis Scalar Evolution Analysis Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Loop Access Analysis Demanded bits analysis Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Loop Vectorization Canonicalize natural loops Scalar Evolution Analysis Function Alias Analysis Results Loop Access Analysis Loop Load Elimination Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Combine redundant instructions Simplify the CFG Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Combine redundant instructions Canonicalize natural loops LCSSA Verifier Loop-Closed SSA Form Pass Scalar Evolution Analysis Loop Pass Manager Unroll loops Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Combine redundant instructions Canonicalize natural loops LCSSA Verifier Loop-Closed SSA Form Pass Scalar Evolution Analysis Loop Pass Manager Loop Invariant Code Motion Alignment from assumptions Strip Unused Function Prototypes Dead Global Elimination Merge Duplicate Global Constants FunctionPass Manager Dominator Tree Construction Natural Loop Information Branch Probability Analysis Block Frequency Analysis Canonicalize natural loops LCSSA Verifier Loop-Closed SSA Form Pass Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Scalar Evolution Analysis Branch Probability Analysis Block Frequency Analysis Loop Pass Manager Loop Sink Lazy Branch Probability Analysis Lazy Block Frequency Analysis Optimization Remark Emitter Remove redundant instructions Hoist/decompose integer division and remainder Simplify the CFG Pass Arguments: -domtree FunctionPass Manager Dominator Tree Construction Pass Arguments: -domtree FunctionPass Manager Dominator Tree Construction Pass Arguments: -assumption-cache-tracker -profile-summary-info -targetlibinfo -module-summary-analysis -write-thinlto-bitcode Assumption Cache Tracker Profile summary info Target Library Information ModulePass Manager Module Summary Analysis Unnamed pass: implement Pass::getPassName() ThinLTO Bitcode Writer Pass Arguments: -targetlibinfo -domtree -loops -branch-prob -block-freq Target Library Information FunctionPass Manager Dominator Tree Construction Natural Loop Information Branch Probability Analysis Block Frequency Analysis Pass Arguments: -tti -targetlibinfo -targetpassconfig -machinemoduleinfo -tbaa -scoped-noalias -assumption-cache-tracker -collector-metadata -profile-summary-info -machine-branch-prob -pre-isel-intrinsic-lowering -atomic-expand -domtree -basicaa -verify -loops -loop-simplify -scalar-evolution -iv-users -loop-reduce -expandmemcmp -gc-lowering -shadow-stack-gc-lowering -unreachableblockelim -domtree -loops -branch-prob -block-freq -consthoist -partially-inline-libcalls -post-inline-ee-instrument -scalarize-masked-mem-intrin -expand-reductions -domtree -interleaved-access -indirectbr-expand -domtree -loops -codegenprepare -rewrite-symbols -domtree -dwarfehprepare -safe-stack -stack-protector -verify -domtree -basicaa -aa -loops -branch-prob -machinedomtree -expand-isel-pseudos -x86-domain-reassignment -tailduplication -opt-phis -slotindexes -stack-coloring -localstackalloc -dead-mi-elimination -machinedomtree -machine-loops -machine-trace-metrics -early-ifcvt -machine-combiner -x86-cmov-conversion -machinedomtree -machine-loops -machinelicm -machine-cse -machinepostdomtree -machine-block-freq -machine-sink -peephole-opt -dead-mi-elimination -lrshrink -x86-cf-opt -detect-dead-lanes -processimpdefs -unreachable-mbb-elimination -livevars -machinedomtree -machine-loops -phi-node-elimination -twoaddressinstruction -slotindexes -liveintervals -simple-register-coalescing -rename-independent-subregs -machine-scheduler -machine-block-freq -livedebugvars -livestacks -virtregmap -liveregmatrix -edge-bundles -spill-code-placement -lazy-machine-block-freq -machine-opt-remark-emitter -greedy -virtregrewriter -stack-slot-coloring -machinelicm -edge-bundles -machine-block-freq -machinepostdomtree -shrink-wrap -lazy-machine-block-freq -machine-opt-remark-emitter -prologepilog -branch-folder -tailduplication -machine-cp -postrapseudos -machinedomtree -machine-loops -post-RA-sched -gc-analysis -machine-block-freq -machinepostdomtree -block-placement -x86-execution-deps-fix -machinedomtree -machine-loops -x86-fixup-bw-insts -x86-fixup-LEAs -x86-evex-to-vex-compress -funclet-layout -stackmap-liveness -livedebugvalues -fentry-insert -machinedomtree -machine-loops -xray-instrumentation -patchable-function -lazy-machine-block-freq -machine-opt-remark-emitter -machinedomtree -machine-loops Target Transform Information Target Library Information Target Pass Configuration Machine Module Information Type-Based Alias Analysis Scoped NoAlias Alias Analysis Assumption Cache Tracker Create Garbage Collector Module Metadata Profile summary info Machine Branch Probability Analysis ModulePass Manager Pre-ISel Intrinsic Lowering FunctionPass Manager Expand Atomic instructions Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Module Verifier Natural Loop Information Canonicalize natural loops Scalar Evolution Analysis Loop Pass Manager Induction Variable Users Loop Strength Reduction Expand memcmp() to load/stores Lower Garbage Collection Instructions Shadow Stack GC Lowering Remove unreachable blocks from the CFG Dominator Tree Construction Natural Loop Information Branch Probability Analysis Block Frequency Analysis Constant Hoisting Partially inline calls to library functions Instrument function entry/exit with calls to e.g. mcount() (post inlining) Scalarize Masked Memory Intrinsics Expand reduction intrinsics Dominator Tree Construction Interleaved Access Pass Expand indirectbr instructions Dominator Tree Construction Natural Loop Information CodeGen Prepare Rewrite Symbols FunctionPass Manager Dominator Tree Construction Exception handling preparation Safe Stack instrumentation pass Insert stack protectors Module Verifier Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Branch Probability Analysis X86 DAG->DAG Instruction Selection MachineDominator Tree Construction Local Dynamic TLS Access Clean-up X86 PIC Global Base Reg Initialization Expand ISel Pseudo-instructions X86 Domain Reassignment Pass Tail Duplication Optimize machine instruction PHIs Slot index numbering Merge disjoint stack slots Local Stack Slot Allocation Remove dead machine instructions MachineDominator Tree Construction Machine Natural Loop Construction Machine Trace Metrics Early If-Conversion Machine InstCombiner X86 cmov Conversion MachineDominator Tree Construction Machine Natural Loop Construction Machine Loop Invariant Code Motion Machine Common Subexpression Elimination MachinePostDominator Tree Construction Machine Block Frequency Analysis Machine code sinking Peephole Optimizations Remove dead machine instructions Live Range Shrink X86 Fixup SetCC X86 LEA Optimize X86 Optimize Call Frame X86 WinAlloca Expander Detect Dead Lanes Process Implicit Definitions Remove unreachable machine basic blocks Live Variable Analysis MachineDominator Tree Construction Machine Natural Loop Construction Eliminate PHI nodes for register allocation Two-Address instruction pass Slot index numbering Live Interval Analysis Simple Register Coalescing Rename Disconnected Subregister Components Machine Instruction Scheduler Machine Block Frequency Analysis Debug Variable Analysis Live Stack Slot Analysis Virtual Register Map Live Register Matrix Bundle Machine CFG Edges Spill Code Placement Analysis Lazy Machine Block Frequency Analysis Machine Optimization Remark Emitter Greedy Register Allocator Virtual Register Rewriter Stack Slot Coloring Machine Loop Invariant Code Motion Bundle Machine CFG Edges X86 FP Stackifier Machine Block Frequency Analysis MachinePostDominator Tree Construction Shrink Wrapping analysis Lazy Machine Block Frequency Analysis Machine Optimization Remark Emitter Prologue/Epilogue Insertion & Frame Finalization Control Flow Optimizer Tail Duplication Machine Copy Propagation Pass Post-RA pseudo instruction expansion pass X86 pseudo instruction expansion pass MachineDominator Tree Construction Machine Natural Loop Construction Post RA top-down list latency scheduler Analyze Machine Code For Garbage Collection Machine Block Frequency Analysis MachinePostDominator Tree Construction Branch Probability Basic Block Placement X86 Execution Dependency Fix X86 vzeroupper inserter MachineDominator Tree Construction Machine Natural Loop Construction X86 Byte/Word Instruction Fixup X86 Atom pad short functions X86 LEA Fixup Compressing EVEX instrs to VEX encoding when possible Contiguously Lay Out Funclets StackMap Liveness Analysis Live DEBUG_VALUE analysis Insert fentry calls MachineDominator Tree Construction Machine Natural Loop Construction Insert XRay ops Implement the 'patchable-function' attribute X86 Retpoline Thunks Lazy Machine Block Frequency Analysis Machine Optimization Remark Emitter MachineDominator Tree Construction Machine Natural Loop Construction X86 Assembly Printer Free MachineFunction Pass Arguments: -tti -targetlibinfo -targetpassconfig -machinemoduleinfo -tbaa -scoped-noalias -assumption-cache-tracker -collector-metadata -profile-summary-info -machine-branch-prob -pre-isel-intrinsic-lowering -atomic-expand -domtree -basicaa -verify -loops -loop-simplify -scalar-evolution -iv-users -loop-reduce -expandmemcmp -gc-lowering -shadow-stack-gc-lowering -unreachableblockelim -domtree -loops -branch-prob -block-freq -consthoist -partially-inline-libcalls -post-inline-ee-instrument -scalarize-masked-mem-intrin -expand-reductions -domtree -interleaved-access -indirectbr-expand -domtree -loops -codegenprepare -rewrite-symbols -domtree -dwarfehprepare -safe-stack -stack-protector -verify -domtree -basicaa -aa -loops -branch-prob -machinedomtree -expand-isel-pseudos -x86-domain-reassignment -tailduplication -opt-phis -slotindexes -stack-coloring -localstackalloc -dead-mi-elimination -machinedomtree -machine-loops -machine-trace-metrics -early-ifcvt -machine-combiner -x86-cmov-conversion -machinedomtree -machine-loops -machinelicm -machine-cse -machinepostdomtree -machine-block-freq -machine-sink -peephole-opt -dead-mi-elimination -lrshrink -x86-cf-opt -detect-dead-lanes -processimpdefs -unreachable-mbb-elimination -livevars -machinedomtree -machine-loops -phi-node-elimination -twoaddressinstruction -slotindexes -liveintervals -simple-register-coalescing -rename-independent-subregs -machine-scheduler -machine-block-freq -livedebugvars -livestacks -virtregmap -liveregmatrix -edge-bundles -spill-code-placement -lazy-machine-block-freq -machine-opt-remark-emitter -greedy -virtregrewriter -stack-slot-coloring -machinelicm -edge-bundles -machine-block-freq -machinepostdomtree -shrink-wrap -lazy-machine-block-freq -machine-opt-remark-emitter -prologepilog -branch-folder -tailduplication -machine-cp -postrapseudos -machinedomtree -machine-loops -post-RA-sched -gc-analysis -machine-block-freq -machinepostdomtree -block-placement -x86-execution-deps-fix -machinedomtree -machine-loops -x86-fixup-bw-insts -x86-fixup-LEAs -x86-evex-to-vex-compress -funclet-layout -stackmap-liveness -livedebugvalues -fentry-insert -machinedomtree -machine-loops -xray-instrumentation -patchable-function -lazy-machine-block-freq -machine-opt-remark-emitter -machinedomtree -machine-loops Target Transform Information Target Library Information Target Pass Configuration Machine Module Information Type-Based Alias Analysis Scoped NoAlias Alias Analysis Assumption Cache Tracker Create Garbage Collector Module Metadata Profile summary info Machine Branch Probability Analysis ModulePass Manager Pre-ISel Intrinsic Lowering FunctionPass Manager Expand Atomic instructions Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Module Verifier Natural Loop Information Canonicalize natural loops Scalar Evolution Analysis Loop Pass Manager Induction Variable Users Loop Strength Reduction Expand memcmp() to load/stores Lower Garbage Collection Instructions Shadow Stack GC Lowering Remove unreachable blocks from the CFG Dominator Tree Construction Natural Loop Information Branch Probability Analysis Block Frequency Analysis Constant Hoisting Partially inline calls to library functions Instrument function entry/exit with calls to e.g. mcount() (post inlining) Scalarize Masked Memory Intrinsics Expand reduction intrinsics Dominator Tree Construction Interleaved Access Pass Expand indirectbr instructions Dominator Tree Construction Natural Loop Information CodeGen Prepare Rewrite Symbols FunctionPass Manager Dominator Tree Construction Exception handling preparation Safe Stack instrumentation pass Insert stack protectors Module Verifier Dominator Tree Construction Basic Alias Analysis (stateless AA impl) Function Alias Analysis Results Natural Loop Information Branch Probability Analysis X86 DAG->DAG Instruction Selection MachineDominator Tree Construction Local Dynamic TLS Access Clean-up X86 PIC Global Base Reg Initialization Expand ISel Pseudo-instructions X86 Domain Reassignment Pass Tail Duplication Optimize machine instruction PHIs Slot index numbering Merge disjoint stack slots Local Stack Slot Allocation Remove dead machine instructions MachineDominator Tree Construction Machine Natural Loop Construction Machine Trace Metrics Early If-Conversion Machine InstCombiner X86 cmov Conversion MachineDominator Tree Construction Machine Natural Loop Construction Machine Loop Invariant Code Motion Machine Common Subexpression Elimination MachinePostDominator Tree Construction Machine Block Frequency Analysis Machine code sinking Peephole Optimizations Remove dead machine instructions Live Range Shrink X86 Fixup SetCC X86 LEA Optimize X86 Optimize Call Frame X86 WinAlloca Expander Detect Dead Lanes Process Implicit Definitions Remove unreachable machine basic blocks Live Variable Analysis MachineDominator Tree Construction Machine Natural Loop Construction Eliminate PHI nodes for register allocation Two-Address instruction pass Slot index numbering Live Interval Analysis Simple Register Coalescing Rename Disconnected Subregister Components Machine Instruction Scheduler Machine Block Frequency Analysis Debug Variable Analysis Live Stack Slot Analysis Virtual Register Map Live Register Matrix Bundle Machine CFG Edges Spill Code Placement Analysis Lazy Machine Block Frequency Analysis Machine Optimization Remark Emitter Greedy Register Allocator Virtual Register Rewriter Stack Slot Coloring Machine Loop Invariant Code Motion Bundle Machine CFG Edges X86 FP Stackifier Machine Block Frequency Analysis MachinePostDominator Tree Construction Shrink Wrapping analysis Lazy Machine Block Frequency Analysis Machine Optimization Remark Emitter Prologue/Epilogue Insertion & Frame Finalization Control Flow Optimizer Tail Duplication Machine Copy Propagation Pass Post-RA pseudo instruction expansion pass X86 pseudo instruction expansion pass MachineDominator Tree Construction Machine Natural Loop Construction Post RA top-down list latency scheduler Analyze Machine Code For Garbage Collection Machine Block Frequency Analysis MachinePostDominator Tree Construction Branch Probability Basic Block Placement X86 Execution Dependency Fix X86 vzeroupper inserter MachineDominator Tree Construction Machine Natural Loop Construction X86 Byte/Word Instruction Fixup X86 Atom pad short functions X86 LEA Fixup Compressing EVEX instrs to VEX encoding when possible Contiguously Lay Out Funclets StackMap Liveness Analysis Live DEBUG_VALUE analysis Insert fentry calls MachineDominator Tree Construction Machine Natural Loop Construction Insert XRay ops Implement the 'patchable-function' attribute X86 Retpoline Thunks Lazy Machine Block Frequency Analysis Machine Optimization Remark Emitter MachineDominator Tree Construction Machine Natural Loop Construction X86 Assembly Printer Free MachineFunction Finished release [optimized] target(s) in 9.85 secs