blob: 5a060b30808b92094383570831ddd71fd63ae9e8 [file] [log] [blame]
Jeffrey Yasskinc4988782011-02-11 23:46:38 +00001set(LLVM_LINK_COMPONENTS
NAKAMURA Takumi98501ea2015-01-15 07:28:53 +00002 Analysis
NAKAMURA Takumi65d42bc2013-12-09 19:04:43 +00003 BitReader
4 BitWriter
5 Core
6 IPO
7 IRReader
8 InstCombine
9 Instrumentation
10 Linker
11 MC
12 ObjCARCOpts
Justin Bogner837a6f62014-04-18 21:52:00 +000013 ProfileData
NAKAMURA Takumi65d42bc2013-12-09 19:04:43 +000014 ScalarOpts
15 Support
Sanjay Patel21141d72015-06-02 18:02:13 +000016 Target
NAKAMURA Takumi23b702c2014-07-14 05:01:53 +000017 TransformUtils
Jeffrey Yasskinc4988782011-02-11 23:46:38 +000018 )
19
Reid Klecknerdd43a5c2014-11-05 20:30:55 +000020# In a standard Clang+LLVM build, we need to generate intrinsics before
21# building codegen. In a standalone build, LLVM is already built and we don't
22# need this dependency. Furthermore, LLVM doesn't export it so we can't have
23# this dependency.
24set(codegen_deps intrinsics_gen)
25if (CLANG_BUILT_STANDALONE)
26 set(codegen_deps)
27endif()
28
Oscar Fuentes07d9f9a2008-10-26 00:56:18 +000029add_clang_library(clangCodeGen
Daniel Dunbarc1b17292010-06-15 17:48:49 +000030 BackendUtil.cpp
John McCallfc207f22013-03-07 21:37:12 +000031 CGAtomic.cpp
Mike Stump57d73542009-02-13 15:42:50 +000032 CGBlocks.cpp
Ted Kremenek3e808ed2009-07-15 21:08:41 +000033 CGBuiltin.cpp
Peter Collingbournefe883422011-10-06 18:29:37 +000034 CGCUDANV.cpp
35 CGCUDARuntime.cpp
Anders Carlsson59486a22009-11-24 05:51:11 +000036 CGCXX.cpp
Anders Carlsson81f6f362010-11-28 17:46:52 +000037 CGCXXABI.cpp
Ted Kremenekb2166d82014-01-06 23:20:52 +000038 CGCall.cpp
39 CGClass.cpp
John McCallb91ab892011-01-28 20:10:46 +000040 CGCleanup.cpp
Oscar Fuentes07d9f9a2008-10-26 00:56:18 +000041 CGDebugInfo.cpp
42 CGDecl.cpp
Anders Carlssonbc49cfe2009-12-10 00:16:00 +000043 CGDeclCXX.cpp
Anders Carlsson4b08db72009-10-30 01:42:31 +000044 CGException.cpp
Ted Kremenek3e808ed2009-07-15 21:08:41 +000045 CGExpr.cpp
Oscar Fuentes07d9f9a2008-10-26 00:56:18 +000046 CGExprAgg.cpp
Ted Kremenekb2166d82014-01-06 23:20:52 +000047 CGExprCXX.cpp
Oscar Fuentes07d9f9a2008-10-26 00:56:18 +000048 CGExprComplex.cpp
49 CGExprConstant.cpp
Oscar Fuentes07d9f9a2008-10-26 00:56:18 +000050 CGExprScalar.cpp
Alexander Musman515ad8c2014-05-22 08:54:05 +000051 CGLoopInfo.cpp
Oscar Fuentes07d9f9a2008-10-26 00:56:18 +000052 CGObjC.cpp
53 CGObjCGNU.cpp
54 CGObjCMac.cpp
Anders Carlsson843c6912011-03-25 14:16:48 +000055 CGObjCRuntime.cpp
Peter Collingbourne2dbb7082011-09-19 21:14:35 +000056 CGOpenCLRuntime.cpp
Alexey Bataev9959db52014-05-06 10:08:46 +000057 CGOpenMPRuntime.cpp
Ted Kremenekb2166d82014-01-06 23:20:52 +000058 CGRecordLayoutBuilder.cpp
Oscar Fuentes07d9f9a2008-10-26 00:56:18 +000059 CGStmt.cpp
Alexey Bataev9959db52014-05-06 10:08:46 +000060 CGStmtOpenMP.cpp
Anders Carlssonf768db72010-01-21 16:50:45 +000061 CGVTT.cpp
Ted Kremenekb2166d82014-01-06 23:20:52 +000062 CGVTables.cpp
Mark Laceya8e7df32013-10-30 21:53:58 +000063 CodeGenABITypes.cpp
Daniel Dunbarc1b17292010-06-15 17:48:49 +000064 CodeGenAction.cpp
Oscar Fuentes07d9f9a2008-10-26 00:56:18 +000065 CodeGenFunction.cpp
66 CodeGenModule.cpp
Ted Kremenekb2166d82014-01-06 23:20:52 +000067 CodeGenPGO.cpp
Daniel Dunbar59ae1372010-10-15 00:39:31 +000068 CodeGenTBAA.cpp
Oscar Fuentes07d9f9a2008-10-26 00:56:18 +000069 CodeGenTypes.cpp
David Blaikie8fd97322014-08-04 18:59:39 +000070 CoverageMappingGen.cpp
Charles Davis4e786dd2010-05-25 19:52:27 +000071 ItaniumCXXABI.cpp
Charles Davis74ce8592010-06-09 23:25:41 +000072 MicrosoftCXXABI.cpp
Oscar Fuentes07d9f9a2008-10-26 00:56:18 +000073 ModuleBuilder.cpp
Alexey Samsonov4b8de112014-08-01 21:35:28 +000074 SanitizerMetadata.cpp
Anton Korobeynikovb322c3a2010-01-10 13:06:34 +000075 TargetInfo.cpp
NAKAMURA Takumi55a02ea2014-02-26 06:33:27 +000076
77 DEPENDS
Reid Klecknerdd43a5c2014-11-05 20:30:55 +000078 ${codegen_deps}
Douglas Gregorecc60b92010-05-05 05:41:05 +000079
NAKAMURA Takumi96986862014-02-26 06:41:29 +000080 LINK_LIBS
Chandler Carruth28969b42012-06-21 01:30:21 +000081 clangAST
NAKAMURA Takumi4a070dc2014-07-14 04:59:27 +000082 clangBasic
Chandler Carruth28969b42012-06-21 01:30:21 +000083 clangFrontend
NAKAMURA Takumi51d35102014-08-05 15:01:12 +000084 clangLex
Chandler Carruth28969b42012-06-21 01:30:21 +000085 )