summaryrefslogtreecommitdiffstats
path: root/llvm/test/ExecutionEngine/MCJIT
Commit message (Collapse)AuthorAgeFilesLines
...
* Trying again with PIC tests for MCJITAndrew Kaylor2013-08-199-0/+252
| | | | llvm-svn: 188730
* Reverting r188709 until I can figure out the proper way to XFAIL it.Andrew Kaylor2013-08-199-252/+0
| | | | llvm-svn: 188715
* Adding tests for PIC with MCJITAndrew Kaylor2013-08-199-0/+252
| | | | llvm-svn: 188709
* [tests] Cleanup initialization of test suffixes.Daniel Dunbar2013-08-162-19/+3
| | | | | | | | | | | | | | | | | - Instead of setting the suffixes in a bunch of places, just set one master list in the top-level config. We now only modify the suffix list in a few suites that have one particular unique suffix (.ml, .mc, .yaml, .td, .py). - Aside from removing the need for a bunch of lit.local.cfg files, this enables 4 tests that were inadvertently being skipped (one in Transforms/BranchFolding, a .s file each in DebugInfo/AArch64 and CodeGen/PowerPC, and one in CodeGen/SI which is now failing and has been XFAILED). - This commit also fixes a bunch of config files to use config.root instead of older copy-pasted code. llvm-svn: 188513
* [mips] Remove XFAIL from test-ptr-reloc-remote.llPetar Jovanovic2013-07-241-1/+0
| | | | | | | The change r187019 has fixed multiple relocations in dynamic linker for MIPS, so now this test passes for MIPS. llvm-svn: 187053
* Enable mcjit tests on ppc64 when building with cmake.Rafael Espindola2013-06-031-1/+3
| | | | llvm-svn: 183143
* ARM: use pristine object file while processing relocationsTim Northover2013-05-283-3/+3
| | | | | | | | | | | | | | Previously we would read-modify-write the target bits when processing relocations for the MCJIT. This had the problem that when relocations were processed multiple times for the same object file (as they can be), the result is not idempotent and the values became corrupted. The solution to this is to take any bits used in the destination from the pristine object file as LLVM emitted it. This should fix PR16013 and remote MCJIT on ARM ELF targets. llvm-svn: 182800
* Disable remote MCJIT on pre-v6 ARMRenato Golin2013-05-201-0/+11
| | | | llvm-svn: 182235
* Invalidate instruction cache when setting memory to be executable.Tim Northover2013-05-195-15/+4
| | | | | | | | | lli's remote MCJIT code calls setExecutable just prior to running code. In line with Darwin behaviour this seems to be the place to invalidate any caches needed so that relocations can take effect properly. llvm-svn: 182213
* Unsupported remote JIT on ARMRenato Golin2013-05-189-6/+17
| | | | llvm-svn: 182201
* XFAIL this test for mingw too.Rafael Espindola2013-05-131-1/+1
| | | | llvm-svn: 181678
* XFAILing this test on Win32 to unbreak the build bots.Aaron Ballman2013-05-101-1/+1
| | | | llvm-svn: 181600
* PowerPC: Fix unimplemented relocation on ppc64Adhemerval Zanella2013-05-061-1/+1
| | | | | | | This patch handles the R_PPC64_REL64 relocation type for powerpc64 for mcjit. llvm-svn: 181220
* [SystemZ] Set up JIT/MCJIT test casesUlrich Weigand2013-05-061-2/+2
| | | | | | | | | | | This patch adds the necessary configuration bits and #ifdef's to set up the JIT/MCJIT test cases for SystemZ. Like other recent targets, we do fully support MCJIT, but do not support the old JIT at all. Set up the lit config files accordingly, and disable old-JIT unit tests. Patch by Richard Sandiford. llvm-svn: 181207
* Free the exception object. Should fix the vg bots.Rafael Espindola2013-05-061-0/+5
| | | | llvm-svn: 181195
* XFAIL for cygwin.Rafael Espindola2013-05-061-1/+1
| | | | | | | Looks like symbol resolution is not working on cygwin, the test fails because __gxx_personality_v0 is not found. llvm-svn: 181179
* This should also fail on ARM.Rafael Espindola2013-05-051-1/+1
| | | | | | We currently have no way to register new eh frames on ARM. llvm-svn: 181172
* Fix XFAIL line.Rafael Espindola2013-05-051-1/+1
| | | | llvm-svn: 181171
* XFAIL this on ppc64.Rafael Espindola2013-05-051-0/+1
| | | | | | It looks like eh uses an unimplemented relocation on pp64 llvm-svn: 181169
* Add EH support to the MCJIT.Rafael Espindola2013-05-051-0/+26
| | | | | | | | | This gets exception handling working on ELF and Macho (x86-64 at least). Other than the EH frame registration, this patch also implements support for GOT relocations which are used to locate the personality function on MachO. llvm-svn: 181167
* AArch64: enable MCJIT and tests now that everything passes.Tim Northover2013-05-041-3/+4
| | | | | | | This removes dire warnings about AArch64 being unsupported and enables the tests when appropriate on this platform. llvm-svn: 181135
* Fix Addend computation for non external relocations on Macho.Rafael Espindola2013-04-301-0/+12
| | | | llvm-svn: 180790
* Collect the Addend for external relocs.Rafael Espindola2013-04-301-1/+0
| | | | | | | This fixes 2013-04-04-RelocAddend.ll. We don't have a testcase for non external relocs with an Addend. I will try to write one. llvm-svn: 180767
* Add getSymbolAlignment to the ObjectFile interface.Rafael Espindola2013-04-291-1/+0
| | | | | | | | | | | | | For regular object files this is only meaningful for common symbols. An object file format with direct support for atoms should be able to provide alignment information for all symbols. This replaces getCommonSymbolAlignment and fixes test-common-symbols-alignment.ll on darwin. This also includes a fix to MachOObjectFile::getSymbolFlags. It was marking undefined symbols as common (already tested by existing mcjit tests now that it is used). llvm-svn: 180736
* Disable the MCJIT tests on 32 bit darwin.Rafael Espindola2013-04-291-0/+3
| | | | | | | I recently enabled them on 32 and 64 bit darwin, but it looks like 32 bit is still fairly broken. llvm-svn: 180730
* Propagate relocation info to resolveRelocation.Rafael Espindola2013-04-294-4/+4
| | | | | | This gets most of the MCJITs tests passing with MachO. llvm-svn: 180716
* Rewrite test/ExecutionEngine tests to use FileCheck instead of grepEli Bendersky2013-04-082-3/+5
| | | | llvm-svn: 179043
* Respect Addend when processing MCJIT relocations to local/global symbols.Ulrich Weigand2013-04-051-0/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the RuntimeDyldELF::processRelocationRef routine finds the target symbol of a relocation in the local or global symbol table, it performs a section-relative relocation: Value.SectionID = lsi->second.first; Value.Addend = lsi->second.second; At this point, however, any Addend that might have been specified in the original relocation record is lost. This is somewhat difficult to trigger for relocations within the code section since they usually do not contain non-zero Addends (when built with the default JIT code model, in any case). However, the problem can be reliably triggered by a relocation within the data section caused by code like: int test[2] = { -1, 0 }; int *p = &test[1]; The initializer of "p" will need a relocation to "test + 4". On platforms using RelA relocations this means an Addend of 4 is required. Current code ignores this addend when processing the relocation, resulting in incorrect execution. Fixed by taking the Addend into account when processing relocations to symbols found in the local or global symbol table. Tested on x86_64-linux and powerpc64-linux. llvm-svn: 178869
* Corrections for XFAIL armv5 testsRenato Golin2013-02-282-2/+1
| | | | | | | | | Most of the tests that behave differently on llvm-arm-linux buildbot did so becase the triple wasn't set correctly to armv5, so we can revert most of the special behaviour added previously. Some tests still need the special treatment, though. llvm-svn: 176243
* Proper XFAILs for ARMv7 / v5Renato Golin2013-02-263-2/+3
| | | | llvm-svn: 176095
* Introduce llvm::sys::getProcessTriple() function.Peter Collingbourne2013-01-1659-59/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | In r143502, we renamed getHostTriple() to getDefaultTargetTriple() as part of work to allow the user to supply a different default target triple at configure time. This change also affected the JIT. However, it is inappropriate to use the default target triple in the JIT in most circumstances because this will not necessarily match the current architecture used by the process, leading to illegal instruction and other such errors at run time. Introduce the getProcessTriple() function for use in the JIT and its clients, and cause the JIT to use it. On architectures with a single bitness, the host and process triples are identical. On other architectures, the host triple represents the architecture of the host CPU, while the process triple represents the architecture used by the host CPU to interpret machine code within the current process. For example, when executing 32-bit code on a 64-bit Linux machine, the host triple may be 'x86_64-unknown-linux-gnu', while the process triple may be 'i386-unknown-linux-gnu'. This fixes JIT for the 32-on-64-bit (and vice versa) build on non-Apple platforms. Differential Revision: http://llvm-reviews.chandlerc.com/D254 llvm-svn: 172627
* llvm/test/ExecutionEngine/MCJIT/lit.local.cfg: ppc32-elf is not ready.NAKAMURA Takumi2012-11-201-0/+3
| | | | llvm-svn: 168364
* Marking remote mcjit tests as XFAIL for MIPS.Simon Atanasyan2012-11-207-7/+7
| | | | llvm-svn: 168357
* Enable MCJIT tests on PowerPC.Ulrich Weigand2012-11-191-2/+3
| | | | | | Disable old JIT tests on PowerPC. llvm-svn: 168316
* MCJIT: [cygming] Give noop to __main also in RecordingMemoryManger. It is ↵NAKAMURA Takumi2012-11-187-7/+7
| | | | | | | | emitted in @main(). XFAIL(s) can be removed. llvm-svn: 168282
* test/ExecutionEngine/MCJIT/stubs-remote.ll: Prune DOSish CRLF.NAKAMURA Takumi2012-11-181-36/+36
| | | | llvm-svn: 168281
* Marking remote mcjit tests as XFAIL for cygwin (hopefully only temporarily).Andrew Kaylor2012-11-172-2/+2
| | | | llvm-svn: 168226
* Marking remote mcjit tests as XFAIL for mingw32 (hopefully only temporarily).Andrew Kaylor2012-11-167-7/+7
| | | | llvm-svn: 168221
* Marking remote mcjit tests as XFAIL for ARM (hopefully only temporarily).Andrew Kaylor2012-11-167-0/+7
| | | | llvm-svn: 168210
* Adding new tests to test lli's pseudo-remote feature (-remote-mcjit).Andrew Kaylor2012-11-167-0/+220
| | | | llvm-svn: 168180
* Add MCJIT test case for running global constructors.Amara Emerson2012-11-161-0/+21
| | | | llvm-svn: 168149
* Align the data section correctly when loading an ELF file.Tim Northover2012-10-291-0/+15
| | | | | | Patch by Amara Emerson. llvm-svn: 166920
* Make use of common-symbol alignment info in ELF loader.Tim Northover2012-10-291-0/+32
| | | | | | Patch by Amara Emerson. llvm-svn: 166919
* Enable llvm/test/ExecutionEngine/MCJIT also for cygwin.NAKAMURA Takumi2012-10-051-1/+1
| | | | llvm-svn: 165313
* Implement .rel relocation for R_ARM_ABS32 in MCJIT.Tim Northover2012-10-031-0/+16
| | | | | | Patch by Amara Emerson. llvm-svn: 165128
* test/ExecutionEngine/MCJIT: MCJIT should work also on mingw.NAKAMURA Takumi2012-10-031-1/+1
| | | | | FIXME: Also cygwin? llvm-svn: 165081
* Support for generating ELF objects on Windows.Andrew Kaylor2012-10-0249-49/+49
| | | | | | This adds 'elf' as a recognized target triple environment value and overrides the default generated object format on Windows platforms if that value is present. This patch also enables MCJIT tests on Windows using the new environment value. llvm-svn: 165030
* Revert "Enable MCJIT tests on Darwin."Jim Grosbach2012-09-061-1/+1
| | | | | | | | This reverts commit 163278. Works OK on x86_64, but not i386. Will re-enable when that's cleared up. llvm-svn: 163290
* Enable MCJIT tests on Darwin.Jim Grosbach2012-09-061-1/+1
| | | | llvm-svn: 163278
* Should put test case under test/ExecutionEngine/MCJIT/Michael Liao2012-08-301-0/+88
| | | | llvm-svn: 162885
OpenPOWER on IntegriCloud