summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/X86/X86JITInfo.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix MachineCodeEmitter to use uintptr_t instead of intptr_t. This avoids ↵Evan Cheng2008-12-101-1/+1
| | | | | | some overflow issues. Patch by Thomas Jablin. llvm-svn: 60828
* Rename isGVNonLazyPtr to isIndirectSym to reflect how it will be used.Evan Cheng2008-11-101-2/+2
| | | | llvm-svn: 58949
* Rename startFunctionStub to startGVStub since it's also used for GV non-lazy ↵Evan Cheng2008-11-081-9/+9
| | | | | | ptr. llvm-svn: 58897
* Rename isGVLazyPtr to isGVNonLazyPtr relocation. This represents Mac OS XEvan Cheng2008-11-051-2/+2
| | | | | | indirect gv reference. Please don't call it lazy. llvm-svn: 58746
* Support for allocation of TLS variables in the JIT. Allocation of a globalNicolas Geoffray2008-10-251-0/+10
| | | | | | | | variable is moved to the execution engine. The JIT calls the TargetJITInfo to allocate thread local storage. Currently, only linux/x86 knows how to allocate thread local global variables. llvm-svn: 58142
* When resolving a stub in x86-64 JIT, use a PC-relative branchDale Johannesen2008-08-121-2/+14
| | | | | | rather than the absolute address if the target is within range. llvm-svn: 54708
* Mark function used by asm block as used, otherwise optimizer may not see the ↵Devang Patel2008-07-161-1/+3
| | | | | | use and may delete the function. llvm-svn: 53692
* X86-64 PIC jump table values are different from x86-32 cases, they are dest ↵Evan Cheng2008-07-161-0/+4
| | | | | | - table base. llvm-svn: 53660
* Fixes for being compiled PIC on Linux. This isn't the mostDan Gohman2008-06-241-3/+10
| | | | | | | general solution possible, but it's a fairly simple one. Based on a patch from the OpenGTL project! llvm-svn: 52662
* Don't break strict aliasing.Evan Cheng2008-06-051-6/+6
| | | | llvm-svn: 52026
* Unbreak build on x86-64.Dale Johannesen2008-04-161-1/+1
| | | | llvm-svn: 49822
* Correlate stubs with functions in JIT: when emitting a stub, the JIT tells ↵Nicolas Geoffray2008-04-161-13/+16
| | | | | | | | the memory manager which function the stub will resolve. llvm-svn: 49814
* Add Win64 compilation callback. This allows easy examples to be JITed on Win64!Anton Korobeynikov2008-03-231-5/+4
| | | | llvm-svn: 48706
* Code cleanup. Provide generic way of selecting JIT pointer bitwidth regardlessAnton Korobeynikov2008-03-231-22/+30
| | | | | | of compiler used. llvm-svn: 48702
* Remove old-standing obsolete code.Anton Korobeynikov2008-03-231-9/+11
| | | | llvm-svn: 48701
* Unbreak build with gcc 4.3: provide missed includes and silence most ↵Anton Korobeynikov2008-02-201-0/+1
| | | | | | annoying warnings. llvm-svn: 47367
* Silence warning about loss of precision.Bill Wendling2008-01-081-1/+1
| | | | llvm-svn: 45731
* X86 JIT PIC jumptable support.Evan Cheng2008-01-051-0/+6
| | | | llvm-svn: 45616
* X86 PIC JIT support fixes: encoding bugs, add lazy pointer stubs support.Evan Cheng2008-01-041-0/+12
| | | | llvm-svn: 45575
* Remove attribution from file headers, per discussion on llvmdev.Chris Lattner2007-12-291-2/+2
| | | | llvm-svn: 45418
* Erm, really disable :)Anton Korobeynikov2007-12-221-1/+1
| | | | llvm-svn: 45319
* Disable, until we'll really need itAnton Korobeynikov2007-12-221-0/+3
| | | | llvm-svn: 45318
* Preliminary PIC JIT support for X86 (32-bit) / Darwin.Evan Cheng2007-12-221-1/+8
| | | | llvm-svn: 45313
* Correct typo for Linux: s/esp/%rsp/Scott Michel2007-12-121-1/+1
| | | | llvm-svn: 44904
* Hey, English is not my native language :)Anton Korobeynikov2007-12-101-1/+1
| | | | llvm-svn: 44820
* Clarify the need of CFI() stuffAnton Korobeynikov2007-12-101-0/+3
| | | | llvm-svn: 44819
* Provide convenient way to disable CFI stuff for old/broken assemblers.Anton Korobeynikov2007-12-101-70/+76
| | | | | | Use it for Darwin. llvm-svn: 44818
* Disable cfi directives for now, darwin does't support them.Chris Lattner2007-12-101-67/+70
| | | | | | | | | | | These should probably be something like: CFI(".cfi_def_cfa_offset 16\n") where CFI is defined to a noop on darwin and other platforms that don't support those directives. llvm-svn: 44803
* And finally annotate X86-64 version of callback. Anton Korobeynikov2007-12-101-24/+51
| | | | | | All bad stuff from SSE version is implicitely inherited :) llvm-svn: 44794
* Provide annotation for SSE version of callback. It's even moreAnton Korobeynikov2007-12-101-1/+26
| | | | | | broken, because doesn't mark xmm regs properly llvm-svn: 44793
* Annotate JIT callback function with call frame infromation. Anton Korobeynikov2007-12-101-1/+19
| | | | | | | This will allow us (theoretically) to unwind through JITer. The code wasn't verified, so I'm pretty sure offsets are wrong :) llvm-svn: 44792
* Oops.Evan Cheng2007-03-141-1/+1
| | | | llvm-svn: 35104
* x86-64 JIT stub codegen.Evan Cheng2007-03-141-0/+11
| | | | llvm-svn: 35096
* Preliminary support for X86-64 JIT stub codegen.Evan Cheng2007-03-141-3/+35
| | | | llvm-svn: 35095
* Save all registers by default, as they can be used to pass parametersAnton Korobeynikov2007-01-291-13/+11
| | | | | | for "inreg" calls llvm-svn: 33631
* - Fix X86-64 JIT by temporarily disabling code that treats GV address as 32-bitEvan Cheng2006-12-051-0/+3
| | | | | | | | immediate in small code model. The JIT cannot ensure GV's are placed in the lower 4G. - Some preliminary support for large code model. llvm-svn: 32215
* Removed even more std::cerr and #include <iostream> things.Bill Wendling2006-11-171-6/+5
| | | | llvm-svn: 31813
* Align stubs on 4 byte boundary. This fixes 447.dealII.Evan Cheng2006-11-161-2/+2
| | | | llvm-svn: 31790
* One more try.Evan Cheng2006-10-161-4/+6
| | | | llvm-svn: 30992
* Unbreak x86-64 build.Evan Cheng2006-10-161-2/+9
| | | | llvm-svn: 30990
* Added a X86CompilationCallback variant which saves XMM argument registers ↵Evan Cheng2006-10-161-1/+58
| | | | | | for targets with SSE. llvm-svn: 30986
* Use __USER_LABEL_PREFIX__ to get the prefix added by the current host.Chris Lattner2006-09-081-15/+14
| | | | llvm-svn: 30190
* Committing X86-64 support.Evan Cheng2006-09-081-10/+69
| | | | llvm-svn: 30177
* Resolve BB references with relocation.Evan Cheng2006-07-271-10/+0
| | | | llvm-svn: 29351
* - Refactor the code that resolve basic block references to a TargetJITInfoEvan Cheng2006-07-251-0/+10
| | | | | | | | | | method. - Added synchronizeICache() to TargetJITInfo. It is called after each block of code is emitted to flush the icache. This ensures correct execution on targets that have separate dcache and icache. - Added PPC / Mac OS X specific code to do icache flushing. llvm-svn: 29276
* Fix JIT on non MacOS X i386 systems.Evan Cheng2006-07-051-4/+0
| | | | llvm-svn: 28992
* Let X86CompilationCallback pass previous frame and return address to ↵Evan Cheng2006-06-291-10/+7
| | | | | | X86CompilationCallback2. Remove alloca hack. llvm-svn: 28982
* Simplify X86CompilationCallback: always align to 16-byte boundary; don't ↵Evan Cheng2006-06-241-14/+16
| | | | | | save EAX/EDX if unnecessary. llvm-svn: 28910
* Silence -pedantic warning.Chris Lattner2006-06-011-1/+3
| | | | llvm-svn: 28630
* Patches to make the LLVM sources more -pedantic clean. Patch providedChris Lattner2006-05-241-1/+1
| | | | | | by Anton Korobeynikov! This is a step towards closing PR786. llvm-svn: 28447
OpenPOWER on IntegriCloud