summaryrefslogtreecommitdiffstats
path: root/llvm/test/ExecutionEngine
Commit message (Collapse)AuthorAgeFilesLines
* [MIPS][LLVM-MC] Fix Disassemble of Negative OffsetSagar Thakur2016-05-242-4/+4
| | | | | | | | | | | Patch by Nitesh Jain. Summary: The type of Imm in MipsDisassembler.cpp was incorrect since SignExtend64 return int64_t type.As per the MIPSr6 doc ,the offset is added to the address of the instruction following the branch (not the branch itself), to form a PC-relative effective target address hence “4” is added to the offset. The offset of some test case are update to reflect the changes due to “ + 4 ” offset and new test case for negative offset are added. Reviewers: dsanders, vkalintiris Differential Revision: http://reviews.llvm.org/D17540 llvm-svn: 270542
* [RuntimeDyld][MachO] Add support for SUBTRACTOR relocations between anonymousLang Hames2016-05-191-3/+27
| | | | | | symbols on x86-64. llvm-svn: 270157
* Don't pass relocation-model= to tests that don't need it.Rafael Espindola2016-05-1815-34/+34
| | | | | | | Very few things in MC itself use the option. Most of the code that that uses it could be move to CodeGen. llvm-svn: 269871
* Disable test from r269436 on unsupported platformsSteven Wu2016-05-131-0/+3
| | | | | | | | Fixing bots failure. test/ExecutionEngine/RuntimeDyld/SystemZ/cfi-relo-pc64.s requires SystemZ backend. Mark the test as unsupported if the backend is not available. llvm-svn: 269470
* [RuntimeDyld] Support R_390_PC64 relocation typeBryan Chan2016-05-132-0/+33
| | | | | | | | | | | | Summary: When the MCJIT generates ELF code, some DWARF data requires 64-bit PC-relative relocation (R_390_PC64). This patch adds support for R_390_PC64 relocation to RuntimeDyld::resolveSystemZRelocation, to avoid an assertion failure. Reviewers: uweigand Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D20033 llvm-svn: 269436
* [powerpc] mark JIT tests as UNSUPPORTED on powerpc64 big endianBill Seurer2016-04-2624-48/+72
| | | | | | | | | | | | | Some of the JIT tests began failing with "[llvm] r266663 - [Orc] Re-commit r266581 with fixes for MSVC, and format cleanups." on powerpc64 big endian. To get the buildbots running I am marking these as UNSUPPORTED for now. If this is fixed remove the UNSUPPORTED flag "powerpc64-unknown-linux-gnu". In r267516 I marked these as XFAIL but they succeed on some of the bots on stage1. llvm-svn: 267518
* [powerpc] mark JIT tests as XFAIL on powerpc64 big endianBill Seurer2016-04-2624-24/+48
| | | | | | | | | | Some of the JIT tests began failing with "[llvm] r266663 - [Orc] Re-commit r266581 with fixes for MSVC, and format cleanups." on powerpc64 big endian. To get the buildbots running I am marking these as XFAIL for now. If this is fixed remove the XFAIL flag "powerpc64-unknown-linux-gnu". llvm-svn: 267516
* [RuntimeDyldELF] Handle GOTPCRELX/REX_GOTPCRELX.Davide Italiano2016-04-241-0/+8
| | | | llvm-svn: 267309
* Disable the new Orc lazy JIT tests on Windows, they do not passReid Kleckner2016-02-101-0/+6
| | | | llvm-svn: 260405
* [Orc] Add lazy-JITting support for i386.Lang Hames2016-02-101-1/+1
| | | | | | | | | | | This patch adds a new class, OrcI386, which contains the hooks needed to support lazy-JITing on i386 (currently only for Pentium 2 or above, as the JIT re-entry code uses the FXSAVE/FXRSTOR instructions). Support for i386 is enabled in the LLI lazy JIT and the Orc C API, and regression and unit tests are enabled for this architecture. llvm-svn: 260338
* [RuntimeDyld][MachO] Fix handling of empty eh-frame sections.Lang Hames2016-01-281-0/+7
| | | | | | | | | | This patch switches from an unguarded to a guarded loop for eh-frame record fixups. In the unguarded version we would always make at least one call to processFDE, which would then crash trying to fix up a frame that didn't exist. Fixes <rdar://problem/24301582> llvm-svn: 259103
* [RuntimeDyld][AArch64] Add support for the MachO ARM64_RELOC_SUBTRACTOR reloc.Lang Hames2016-01-211-0/+5
| | | | llvm-svn: 258438
* [JIT] Add small-code model test for ELF.Davide Italiano2016-01-181-0/+15
| | | | | | | | The coverage is almost non-existent, hopefully more will come after this. Differential Revision: http://reviews.llvm.org/D16096 llvm-svn: 258087
* Remove some stale comments and fix a typo as suggested by David Blaikie in hisLang Hames2016-01-172-2/+0
| | | | | | | | review of r257343. Thanks Dave! llvm-svn: 258002
* [Orc] Add support for EH-frame registration to the Orc Remote Target utilityLang Hames2016-01-142-0/+64
| | | | | | | | | classes. OrcRemoteTargetClient::RCMemoryManager will now register EH frames with the server automatically. This allows remote-execution of code that uses exceptions. llvm-svn: 257816
* Mark remote-JIT tests as XFAIL, as well as win32, for targeting mingw32.NAKAMURA Takumi2016-01-1422-22/+22
| | | | llvm-svn: 257732
* [Orc] XFAIL a few remote-jit test cases that I missed in r257391.Lang Hames2016-01-113-2/+3
| | | | llvm-svn: 257419
* XFAIL the LLI remote JIT tests on Win32.Lang Hames2016-01-1119-2/+19
| | | | llvm-svn: 257391
* Remove the remote-JIT small code model tests for now. They're causingLang Hames2016-01-114-48/+0
| | | | | | | | | intermittent XPASSes on some builders. These can be reinstated when we have proper support for small-code model in the JIT. llvm-svn: 257359
* XFAIL the remote small code model tests on x86. Small code model is not properlyLang Hames2016-01-114-4/+4
| | | | | | | supported, and only worked previously because we weren't really running them out-of-process. llvm-svn: 257355
* [LLI] Replace the LLI remote-JIT support with the new ORC remote-JIT components.Lang Hames2016-01-116-6/+8
| | | | | | | | The new ORC remote-JITing support provides a superset of the old code's functionality, so we can replace the old stuff. As a bonus, a couple of previously XFAILed tests have started passing. llvm-svn: 257343
* Un-XFAIL JIT EH tests under [am]san.Peter Collingbourne2015-12-158-8/+8
| | | | | | | | | | These tests started passing after libcxxabi's r255559, which fixed a problem relating to how libcxxabi links its EH library. The test failures were caused by an issue with libc++, not the sanitizers (confirmed by building a pre-r255559 revision with libc++/libc++abi and without sanitizers), so they should never have been XFAILed under the sanitizers. llvm-svn: 255708
* [RuntimeDyld] Don't allocate unnecessary stub buffer spaceSanjoy Das2015-11-232-0/+38
| | | | | | | | | | | | | | Summary: For relocation types that are known to not require stub functions, there is no need to allocate extra space for the stub functions. Reviewers: lhames, reames, maksfb Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D14676 llvm-svn: 253920
* [RuntimeDyld] Add support for R_X86_64_PC8 relocation.Maksim Panchenko2015-11-081-0/+26
| | | | llvm-svn: 252423
* RuntimeDyld: add COFF i386 supportSaleem Abdulrasool2015-11-011-0/+66
| | | | | | | This adds support for COFF I386. This is sufficient for code execution in a 32-bit JIT, though, imported symbols need to custom lowered for the redirection. llvm-svn: 251761
* [RuntimeDyld][COFF] Fix a think-o in the handling of the IMAGE_REL_AMD64_ADDR64Lang Hames2015-10-231-0/+6
| | | | | | relocation that was introduced in r250733. llvm-svn: 251135
* [RuntimeDyld] Ignore ST_FILE symbols when constructing GlobalSymbolTableKeno Fischer2015-10-213-0/+19
| | | | | | | | | | | | | | Summary: ELF's STT_File symbols may overlap with regular globals in other files, so we should ignore them here in order to avoid having bogus entries in the symbol table that confuse us when resolving relocations. Reviewers: lhames Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D13888 llvm-svn: 250942
* [RuntimeDyld][COFF] Fix some endianness issues, re-enable the regression test.Lang Hames2015-10-191-0/+0
| | | | llvm-svn: 250733
* [RuntimeDyld] Add support for absolute symbols.Lang Hames2015-10-181-1/+6
| | | | llvm-svn: 250639
* [RuntimeDyld] Drop the '.s' suffix off the COFF test case - the MIPS bot startedLang Hames2015-10-151-0/+0
| | | | | | | | | failing when the suffix was added. I assume the lack of a '.s' suffix means that the test case just wasn't running before, and it has never worked on MIPS. I'll investigate that tomorrow. llvm-svn: 250376
* [RuntimeDyld] Don't try to get the contents of sections that don't have anyLang Hames2015-10-151-1/+4
| | | | | | | | | | | (e.g. bss sections). MachO and ELF have been silently letting this pass, but COFFObjectFile contains an assertion to catch this kind of (ab)use of the getSectionContents, and this was causing the JIT to crash on COFF objects with BSS sections. This patch should fix that. llvm-svn: 250371
* [Orc] Teach the CompileOnDemand layer to clone aliases.Lang Hames2015-10-061-0/+21
| | | | | | | | This allows modules containing aliases to be lazily jit'd. Previously these failed with missing symbol errors because the aliases weren't cloned from the original module. llvm-svn: 249481
* [RuntimeDyld] Support non-zero addends for the MachO X86_64 SUBTRACTOR reloc.Lang Hames2015-09-101-2/+2
| | | | | | This functionality was accidentally left out of r247119. llvm-svn: 247336
* [RuntimeDyld] Add support for MachO x86_64 SUBTRACTOR relocation.Lang Hames2015-09-091-0/+13
| | | | llvm-svn: 247119
* [mips64][mcjit] Add N64R6 relocations tests and fix N64R2 testsPetar Jovanovic2015-08-282-2/+60
| | | | | | | | | | | | This patch adds a test for MIPS64R6 relocations, it corrects check expressions for R_MIPS_26 and R_MIPS_PC16 relocations in MIPS64R2 test, and it adds run for big endian in MIPS64R2 test. Patch by Vladimir Radosavljevic. Differential Revision: http://reviews.llvm.org/D11217 llvm-svn: 246311
* [mips] Expand JAL instructions when PIC is enabled.Daniel Sanders2015-08-181-0/+2
| | | | | | | | | | | | | | Summary: This is the correct way to handle JAL instructions when PIC is enabled. Patch by Toma Tabacu Reviewers: seanbruno, tomatabacu Subscribers: brooks, seanbruno, emaste, llvm-commits Differential Revision: http://reviews.llvm.org/D6231 llvm-svn: 245305
* [mips][mcjit] Calculate correct addend for HI16 and PCHI16 relocPetar Jovanovic2015-08-131-2/+11
| | | | | | | | | | | Previously, for O32 ABI we did not calculate correct addend for R_MIPS_HI16 and R_MIPS_PCHI16 relocations. This patch fixes that. Patch by Vladimir Radosavljevic. Differential Revision: http://reviews.llvm.org/D11186 llvm-svn: 244897
* [RuntimeDyld][AArch64] Add explicit addends before calling relocationValueRef.Lang Hames2015-08-111-0/+12
| | | | | | relocationValueRef uses the addend, so it has to be set before the call. llvm-svn: 244574
* [SPARC] Disable unsupported ExecutionEngine tests, and XFAIL a coupleJames Y Knight2015-08-071-1/+4
| | | | | | of DebugInfo tests. llvm-svn: 244371
* [RuntimeDyld] Adapt PPC64 relocations to PPC32Hal Finkel2015-08-042-0/+50
| | | | | | | | | Begin adapting some of the implemented PPC64 relocations for PPC32 (with a test case). Patch by Pierre-Andre Saulais! llvm-svn: 243991
* [RuntimeDyld] MachO: Add support for ARM scattered vanilla relocations.Lang Hames2015-07-241-0/+7
| | | | llvm-svn: 243126
* [Mips] Add support for MCJIT for MIPS32r6Petar Jovanovic2015-07-062-0/+54
| | | | | | | | | | Add support for resolving MIPS32r6 relocations in MCJIT. Patch by Vladimir Radosavljevic. Differential Revision: http://reviews.llvm.org/D10687 llvm-svn: 241442
* Make this test a bit more interesting.Rafael Espindola2015-07-061-1/+4
| | | | | | Before every test was using a section with an address of zero. llvm-svn: 241427
* [RuntimeDyld] Skip relocations for external symbols with 64-bit address ~0ULL.Lang Hames2015-07-041-1/+12
| | | | | | | | | | | Requested by Eugene Rozenfeld of the LLILC team, this feature allows JIT clients to skip relocations for selected external symbols by returning ~0ULL from their symbol resolver. If this value is returned for a given symbol, RuntimeDyld will skip all relocations for that symbol. The client will be responsible for applying the skipped relocations manually before the code is executed. llvm-svn: 241383
* Move the personality function from LandingPadInst to FunctionDavid Majnemer2015-06-1710-20/+20
| | | | | | | | | | | | | | | | | | | The personality routine currently lives in the LandingPadInst. This isn't desirable because: - All LandingPadInsts in the same function must have the same personality routine. This means that each LandingPadInst beyond the first has an operand which produces no additional information. - There is ongoing work to introduce EH IR constructs other than LandingPadInst. Moving the personality routine off of any one particular Instruction and onto the parent function seems a lot better than have N different places a personality function can sneak onto an exceptional function. Differential Revision: http://reviews.llvm.org/D10429 llvm-svn: 239940
* [Mips64][mcjit] Add R_MIPS_PC32 relocationPetar Jovanovic2015-06-081-0/+9
| | | | | | | | | | This patch adds R_MIPS_PC32 relocation for Mips64. Patch by Vladimir Radosavljevic. Differential Revision: http://reviews.llvm.org/D10235 llvm-svn: 239301
* Re-commit r238838, r238844 with fix for host/target endian mismatch and ↵Daniel Sanders2015-06-031-0/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | windows buildbot. The windows buildbot originally failed because the check expressions are evaluated as 64-bit values, even for 32-bit symbols. Fixed this by comparing bottom 32-bits of the expressions. The host/target endian mismatch issue is that it's invalid to read/write target values using a host pointer without taking care of endian differences between the target and host. Most (if not all) instances of reinterpret_cast<uint32_t*>() in the RuntimeDyld are examples of this bug. This has been fixed for Mips using the endian aware read/write functions. The original commits were: r238838: [mips] Add RuntimeDyld tests for currently supported O32 relocations. Reviewers: petarj, vkalintiris Reviewed By: vkalintiris Subscribers: vkalintiris, llvm-commits Differential Revision: http://reviews.llvm.org/D10126 r238844: [mips][mcjit] Add support for R_MIPS_PC32. Summary: This allows us to resolve relocations for DW_EH_PE_pcrel TType encodings in the exception handling LSDA. Also fixed a nearby typo. Reviewers: petarj, vkalintiris Reviewed By: vkalintiris Subscribers: vkalintiris, llvm-commits Differential Revision: http://reviews.llvm.org/D10127 llvm-svn: 238915
* This reverts commit r238838, r238844 and r238888.Rafael Espindola2015-06-031-48/+0
| | | | | | | | Trying to bring back a windows bot: http://lab.llvm.org:8011/builders/clang-x86-win2008-selfhost/builds/1224/steps/ninja%20check%202/logs/FAIL%3A%20LLVM%3A%3AELF_O32_PIC_relocations.s llvm-svn: 238903
* [mips] XFAIL ELF_O32_PIC_relocations.s for big-endian mipsDaniel Sanders2015-06-021-0/+2
| | | | | | | The test exposes pre-existing bugs when the endian of the host and target do not match. llvm-svn: 238888
* [mips][mcjit] Add support for R_MIPS_PC32.Daniel Sanders2015-06-021-0/+6
| | | | | | | | | | | | | | | | | | Summary: This allows us to resolve relocations for DW_EH_PE_pcrel TType encodings in the exception handling LSDA. Also fixed a nearby typo. Reviewers: petarj, vkalintiris Reviewed By: vkalintiris Subscribers: vkalintiris, llvm-commits Differential Revision: http://reviews.llvm.org/D10127 llvm-svn: 238844
OpenPOWER on IntegriCloud