Skip to content
  1. Jun 24, 2014
  2. Jun 13, 2014
  3. Jun 12, 2014
  4. Apr 29, 2014
    • David Blaikie's avatar
      PR19553: Memory leak in RuntimeDyldELF::createObjectImageFromFile · 7a1e775a
      David Blaikie authored
      This starts in MCJIT::getSymbolAddress where the
      unique_ptr<object::Binary> is release()d and (after a cast) passed to a
      single caller, MCJIT::addObjectFile.
      
      addObjectFile calls RuntimeDyld::loadObject.
      RuntimeDld::loadObject calls RuntimeDyldELF::createObjectFromFile
      
      And the pointer is never owned at this point. I say this point, because
      the alternative codepath, RuntimeDyldMachO::createObjectFile certainly
      does take ownership, so this seemed like a good hint that this was a/the
      right place to take ownership.
      
      llvm-svn: 207580
      7a1e775a
  5. Apr 25, 2014
  6. Apr 22, 2014
  7. Mar 08, 2014
  8. 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
  9. Mar 05, 2014
  10. 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
  11. 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
  12. Jan 22, 2014
  13. Jan 15, 2014
  14. 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
  15. Jan 10, 2014
  16. Jan 09, 2014
  17. Jan 08, 2014
  18. Dec 07, 2013
  19. Oct 29, 2013
  20. Oct 28, 2013
  21. 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
  22. Oct 08, 2013
  23. Oct 04, 2013
  24. Oct 02, 2013
  25. 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
  26. 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
  27. May 19, 2013
  28. 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
Loading