Skip to content
  1. Feb 14, 2013
    • Tim Northover's avatar
      Use correct host/target CMake variables to define lit variables. · bfe84685
      Tim Northover authored
      CMake and autotools disagree on what "host" means in a cross-compilation
      context. Autotools (and lit) take it to be the machine the binaries being
      compiled now will run on. CMake takes it to be the machine actually compiling
      the binaries now.
      
      This change makes lit.site-cfg more consistent between autotools and CMake,
      allowing lit tests (particularly in ExecutionEngine) to run correctly when
      cross-compiled with CMake
      
      llvm-svn: 175179
      bfe84685
  2. Feb 09, 2013
    • Jordan Rose's avatar
      CMake: Use check_symbol_exists instead of check_cxx_symbol_exists. · cea01ee9
      Jordan Rose authored
      check_cxx_symbol_exists requires CMake 2.8.6, so even though I
      recommended it to Owen it's probably better to stay away for now.
      This check is not technically correct because we're checking <math.h>
      but then using <cmath> in the actual code, but if we run into problems we
      can do the same sort of dance as isinf() and isnan() where we check /both/
      headers and then write a wrapper header around them.
      
      llvm-svn: 174773
      cea01ee9
  3. Feb 07, 2013
  4. Feb 04, 2013
    • Edwin Vane's avatar
      Turn off uninitialized-use warnings for gcc in cmake build · a9c5bb3f
      Edwin Vane authored
      Added support to the cmake build to turn off uninitialized use warnings
      for gcc. This cleans the build up somewhat.
      
      Used logic simpler than found in autoconf by making use of the fact that
      although gcc won't complain about unsupported -Wno-* flags it *will*
      complain about unsupported -W flags.
      
      Reviewers: gribozavr, doug.gregor, chandlerc
      llvm-svn: 174299
      a9c5bb3f
  5. Jan 31, 2013
  6. Jan 27, 2013
  7. Jan 25, 2013
    • Reid Kleckner's avatar
      Disable MSVC's warning about noreturn destructors · cd947f97
      Reid Kleckner authored
      This warning fires on:
        Operator::~Operator() {
          llvm_unreachable("should never destroy an Operator");
        }
      
      That seems like a false positive.  I don't see any good way to silence
      the warning here, so I'm disabling it.
      
      llvm-svn: 173455
      cd947f97
  8. Jan 05, 2013
    • Chandler Carruth's avatar
      Add time getters to the process interface for requesting the elapsed · ef7f968e
      Chandler Carruth authored
      wall time, user time, and system time since a process started.
      
      For walltime, we currently use TimeValue's interface and a global
      initializer to compute a close approximation of total process runtime.
      
      For user time, this adds support for an somewhat more precise timing
      mechanism -- clock_gettime with the CLOCK_PROCESS_CPUTIME_ID clock
      selected.
      
      For system time, we have to do a full getrusage call to extract the
      system time from the OS. This is expensive but unavoidable.
      
      In passing, clean up the implementation of the old APIs and fix some
      latent bugs in the Windows code. This might have manifested on Windows
      ARM systems or other systems with strange 64-bit integer behavior.
      
      The old API for this both user time and system time simultaneously from
      a single getrusage call. While this results in fewer system calls, it
      also results in a lower precision user time and if only user time is
      desired, it introduces a higher overhead. It may be worthwhile to switch
      some of the pass timers to not track system time and directly track user
      and wall time. The old API also tracked walltime in a confusing way --
      it just set it to the current walltime rather than providing any measure
      of wall time since the process started the way buth user and system time
      are tracked. The new API is more consistent here.
      
      The plan is to eventually implement these methods for a *child* process
      by using the wait3(2) system call to populate an rusage struct
      representing the whole subprocess execution. That way, after waiting on
      a child process its stats will become accurate and cheap to query.
      
      llvm-svn: 171551
      ef7f968e
  9. Jan 03, 2013
  10. Dec 24, 2012
  11. Dec 19, 2012
  12. Dec 14, 2012
  13. Dec 10, 2012
  14. Nov 26, 2012
    • Joe Abbey's avatar
      Removing SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG · 15d9834d
      Joe Abbey authored
      Adding CXX_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG
             C_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG
      
      This is to handle the wackiness on a Mac host where cmake detects:
      
      CMAKE_CXX_COMPILER == "/usr/bin/c++"
      CMAKE_C_COMPILER == "/usr/bin/gcc"
      
      llvm-svn: 168577
      15d9834d
  15. Oct 23, 2012
  16. Oct 10, 2012
  17. Oct 05, 2012
    • NAKAMURA Takumi's avatar
      [CMake] Enhance add_llvm_external_project. · 700cd405
      NAKAMURA Takumi authored
        - Substitute hyphen to underscore, s/-/_/g, as the variable name.
        - Additional parameter can be specified as the name of directory.
      
      e.g.) add_llvm_external_project(clang-tools-extra extra)
      
        - LLVM_EXTERNAL_CLANG_TOOLS_EXTRA_SOURCE_DIR=/path/to/llvm-srcroot/tools/clang/tools/extra, by default.
        - Build directory is in ${CMAKE_CURRENT_BINARY_DIR}/extra
      
      llvm-svn: 165311
      700cd405
  18. Sep 11, 2012
  19. Sep 04, 2012
  20. Sep 01, 2012
  21. Aug 20, 2012
    • Sebastian Pop's avatar
      enable cross compilation with cmake · faeca292
      Sebastian Pop authored
      This patch allows us to use cmake to specify a cross compiler: target different
      than host. In particular, it moves LLVM_DEFAULT_TARGET_TRIPLE and TARGET_TRIPLE
      variables from cmake/config-ix.cmake to the toplevel CMakeLists.txt to make them
      available at configure time.
      
      Here is the command line that I have used to test my patches to create a Hexagon
      cross compiler hosted on x86:
      
      $ cmake -G Ninja -D LLVM_TARGETS_TO_BUILD:STRING=Hexagon -D TARGET_TRIPLE:STRING=hexagon-unknown-linux-gnu -D LLVM_DEFAULT_TARGET_TRIPLE:STRING=hexagon-unknown-linux-gnu -D LLVM_TARGET_ARCH:STRING=hexagon-unknown-linux-gnu ..
      $ ninja check
      
      llvm-svn: 162219
      faeca292
    • Sebastian Pop's avatar
      enable Hexagon target from cmake · 8f4aec43
      Sebastian Pop authored
      The patch adds a missing case for the Hexagon target in cmake/config-ix.cmake.
      
      llvm-svn: 162218
      8f4aec43
  22. Aug 08, 2012
    • Sebastian Pop's avatar
      revert my previous patch · 82622dc3
      Sebastian Pop authored
      llvm-svn: 161505
      82622dc3
    • Sebastian Pop's avatar
      enable Hexagon target from cmake · 7e9da1d4
      Sebastian Pop authored
      This patch allows us to use cmake to specify a cross compiler for Hexagon.
      
      In particular, the patch adds a missing case for the target Hexagon in
      cmake/config-ix.cmake, and it moves LLVM_DEFAULT_TARGET_TRIPLE and TARGET_TRIPLE
      variables from cmake/config-ix.cmake to the toplevel CMakeLists.txt to make them
      available at configure time. Here is the command line that I have used to test
      my patches:
      
      $ cmake -G Ninja -D BUILD_SHARED_LIBS:BOOL=ON -D LLVM_TARGETS_TO_BUILD:STRING=Hexagon -D TARGET_TRIPLE:STRING=hexagon-unknown-linux-gnu -D LLVM_DEFAULT_TARGET_TRIPLE:STRING=hexagon-unknown-linux-gnu -D LLVM_TARGET_ARCH:STRING=hexagon-unknown-linux-gnu -D LLVM_ENABLE_PIC:BOOL=OFF ..
      $ ninja check
      
      llvm-svn: 161504
      7e9da1d4
  23. Aug 04, 2012
  24. Jul 22, 2012
  25. Jul 12, 2012
  26. Jul 07, 2012
  27. Jul 02, 2012
  28. Jun 30, 2012
  29. Jun 29, 2012
  30. Jun 28, 2012
  31. Jun 24, 2012
Loading