- Oct 08, 2013
-
-
Andrew Kaylor authored
llvm-svn: 192205
-
- Oct 04, 2013
-
-
Andrew Kaylor authored
llvm-svn: 191938
-
- Oct 02, 2013
-
-
Richard Smith authored
searching $PATH for it then blindly executing it from $PWD anyway. llvm-svn: 191856
-
Andrew Kaylor authored
llvm-svn: 191845
-
Andrew Kaylor authored
At this time only Unix-based systems are supported. Windows has stubs and should re-route to the simulated mode. Thanks to Sriram Murali for contributions to this patch. llvm-svn: 191843
-
- Oct 01, 2013
-
-
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
-
- Jun 28, 2013
-
-
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
-
- May 19, 2013
-
-
Tim Northover authored
On 32-bit hosts %p can print garbage when given a uint64_t, we should use %llx instead. This only affects the output of the debugging text produced by lli. llvm-svn: 182209
-
- May 14, 2013
-
-
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
-
- May 07, 2013
-
-
Rafael Espindola authored
llvm-svn: 181354
-
- Mar 26, 2013
-
-
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
-
- Jan 02, 2013
-
-
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
-
- Dec 04, 2012
-
-
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
-
- Nov 27, 2012
-
-
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
-
- Nov 16, 2012
-
-
Andrew Kaylor authored
Interface changes to allow RuntimeDyld memory managers to set memory permissions after an object has been loaded. llvm-svn: 168114
-
- Nov 05, 2012
-
-
Andrew Kaylor authored
Prior to this patch RuntimeDyld attempted to re-apply relocations every time reassignSectionAddress was called (via MCJIT::mapSectionAddress). In addition to being inefficient and redundant, this led to a problem when a section was temporarily moved too far away from another section with a relative relocation referencing the section being moved. To fix this, I'm adding a new method (finalizeObject) which the client can call to indicate that it is finished rearranging section addresses so the relocations can safely be applied. llvm-svn: 167400
-
Jim Grosbach authored
MCJIT supports inline assembly, but requires the asm parser to do so. Make sure to link it in and initialize it. llvm-svn: 167392
-
- Nov 01, 2012
-
-
Andrew Kaylor authored
Patch by Ashok Thirumurthi llvm-svn: 167192
-
Andrew Kaylor authored
llvm-svn: 167185
-
- Oct 29, 2012
-
-
Tim Northover authored
Patch by Amara Emerson. llvm-svn: 166920
-
- Oct 12, 2012
-
-
Tim Northover authored
Patch by Amara Emerson. llvm-svn: 165791
-
- Oct 05, 2012
-
-
NAKAMURA Takumi authored
lli: [MCJIT] Suppress "__main" for cygming in LLIMCJITMemoryManager::getPointerToNamedFunction(), like legacy JITMemoryManager's. CRT's __main (aka premain) invokes global ctors on cygming. See also PR3897. llvm-svn: 165312
-
- Sep 20, 2012
-
-
Tim Northover authored
Patch from Amara Emerson. llvm-svn: 164296
-
- Sep 05, 2012
-
-
Jim Grosbach authored
Simulate a remote target address space by allocating a seperate chunk of memory for the target and re-mapping section addresses to that prior to execution. Later we'll want to have a truly remote process, but for now this gets us closer to being able to test the remote target functionality outside LLDB. rdar://12157052 llvm-svn: 163216
-
- Aug 29, 2012
-
-
Jim Grosbach authored
Invalidate the instruction cache right before we start actually executing code, otherwise we can miss some that came later. This is still not quite right for a truly lazilly compiled environment, but it's closer. llvm-svn: 162803
-
- May 20, 2012
-
-
Benjamin Kramer authored
Found by valgrind. llvm-svn: 157160
-
- May 19, 2012
-
-
Benjamin Kramer authored
llvm-svn: 157118
-
- May 16, 2012
-
-
Danil Malyshev authored
Added LLIMCJITMemoryManager to the lli. This manager will be used for MCJIT instead of DefaultJIMMemoryManager. It's more flexible for MCJIT tasks, in addition it's provides a invalidation instruction cache for code sections which will be used before JIT code will be executed. llvm-svn: 156933
-
- Apr 29, 2012
-
-
Eli Bendersky authored
if !ForceInterpreteri). It has no effect (apart from a memory leak...) llvm-svn: 155792
-
- Apr 18, 2012
-
-
Nick Lewycky authored
backend flags in TargetOptions.h into their own class in r145714. llvm-svn: 154993
-
- Mar 13, 2012
-
-
Eli Bendersky authored
Also refactor the existing OProfile profiling code to reuse the same interfaces with the VTune profiling code. In addition, unit tests for the profiling interfaces were added. This patch was prepared by Andrew Kaylor and Daniel Malea, and reviewed in the llvm-commits list by Jim Grosbach llvm-svn: 152620
-
- Jan 16, 2012
-
-
Eli Bendersky authored
Adding a basic ELF dynamic loader and MC-JIT for ELF. Functionality is currently basic and will be enhanced with future patches. Patch developed by Andy Kaylor and Daniel Malea. Reviewed on llvm-commits. llvm-svn: 148231
-
- Jan 11, 2012
-
-
Jim Grosbach authored
llvm-svn: 147970
-
Jim Grosbach authored
llvm-svn: 147969
-
Jim Grosbach authored
Previously let the JITEmitter do it. That's rather odd, and doesn't play nice with the MCJIT, so move the (trivial) logic up. llvm-svn: 147967
-
- Oct 16, 2011
-
-
Chris Lattner authored
the X86 asmparser to produce ranges in the one case that was annoying me, for example: test.s:10:15: error: invalid operand for instruction movl 0(%rax), 0(%edx) ^~~~~~~ It should be straight-forward to enhance filecheck, tblgen, and/or the .ll parser to use ranges where appropriate if someone is interested. llvm-svn: 142106
-
- Aug 24, 2011
-
-
Evan Cheng authored
These are strictly utilities for registering targets and components. llvm-svn: 138450
-
- Jul 20, 2011
-
-
Evan Cheng authored
- Introduce JITDefault code model. This tells targets to set different default code model for JIT. This eliminates the ugly hack in TargetMachine where code model is changed after construction. llvm-svn: 135580
-
- Jul 19, 2011
-
-
Evan Cheng authored
(including compilation, assembly). Move relocation model Reloc::Model from TargetMachine to MCCodeGenInfo so it's accessible even without TargetMachine. llvm-svn: 135468
-
- Mar 18, 2011
-
-
Jim Grosbach authored
Proof-of-concept code that code-gens a module to an in-memory MachO object. This will be hooked up to a run-time dynamic linker library (see: llvm-rtdyld for similarly conceptual work for that part) which will take the compiled object and link it together with the rest of the system, providing back to the JIT a table of available symbols which will be used to respond to the getPointerTo*() queries. llvm-svn: 127916
-