Skip to content
  1. Mar 10, 2014
  2. Mar 04, 2014
  3. Feb 18, 2014
    • Duncan P. N. Exon Smith's avatar
      PGO: llvm-profdata: tool for merging profiles · 846a627f
      Duncan P. N. Exon Smith authored
      Introducing llvm-profdata, a tool for merging profile data generated by
      PGO instrumentation in clang.
      
      - The name indicates a file extension of <name>.profdata.  Eventually
        profile data output by clang should be changed to that extension.
      
      - llvm-profdata merges two profiles.  However, the name is more general,
        since it will likely pick up more tasks (such as summarizing a single
        profile).
      
      - llvm-profdata parses the current text-based format, but will be
        updated once we settle on a binary format.
      
      <rdar://problem/15949645>
      
      llvm-svn: 201535
      846a627f
  4. Oct 23, 2013
    • NAKAMURA Takumi's avatar
      llvm/tools/llvm-c-test should be built also on msvc. · 07a64064
      NAKAMURA Takumi authored
      llvm-svn: 193257
      07a64064
    • Anders Waldenborg's avatar
      Add llvm-c-test tool for testing llvm-c · b932c669
      Anders Waldenborg authored
      This provides rudimentary testing of the llvm-c api.
      
      The following commands are implemented:
      
        * --module-dump
          Read bytecode from stdin - print ir
      
        * --module-list-functions
          Read bytecode from stdin - list summary of functions
      
        * --module-list-globals
          Read bytecode from stdin - list summary of globals
      
        * --targets-list
          List available targets
      
        * --object-list-sections
          Read object file from stdin - list sections
      
        * --object-list-symbols
          Read object file from stdin - list symbols (like nm)
      
        * --disassemble
          Read lines of triple, hex ascii machine code from stdin - print disassembly
      
        * --calc
          Read lines of name, rpn from stdin - print generated module ir
      
      Differential-Revision: http://llvm-reviews.chandlerc.com/D1776
      llvm-svn: 193233
      b932c669
  5. Oct 02, 2013
    • Chandler Carruth's avatar
      Remove the very substantial, largely unmaintained legacy PGO · ea564946
      Chandler Carruth authored
      infrastructure.
      
      This was essentially work toward PGO based on a design that had several
      flaws, partially dating from a time when LLVM had a different
      architecture, and with an effort to modernize it abandoned without being
      completed. Since then, it has bitrotted for several years further. The
      result is nearly unusable, and isn't helping any of the modern PGO
      efforts. Instead, it is getting in the way, adding confusion about PGO
      in LLVM and distracting everyone with maintenance on essentially dead
      code. Removing it paves the way for modern efforts around PGO.
      
      Among other effects, this removes the last of the runtime libraries from
      LLVM. Those are being developed in the separate 'compiler-rt' project
      now, with somewhat different licensing specifically more approriate for
      runtimes.
      
      llvm-svn: 191835
      ea564946
    • Rafael Espindola's avatar
      Enable building LTO on WIN32. · d38f9af2
      Rafael Espindola authored
      Enable building the LTO library (.lib and.dll) and llvm-lto.exe on Windows with
      MSVC and Mingw as well as re-enabling the associated test.
      
      Patch by Greg Bedwell!
      
      llvm-svn: 191823
      d38f9af2
  6. Sep 30, 2013
  7. Sep 20, 2013
  8. Aug 28, 2013
  9. Aug 23, 2013
  10. Aug 21, 2013
    • Argyrios Kyrtzidis's avatar
      [CMake] Automatically pick up subdirectories in llvm/tools as 'external... · 7eec9d0c
      Argyrios Kyrtzidis authored
      [CMake] Automatically pick up subdirectories in llvm/tools as 'external projects' if they contain a 'CMakeLists.txt' file.
      
      Allow CMake to pick up external projects in llvm/tools without the need to modify the "llvm/tools/CMakeLists.txt" file.
      This makes it easier to work with projects that live in other repositories, without needing to specify each one in "llvm/tools/CMakeLists.txt".
      
      llvm-svn: 188921
      7eec9d0c
  11. Jun 26, 2013
    • Andy Gibbs's avatar
      Provide bootstrap support to build only llvm+clang when using cmake. · 3ef5ed1e
      Andy Gibbs authored
      Where a source tree is complete with lld, lldb and polly, it may not be possible to use cmake to configure build scripts if the host compiler it not capable of compiling these sub-projects.  This change makes it possible to first build a bootstrap clang compiler when can then be used to build a complete llvm toolchain.  An example bootstrap build sequence could be as follows:
      
      $ mkdir bootstrap
      $ cd bootstrap
      $ cmake -G 'Unix Makefiles'
              -DCMAKE_BUILD_TYPE:STRING=Release
              -DCMAKE_PREFIX_PATH:STRING=$(pwd)
              -DLLVM_TARGETS_TO_BUILD:STRING=host
              -DLLVM_INCLUDE_TOOLS:STRING=bootstrap-only
              ../source
      $ make clang  # build clang only for host
      
      $ cd ..
      $ export CC=$(realpath bootstrap/bin)/clang
      $ export CXX=$(realpath bootstrap/bin)/clang++
      
      $ mkdir final
      $ cd final
      $ cmake -G 'Unix Makefiles' ../source
      $ make all check-all
      
      llvm-svn: 184924
      3ef5ed1e
  12. Jun 15, 2013
    • Rafael Espindola's avatar
      Remove the LLVM specific archive index. · 668c6428
      Rafael Espindola authored
      Archive files (.a) can have a symbol table indicating which object
      files in them define which symbols. The purpose of this symbol table
      is to speed up linking by allowing the linker the read only the .o
      files it is actually going to use instead of having to parse every
      object's symbol table.
      
      LLVM's archive library currently supports a LLVM specific format for
      such table. It is hard to see any value in that now that llvm-ld is
      gone:
      
      * System linkers don't use it: GNU ar uses the same plugin as the
      linker to create archive files with a regular index. The OS X ar
      creates no symbol table for IL files, I assume the linker just parses
      all IL files.
      
      * It doesn't interact well with archives having both IL and native objects.
      
      * We probably don't want to be responsible for yet another archive
      format variant.
      
      This patch then:
      
      * Removes support for creating and reading such index from lib/Archive.
      * Remove llvm-ranlib, since there is nothing left for it to do.
      
      We should in the future add support for regular indexes to llvm-ar for
      both native and IL objects. When we do that, llvm-ranlib should be
      reimplemented as a symlink to llvm-ar, as it is equivalent to "ar s".
      
      llvm-svn: 184019
      668c6428
  13. Apr 05, 2013
  14. Mar 17, 2013
  15. Mar 01, 2013
  16. Nov 21, 2012
  17. Nov 12, 2012
  18. Nov 01, 2012
  19. Apr 26, 2012
    • Michael J. Spencer's avatar
      [CMake] Restructure how Clang, Polly and other external projects get included. · e734f541
      Michael J. Spencer authored
      While making lld build under the tools directory I decided to refactor how this
      works.
      
      There is now a macro, add_llvm_external_project, which takes the name of the
      expected subdirectory. This sets up two CMake options.
      
       * LLVM_EXTERNAL_${NAME}_SOURCE_DIR
           This is the path to the source. It defaults to
           ${CMAKE_CURRENT_SOURCE_DIR}/${name}.
       * LLVM_EXTERNAL_${NAME}_BUILD
           Enable and disable building the tool as part of LLVM.
      
      I chose LLVM_EXTERNAL_${NAME} as a prefix so they all show up together in the
      GUI.
      
      llvm-svn: 155654
      e734f541
  20. Apr 19, 2012
    • Michael J. Spencer's avatar
      Remove llvm-ld and llvm-stub (which is only used by llvm-ld). · 9125493e
      Michael J. Spencer authored
      llvm-ld is no longer useful and causes confusion and so it is being removed.
      
      * Does not work very well on Windows because it must call a gcc like driver to
        assemble and link.
      * Has lots of hard coded paths which are wrong on many systems.
      * Does not understand most of ld's options.
      * Can be partially replaced by llvm-link | opt | {llc | as, llc -filetype=obj} |
        ld, or fully replaced by Clang.
      
      I know of no production use of llvm-ld, and hacking use should be
      replaced by Clang's driver.
      
      llvm-svn: 155147
      9125493e
  21. Mar 01, 2012
    • David Meyer's avatar
      [Object] · 2fc34c5f
      David Meyer authored
      * Add begin_dynamic_table() / end_dynamic_table() private interface to ELFObjectFile.
      * Add begin_libraries_needed() / end_libraries_needed() interface to ObjectFile, for grabbing the list of needed libraries for a shared object or dynamic executable.
      * Implement this new interface completely for ELF, leave stubs for COFF and MachO.
      * Add 'llvm-readobj' tool for dumping ObjectFile information.
      
      llvm-svn: 151785
      2fc34c5f
  22. Feb 26, 2012
    • Nadav Rotem's avatar
      · 78bda894
      Nadav Rotem authored
      Add a random .LL file generator to stress-test different llvm components.
      
      llvm-svn: 151479
      78bda894
  23. Dec 07, 2011
  24. Dec 01, 2011
  25. Nov 29, 2011
  26. Nov 10, 2011
  27. Nov 03, 2011
  28. Oct 16, 2011
  29. Sep 28, 2011
  30. Sep 20, 2011
Loading