Skip to content
  1. Jan 31, 2013
  2. 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
  3. Dec 14, 2012
  4. Sep 04, 2012
  5. Sep 01, 2012
  6. 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
  7. 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
  8. Jul 22, 2012
  9. May 05, 2012
  10. May 03, 2012
  11. Mar 26, 2012
  12. Jan 24, 2012
  13. Jan 05, 2012
  14. Jan 04, 2012
  15. Dec 23, 2011
  16. Dec 09, 2011
  17. Nov 28, 2011
    • Dylan Noblesmith's avatar
      rename ENABLE_THREADS to LLVM_ENABLE_THREADS · efddf201
      Dylan Noblesmith authored
      Now that it needs to be exported in a public header (Valgrind.h)
      it should be prefixed to avoid collision with other projects.
      Add it to llvm-config.h as well.
      
      This'll require regenerating the configure script after this
      commit, but I don't have the required autoconf version.
      
      llvm-svn: 145214
      efddf201
  18. Nov 22, 2011
  19. Nov 01, 2011
  20. Oct 28, 2011
  21. Sep 19, 2011
  22. Aug 12, 2011
    • NAKAMURA Takumi's avatar
      CMake: Eliminate unused checks and #undef(s) as below; · 0d888ad7
      NAKAMURA Takumi authored
      STACK_DIRECTION
      YYTEXT_POINTER
      HAVE_NAMESPACES
      HAVE_STD_ITERATOR
      HAVE_FWD_ITERATOR
      HAVE_BI_ITERATOR
      HAVE_GLOBAL_HASH_MAP
      HAVE_GLOBAL_HASH_SET
      HAVE_GNU_EXT_HASH_MAP
      HAVE_GNU_EXT_HASH_SET
      HAVE_STD_EXT_HASH_MAP
      HAVE_STD_EXT_HASH_SET
      
      llvm-svn: 137423
      0d888ad7
  23. Jul 22, 2011
  24. Jul 19, 2011
  25. Jul 15, 2011
  26. Jun 23, 2011
  27. May 01, 2011
  28. Apr 02, 2011
    • Oscar Fuentes's avatar
      Handle changing of LLVM_ENABLE_FFI. · f2ab9283
      Oscar Fuentes authored
      If someone first configure build with LLVM_ENABLE_FFI=1 and then turn it
      off, the build will fail in lib/ExecutionEngine/Interpreter because
      Interpreter will try still to #include <ffi/ffi.h>, but there are no
      include_directories(${FFI_INCLUDE_DIR}) now.
      
      This patch unset()'s HAVE_FFI_H and HAVE_FFI_FFI_H from cache file if
      LLVM_ENABLE_FFI=0. This forces CMake to update config.h.
      
      Patch by arrowdodger!
      
      llvm-svn: 128769
      f2ab9283
  29. Mar 23, 2011
  30. Feb 27, 2011
  31. Feb 09, 2011
  32. Feb 05, 2011
  33. Feb 04, 2011
  34. Feb 03, 2011
  35. Jan 31, 2011
  36. Jan 21, 2011
Loading