summaryrefslogtreecommitdiffstats
path: root/llvm/test/ExecutionEngine
Commit message (Collapse)AuthorAgeFilesLines
* Add missing Interpreter intrinsic lowering for sin, cos and ceilJosh Klontz2014-08-082-0/+22
| | | | llvm-svn: 215209
* Temporarily Revert "Nuke the old JIT." as it's not quite ready toEric Christopher2014-08-07107-84/+109
| | | | | | | | | | | be deleted. This will be reapplied as soon as possible and before the 3.6 branch date at any rate. Approved by Jim Grosbach, Lang Hames, Rafael Espindola. This reverts commits r215111, 215115, 215116, 215117, 215136. llvm-svn: 215154
* Remove a few XFAILs.Rafael Espindola2014-08-0725-25/+0
| | | | | | These tests now pass with MCJIT. llvm-svn: 215136
* Nuke the old JIT.Rafael Espindola2014-08-0782-84/+84
| | | | | | | | | I am sure we will be finding bits and pieces of dead code for years to come, but this is a good start. Thanks to Lang Hames for making MCJIT a good replacement! llvm-svn: 215111
* [MCJIT] Fix the ARM BR24 relocation in RuntimeDyldMachO.Lang Hames2014-07-301-3/+15
| | | | | | | | | | We now (1) correctly decode the branch immediate, (2) modify the immediate to corretly treat it as PC-rel, and (3) properly populate the stub entry. Previously we had been doing each of these wrong. <rdar://problem/17750739> llvm-svn: 214285
* [MCJIT] XFAIL some RuntimeDyld tests on MIPS - RuntimeDyldChecker isn't properlyLang Hames2014-07-292-0/+2
| | | | | | endian-aware yet, and this is causing failures when cross-linking on MIPS. llvm-svn: 214231
* [MCJIT] Make the RuntimeDyldChecker stub_addr builtin use file names rather thanLang Hames2014-07-292-10/+7
| | | | | | | | | | full paths for its first argument. This allows us to remove the annoying sed lines in the test cases, and write direct references to file names in stub_addr calls (rather than <filename> placeholders). llvm-svn: 214211
* [RuntimeDyld][AArch64] Make encode/decodeAddend also work on big-endian hosts.Juergen Ributzka2014-07-291-1/+0
| | | | llvm-svn: 214205
* [MCJIT] Remove extraneous parentheses in test case.Lang Hames2014-07-281-2/+2
| | | | llvm-svn: 214117
* [RuntimeDyld][AArch64] Update relocation tests and also add a simple GOT test.Juergen Ributzka2014-07-231-25/+40
| | | | llvm-svn: 213807
* Rework to let RuntimeDyld/X86/MachO_x86-64_PIC_relocations.s pass on win32.NAKAMURA Takumi2014-07-231-4/+1
| | | | | | | FIXME: "llvm-rtdyld -verify -check" is still sensitive to path separator. Fix searching StubMap to be tolerant of both '/' and '\\' on Win32. llvm-svn: 213723
* Suppress a test on win32 for now, ↵NAKAMURA Takumi2014-07-231-0/+3
| | | | | | | llvm/test/ExecutionEngine/RuntimeDyld/X86/MachO_x86-64_PIC_relocations.s. FIXME: Fix searching StubMap with '/' and '\\' on Win32. llvm-svn: 213721
* RuntimeDyld/X86/MachO_x86-64_PIC_relocations.s: Use %/T here, or sed(1) ↵NAKAMURA Takumi2014-07-231-1/+1
| | | | | | would be confused with dos path. llvm-svn: 213720
* XFAIL the test on MIPSJuergen Ributzka2014-07-221-0/+1
| | | | | | Not sure how to debug this one without a MIPS machine. Any takers? llvm-svn: 213705
* [MCJIT] Refactor and add stub inspection to the RuntimeDyldChecker framework.Lang Hames2014-07-221-4/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch introduces a 'stub_addr' builtin that can be used to find the address of the stub for a given (<file>, <section>, <symbol>) tuple. This address can be used both to verify the contents of stubs (by loading from the returned address) and to verify references to stubs (by comparing against the returned address). Example (1) - Verifying stub contents: Load 8 bytes (assuming a 64-bit target) from the stub for 'x' in the __text section of f.o, and compare that value against the addres of 'x'. # rtdyld-check: *{8}(stub_addr(f.o, __text, x) = x Example (2) - Verifying references to stubs: Decode the immediate of the instruction at label 'l', and verify that it's equal to the offset from the next instruction's PC to the stub for 'y' in the __text section of f.o (i.e. it's the correct PC-rel difference). # rtdyld-check: decode_operand(l, 4) = stub_addr(f.o, __text, y) - next_pc(l) l: movq y@GOTPCREL(%rip), %rax Since stub inspection requires cooperation with RuntimeDyldImpl this patch pimpl-ifies RuntimeDyldChecker. Its implementation is moved in to a new class, RuntimeDyldCheckerImpl, that has access to the definition of RuntimeDyldImpl. llvm-svn: 213698
* [RuntimeDyld][MachO][AArch64] Add a helper function for encoding addends in ↵Juergen Ributzka2014-07-222-0/+57
| | | | | | | | | | | | | instructions. Factor out the addend encoding into a helper function and simplify the processRelocationRef. Also add a few simple rtdyld tests. More tests to come once GOTs can be tested too. Related to <rdar://problem/17768539> llvm-svn: 213689
* [RuntimeDyld] Replace a crufty old ARM RuntimeDyld test with a new one that usesLang Hames2014-07-104-1/+30
| | | | | | | | | RuntimeDyldChecker. This allows us to remove one of the six remaining object files in the LLVM source tree. llvm-svn: 212780
* Fix this test to not write to the source tree, and instead to write toChandler Carruth2014-06-281-3/+3
| | | | | | | a temporary file. This fixes the test in cases where the source tree is mounted read-only. llvm-svn: 211975
* [RuntimeDyld] Make sure that RuntimeDyld regression tests only run for targetsLang Hames2014-06-272-0/+3
| | | | | | | | | that have been enabled. Without this, testers will fail when llvm-rtdyld is invoked with triples for unsupported targets. llvm-svn: 211969
* [RuntimeDyld] Add a framework for testing relocation logic in RuntimeDyld.Lang Hames2014-06-271-0/+32
| | | | | | | | | | | | | | | | | | | | This patch adds a "-verify" mode to the llvm-rtdyld utility. In verify mode, llvm-rtdyld will test supplied expressions against the linked program images that it creates in memory. This scheme can be used to verify the correctness of the relocation logic applied by RuntimeDyld. The expressions to test will be read out of files passed via the -check option (there may be more than one of these). Expressions to check are extracted from lines of the form: # rtdyld-check: <expression> This system is designed to fit the llvm-lit regression test workflow. It is format and target agnostic, and supports verification of images linked for remote targets. The expression language is defined in llvm/include/llvm/RuntimeDyldChecker.h . Examples can be found in test/ExecutionEngine/RuntimeDyld. llvm-svn: 211956
* [RuntimeDyld] Support more PPC64 relocationsUlrich Weigand2014-06-201-1/+1
| | | | | | | | | | This adds support for several missing PPC64 relocations in the straight-forward manner to RuntimeDyldELF.cpp. Note that this actually fixes a failure of a large-model test case on PowerPC, allowing the XFAIL to be removed. llvm-svn: 211382
* mark the old jit tests as unsupported for powerpc64 (for cmake)Will Schmidt2014-06-171-0/+3
| | | | | | | | mark the old JIT tests as unsupported for powerpc64 - CMake style. This follows the style used for hexagon/arm64/aarch64. The equivalent tests still run under the supported MCJIT/* llvm-svn: 211111
* Reduce verbiage of lit.local.cfg filesAlp Toker2014-06-091-1/+1
| | | | | | We can just split targets_to_build in one place and make it immutable. llvm-svn: 210496
* Use AArch64 instead of now removed ARM64 in test configsAlexey Samsonov2014-06-051-1/+1
| | | | llvm-svn: 210229
* Fix testers by removing dubious testcase for r209154.Lang Hames2014-05-192-1/+0
| | | | | | | | It turns out that not all the world is x86-64. Who knew? I'll get to work on a more appropriate test case for this patch. llvm-svn: 209155
* [RuntimeDyld] Fix x86-64 MachO GOT relocation handling.Lang Hames2014-05-192-0/+1
| | | | | | | | | | | For GOT relocations the addend should modify the offset to the GOT entry, not the value of the entry itself. Teach RuntimeDyldMachO to do The Right Thing here. Fixes <rdar://problem/16961886>. llvm-svn: 209154
* [ARM64] Disable regression tests for the old JIT.Tilmann Scheller2014-04-291-3/+4
| | | | | | Since the ARM64 backend doesn't implement support for the old JIT those tests are failing when the regression tests are run on an AArch64 host. llvm-svn: 207530
* Ignore old JIT tests in AARch64 - CMake styleRenato Golin2014-02-251-0/+4
| | | | llvm-svn: 202126
* PC-rel implemented in AArch64, test now passRenato Golin2014-02-121-1/+1
| | | | llvm-svn: 201243
* mips: XFAIL non-extern-addend-smallcodemodel testPetar Jovanovic2014-02-051-1/+1
| | | | | | | Small code model (and default reloc model) set Reloc::PIC_ in this test, and PIC is not yet supported in MCJIT for MIPS. llvm-svn: 200852
* Split out small-code-model MCJIT testcase in order to xfail for AArch64, whereLang Hames2014-01-312-1/+25
| | | | | | PC-rel relocations aren't yet fully implemented. llvm-svn: 200592
* Add support for PC-relative non-extern relocations to RuntimeDyldMachO.Lang Hames2014-01-291-6/+16
| | | | | | | | | Also replaces testcase for r180790 (support for absolute non-externs relocs) with a more robust version. <rdar://problem/15864721> llvm-svn: 200404
* Enable EHABI by defaultRenato Golin2014-01-299-13/+12
| | | | | | | | | | | | | | | | | | | | | | After all hard work to implement the EHABI and with the test-suite passing, it's time to turn it on by default and allow users to disable it as a work-around while we fix the eventual bugs that show up. This commit also remove the -arm-enable-ehabi-descriptors, since we want the tables to be printed every time the EHABI is turned on for non-Darwin ARM targets. Although MCJIT EHABI is not working yet (needs linking with the right libraries), this commit also fixes some relocations on MCJIT regarding the EH tables/lib calls, and update some tests to avoid using EH tables when none are needed. The EH tests in the test-suite that were previously disabled on ARM now pass with these changes, so a follow-up commit on the test-suite will re-enable them. llvm-svn: 200388
* Re-enabling MCJIT tests on ARMRenato Golin2014-01-251-2/+2
| | | | | | | | | After several refactorings on the MCJIT remote communication, things are finally looking good on Clang-compiled LLVM regarding MCJIT remote tests, so I'm re-enabling them to see how the self-hosting buildbot behaves over a longer period. llvm-svn: 200102
* Eliminate inappropriate use of FindProgramByName() from lliAlp Toker2014-01-2211-11/+11
| | | | llvm-svn: 199835
* Revert 199262 - MCJIT remote still failing on ARMRenato Golin2014-01-151-2/+2
| | | | | | | | Disabling remote MCJIT tests on ARM again, as they're still failing when self-hosting on ARM, despite all my tests. At least now we have more info on what message it's breaking and what is going on. Investigating. llvm-svn: 199310
* Re-disable MCJIT remote tests on ARMRenato Golin2014-01-151-0/+5
| | | | llvm-svn: 199309
* Re-enable remote MCJIT tests on ARMv7Renato Golin2014-01-141-5/+0
| | | | llvm-svn: 199262
* llvm/test/ExecutionEngine/MCJIT/load-object-a.ll: Put together rm(1) and ↵NAKAMURA Takumi2014-01-131-7/+2
| | | | | | mkdir(1) at the top. llvm-svn: 199077
* llvm/test/ExecutionEngine/MCJIT/load-object-a.ll: Remove "REQUIRES:shell". ↵NAKAMURA Takumi2014-01-101-2/+0
| | | | | | This doesn't depend on shell's behavior. llvm-svn: 198931
* llvm/test/ExecutionEngine/MCJIT/lit.local.cfg: Add "AMD64" in the host_arch ↵NAKAMURA Takumi2014-01-101-1/+1
| | | | | | | list. FIXME: We should not take CMake's ${CMAKE_SYSTEM_PROCESSOR}... llvm-svn: 198930
* llvm/test/ExecutionEngine/MCJIT/load-object-a.ll: Fix not to use %t.cachedir/%p.NAKAMURA Takumi2014-01-101-4/+13
| | | | | | %p is like X:\foo\bar. llvm-svn: 198926
* Add an "-object-cache-dir=<string>" option to LLI. This option specifies theLang Hames2014-01-091-11/+6
| | | | | | | | | | | root path to which object files managed by the LLIObjectCache instance should be written. This option defaults to "", in which case objects are cached in the same directory as the bitcode they are derived from. The load-object-a.ll test has been rewritten to use this option to support testing in environments where the test directory is not writable. llvm-svn: 198852
* Add missing test case for r198737.Lang Hames2014-01-081-0/+27
| | | | llvm-svn: 198772
* Remove empty MCJIT/load-object-a.ll since r196641.NAKAMURA Takumi2013-12-071-0/+0
| | | | llvm-svn: 196645
* Revert r196639 while I investigate a bot failure.Lang Hames2013-12-071-28/+0
| | | | llvm-svn: 196641
* Add support for archives and object file caching under MCJIT.Lang Hames2013-12-071-0/+28
| | | | | | Patch by Andy Kaylor, with minor edits to resolve merge conflicts. llvm-svn: 196639
* Fix lit config for disabled MCJIT tests on ARMRenato Golin2013-12-031-1/+7
| | | | | | | Separating permanent from temporary targets, added the bug that will fix the temporary (PR18057). llvm-svn: 196274
* Disable Remote MCJIT tests on ARMRenato Golin2013-12-031-2/+1
| | | | | | | | | | The communication protocol is unstable on ARM when compiled with Clang, which is disrupting the self-hosting buildbots that are going to be added this week. I'm working on a solution, but remote MCJIT is not high-priority for ARM at the moment, so it might take a while. llvm-svn: 196257
* [mips] Resolve relocation for the stubs in MCJIT when load address is knownPetar Jovanovic2013-11-197-14/+0
| | | | | | | | | | Instead of processing relocation for branch to stubs right away, emit a modified relocation and add it to queue to be resolved later when final load address is known. This resolves seven MIPS MCJIT issues that were caused by missing relocation fixups at the end. llvm-svn: 195157
OpenPOWER on IntegriCloud