llvm.org GIT mirror llvm / 78d0835
More llvmc bits. Spotted by Benjamin on IRC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140124 91177308-0d34-0410-b5e6-96231b3b80d8 Eric Christopher 8 years ago
4 changed file(s) with 3 addition(s) and 65 deletion(s). Raw diff Collapse all Expand all
188188 uninstall:: uninstall-local
189189 install-local:: all-local
190190 install-bytecode:: install-bytecode-local
191
192 ###############################################################################
193 # LLVMC: Provide rules for compiling llvmc-based driver
194 ###############################################################################
195
196 ifdef LLVMC_BASED_DRIVER
197
198 TOOLNAME = $(LLVMC_BASED_DRIVER)
199
200 LLVMLIBS = CompilerDriver.a
201 LINK_COMPONENTS = support
202
203 endif # LLVMC_BASED_DRIVER
204191
205192 ###############################################################################
206193 # VARIABLES: Set up various variables based on configuration data
16851672 TABLEGEN_INC_FILES_COMMON = 1
16861673 endif
16871674
1688 ifdef LLVMC_BASED_DRIVER
1689 TABLEGEN_INC_FILES_COMMON = 1
1690 endif
1691
16921675 ifdef TABLEGEN_INC_FILES_COMMON
16931676
16941677 INCFiles := $(filter %.inc,$(BUILT_SOURCES))
18031786 -$(Verb) $(RM) -f $(INCFiles)
18041787
18051788 endif # TARGET
1806
1807 ifdef LLVMC_BASED_DRIVER
1808
1809 TDSrc := $(sort $(strip $(wildcard $(PROJ_SRC_DIR)/*.td)) \
1810 $(strip $(wildcard $(PROJ_OBJ_DIR)/*.td)))
1811
1812 TDCommon := $(strip $(wildcard \
1813 $(LLVM_SRC_ROOT)/include/llvm/CompilerDriver/*.td))
1814
1815 TDFiles := $(TDSrc) $(TDCommon)
1816
1817 $(INCTMPFiles) : $(TBLGEN) $(TDFiles)
1818
1819 $(ObjDir)/%.inc.tmp: %.td $(ObjDir)/.dir
1820 $(Echo) "Building LLVMC compilation graph description with tblgen"
1821 $(Verb) $(TableGen) -gen-llvmc -o $(call SYSPATH, $@) $<
1822
1823 clean-local::
1824 -$(Verb) $(RM) -f $(INCFiles)
1825
1826 endif # LLVMC_BASED_DRIVER
18271789
18281790 ###############################################################################
18291791 # OTHER RULES: Other rules needed
7171
  • After Subversion update, rebuilding gives the error "No rule to make
  • 7272 target".
    7373
    74
  • The llvmc program gives me errors/doesn't
  • 75 work.
    76
    7774
  • When I compile LLVM-GCC with srcdir == objdir,
  • 7875 it fails. Why?
    7976
    416413
    417414

    In other cases, it may be necessary to run make clean before

    418415 rebuilding.

    419
    420
    421
    422

    The llvmc program gives me errors/doesn't

    423 work.

    424
    425
    426
    427

    llvmc is experimental and isn't really supported. We suggest

    428 using llvm-gcc instead.

    429416
    430417
    431418
    15941594 href="HowToSubmitABug.html">HowToSubmitABug.html for more information
    15951595 on using bugpoint.
    15961596
    1597
    llvmc
    1598
    The LLVM Compiler Driver. This program can
    1599 be configured to utilize both LLVM and non-LLVM compilation tools to enable
    1600 pre-processing, translation, optimization, assembly, and linking of programs
    1601 all from one command line. llvmc also takes care of processing the
    1602 dependent libraries found in bitcode. This reduces the need to get the
    1603 traditional -l<name> options right on the command line. Please
    1604 note that this tool, while functional, is still experimental and not feature
    1605 complete.
    1606
    16071597
    llvm-ar
    16081598
    The archiver produces an archive containing
    16091599 the given LLVM bitcode files, optionally with an index for faster
    16191609
    16201610
    llvm-ld
    16211611
    llvm-ld is a general purpose and extensible linker for LLVM.
    1622 This is the linker invoked by llvmc. It performs standard link time
    1623 optimizations and allows optimization modules to be loaded and run so that
    1624 language specific optimizations can be applied at link time.
    1612 It performs standard link time optimizations and allows optimization
    1613 modules to be loaded and run so that language specific optimizations can
    1614 be applied at link time.
    16251615
    16261616
    llvm-link
    16271617
    llvm-link, not surprisingly, links multiple LLVM modules into