add_llvm_component_library(LLVMTransformUtils AddDiscriminators.cpp AMDGPUEmitPrintf.cpp ASanStackFrameLayout.cpp AssumeBundleBuilder.cpp BasicBlockUtils.cpp BreakCriticalEdges.cpp BuildLibCalls.cpp BypassSlowDivision.cpp CallPromotionUtils.cpp CallGraphUpdater.cpp CanonicalizeAliases.cpp CanonicalizeFreezeInLoops.cpp CloneFunction.cpp CloneModule.cpp CodeExtractor.cpp CodeLayout.cpp CodeMoverUtils.cpp CtorUtils.cpp CountVisits.cpp Debugify.cpp DemoteRegToStack.cpp DXILUpgrade.cpp EntryExitInstrumenter.cpp EscapeEnumerator.cpp Evaluator.cpp FixIrreducible.cpp FlattenCFG.cpp FunctionComparator.cpp FunctionImportUtils.cpp GlobalStatus.cpp GuardUtils.cpp HelloWorld.cpp InlineFunction.cpp InjectTLIMappings.cpp InstructionNamer.cpp IntegerDivision.cpp LCSSA.cpp LibCallsShrinkWrap.cpp Local.cpp LoopConstrainer.cpp LoopPeel.cpp LoopRotationUtils.cpp LoopSimplify.cpp LoopUnroll.cpp LoopUnrollAndJam.cpp LoopUnrollRuntime.cpp LoopUtils.cpp LoopVersioning.cpp LowerAtomic.cpp LowerGlobalDtors.cpp LowerIFunc.cpp LowerInvoke.cpp LowerMemIntrinsics.cpp LowerSwitch.cpp MatrixUtils.cpp MemoryOpRemark.cpp MemoryTaggingSupport.cpp Mem2Reg.cpp MetaRenamer.cpp MisExpect.cpp ModuleUtils.cpp MoveAutoInit.cpp NameAnonGlobals.cpp PredicateInfo.cpp PromoteMemoryToRegister.cpp RelLookupTableConverter.cpp ScalarEvolutionExpander.cpp SCCPSolver.cpp StripGCRelocates.cpp SSAUpdater.cpp SSAUpdaterBulk.cpp SampleProfileInference.cpp SampleProfileLoaderBaseUtil.cpp SanitizerStats.cpp SimplifyCFG.cpp SimplifyIndVar.cpp SimplifyLibCalls.cpp SizeOpts.cpp SplitModule.cpp StripNonLineTableDebugInfo.cpp SymbolRewriter.cpp UnifyFunctionExitNodes.cpp UnifyLoopExits.cpp Utils.cpp ValueMapper.cpp VNCoercion.cpp ADDITIONAL_HEADER_DIRS ${LLVM_MAIN_INCLUDE_DIR}/llvm/Transforms ${LLVM_MAIN_INCLUDE_DIR}/llvm/Transforms/Utils DEPENDS intrinsics_gen LINK_COMPONENTS Analysis Core Support TargetParser )