Skip to content
  1. Apr 22, 2014
  2. Mar 08, 2014
  3. Mar 06, 2014
    • Ahmed Charles's avatar
      Replace OwningPtr<T> with std::unique_ptr<T>. · 56440fd8
      Ahmed Charles authored
      This compiles with no changes to clang/lld/lldb with MSVC and includes
      overloads to various functions which are used by those projects and llvm
      which have OwningPtr's as parameters. This should allow out of tree
      projects some time to move. There are also no changes to libs/Target,
      which should help out of tree targets have time to move, if necessary.
      
      llvm-svn: 203083
      56440fd8
  4. Mar 05, 2014
  5. Feb 24, 2014
    • Rafael Espindola's avatar
      Replace the F_Binary flag with a F_Text one. · 90c7f1cc
      Rafael Espindola authored
      After this I will set the default back to F_None. The advantage is that
      before this patch forgetting to set F_Binary would corrupt a file on windows.
      Forgetting to set F_Text produces one that cannot be read in notepad, which
      is a better failure mode :-)
      
      llvm-svn: 202052
      90c7f1cc
  6. Jan 23, 2014
    • Alp Toker's avatar
      Replace the interim lli build fix with something cleaner · ce4ab597
      Alp Toker authored
      Eliminates the LLI_BUILDING_CHILD build hack from r199885.
      
      Also add a FIXME to remove code that tricks the tests into passing when the
      feature fails to work. Please don't do stuff like this, the tests exist for a
      reason!
      
      llvm-svn: 199929
      ce4ab597
  7. Jan 22, 2014
  8. Jan 15, 2014
  9. Jan 14, 2014
    • Renato Golin's avatar
      Sanitize MCJIT remote execution · 695895ca
      Renato Golin authored
      MCJIT remote execution (ChildTarget+RemoteTargetExternal) protocol was in
      dire need of refactoring. It was fail-prone, had no error reporting and
      implemented the same message logic on every single function.
      
      This patch rectifies it, and makes it work on ARM, where it was randomly
      failing. Other architectures shall profit from this change as well, making
      their buildbots and releases more reliable.
      
      llvm-svn: 199261
      695895ca
  10. Jan 10, 2014
  11. Jan 09, 2014
  12. Jan 08, 2014
  13. Dec 07, 2013
  14. Oct 29, 2013
  15. Oct 28, 2013
  16. Oct 12, 2013
    • Andrew Kaylor's avatar
      Fixing problems in lli's RemoteMemoryManager. · 6587bcfd
      Andrew Kaylor authored
      This fixes a problem from a previous check-in where a return value was omitted.
      
      Previously the remote/stubs-remote.ll and remote/stubs-sm-pic.ll tests were reporting passes, but they should have been failing.  Those tests attempt to link against an external symbol and remote symbol resolution is not supported.  The old RemoteMemoryManager implementation resulted in local symbols being used for resolution and the child process crashed but the test didn't notice.  With this check-in remote symbol resolution fails, and so the test (correctly) fails.
      
      llvm-svn: 192514
      6587bcfd
  17. Oct 08, 2013
  18. Oct 04, 2013
  19. Oct 02, 2013
  20. Oct 01, 2013
    • Andrew Kaylor's avatar
      Adding multiple module support for MCJIT. · ea395924
      Andrew Kaylor authored
      Tests to follow.
      
      PIC with small code model and  EH frame handling will not work with multiple modules.  There are also some rough edges to be smoothed out for remote target support.
      
      llvm-svn: 191722
      ea395924
  21. Jun 28, 2013
    • Daniel Malea's avatar
      Add flag to lli to enable debugging of IR when used with MCJIT. · a960c54d
      Daniel Malea authored
      - warn users when -debug-ir is used with old JIT engine (only partial debug
        info is available) 
      
      For example, to debug an IR file with GDB (that supports JIT registration), do:
      
      $ gdb --args lli -use-mcjit -debug-ir testcase.ll
      (gdb) break main
      (gdb) run
      <Process continues to lli main>
      (gdb) continue
      <Process continues to testcase.ll main()
      (gdb) step
      <Now stepping through the LLVM IR in testcase.ll>
      
      llvm-svn: 185197
      a960c54d
  22. May 19, 2013
  23. May 14, 2013
    • Filip Pizlo's avatar
      SectionMemoryManager shouldn't be a JITMemoryManager. Previously, the · 9bc53e84
      Filip Pizlo authored
      EngineBuilder interface required a JITMemoryManager even if it was being used 
      to construct an MCJIT. But the MCJIT actually wants a RTDyldMemoryManager. 
      Consequently, the SectionMemoryManager, which is meant for MCJIT, derived 
      from the JITMemoryManager and then stubbed out a bunch of JITMemoryManager 
      methods that weren't relevant to the MCJIT.
      
      This patch fixes the situation: it teaches the EngineBuilder that 
      RTDyldMemoryManager is a supertype of JITMemoryManager, and that it's 
      appropriate to pass a RTDyldMemoryManager instead of a JITMemoryManager if 
      we're using the MCJIT. This allows us to remove the stub methods from 
      SectionMemoryManager, and make SectionMemoryManager a direct subtype of 
      RTDyldMemoryManager.
      
      llvm-svn: 181820
      9bc53e84
  24. May 07, 2013
  25. Mar 26, 2013
    • Chandler Carruth's avatar
      Split out the IRReader header and the utility functions it provides into · e60e57be
      Chandler Carruth authored
      its own library. These functions are bridging between the bitcode reader
      and the ll parser which are in different libraries. Previously we didn't
      have any good library to do this, and instead played fast and loose with
      a "header only" set of interfaces in the Support library. This really
      doesn't work well as evidenced by the recent attempt to add timing logic
      to the these routines.
      
      As part of this, make them normal functions rather than weird inline
      functions, and sink the implementation into the library. Also clean up
      the header to be nice and minimal.
      
      This requires updating lots of build system dependencies to specify that
      the IRReader library is needed, and several source files to not
      implicitly rely upon the header file to transitively include all manner
      of other headers.
      
      If you are using IRReader.h, this commit will break you (the header
      moved) and you'll need to also update your library usage to include
      'irreader'. I will commit the corresponding change to Clang momentarily.
      
      llvm-svn: 177971
      e60e57be
  26. Jan 02, 2013
    • Chandler Carruth's avatar
      Move all of the header files which are involved in modelling the LLVM IR · 9fb823bb
      Chandler Carruth authored
      into their new header subdirectory: include/llvm/IR. This matches the
      directory structure of lib, and begins to correct a long standing point
      of file layout clutter in LLVM.
      
      There are still more header files to move here, but I wanted to handle
      them in separate commits to make tracking what files make sense at each
      layer easier.
      
      The only really questionable files here are the target intrinsic
      tablegen files. But that's a battle I'd rather not fight today.
      
      I've updated both CMake and Makefile build systems (I think, and my
      tests think, but I may have missed something).
      
      I've also re-sorted the includes throughout the project. I'll be
      committing updates to Clang, DragonEgg, and Polly momentarily.
      
      llvm-svn: 171366
      9fb823bb
  27. Dec 04, 2012
    • Chandler Carruth's avatar
      Sort the #include lines for tools/... · 4d88a1c2
      Chandler Carruth authored
      Again, tools are trickier to pick the main module header for than
      library source files. I've started to follow the pattern of using
      LLVMContext.h when it is included as a stub for program source files.
      
      llvm-svn: 169252
      4d88a1c2
  28. Nov 27, 2012
    • Andrew Kaylor's avatar
      Modifying lli to use the SectionMemoryManager. · 58365b9c
      Andrew Kaylor authored
      The functionality of SectionMemoryManager is equivalent to the LLIMCJITMemoryManager being replaced except that it allocates memory as RW and later changes it to RX or R as needed.  The page permissions are set in the call to MCJIT::finalizeObject.
      
      llvm-svn: 168722
      58365b9c
Loading