summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/PowerPC/tls-ld-obj.ll
Commit message (Collapse)AuthorAgeFilesLines
* Convert another llc -filetype=obj test.Rafael Espindola2013-10-281-34/+0
| | | | llvm-svn: 193547
* Change how we iterate over relocations on ELF.Rafael Espindola2013-05-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | For COFF and MachO, sections semantically have relocations that apply to them. That is not the case on ELF. In relocatable objects (.o), a section with relocations in ELF has offsets to another section where the relocations should be applied. In dynamic objects and executables, relocations don't have an offset, they have a virtual address. The section sh_info may or may not point to another section, but that is not actually used for resolving the relocations. This patch exposes that in the ObjectFile API. It has the following advantages: * Most (all?) clients can handle this more efficiently. They will normally walk all relocations, so doing an effort to iterate in a particular order doesn't save time. * llvm-readobj now prints relocations in the same way the native readelf does. * probably most important, relocations that don't point to any section are now visible. This is the case of relocations in the rela.dyn section. See the updated relocation-executable.test for example. llvm-svn: 182908
* Replace coff-/elf-dump with llvm-readobjNico Rieck2013-04-121-27/+11
| | | | llvm-svn: 179361
* This patch removes some nondeterminism from direct object file outputBill Schmidt2012-12-141-4/+0
| | | | | | | | | | for TLS dynamic models on 64-bit PowerPC ELF. The default sort routine for relocations only sorts on the r_offset field; but with TLS, there can be two relocations with the same r_offset. For PowerPC, this patch sorts secondarily on descending r_type, which matches the behavior expected by the linker. llvm-svn: 170237
* The ordering of two relocations on the same instruction is apparently notBill Schmidt2012-12-121-3/+8
| | | | | | | | predictable when compiled on at least one non-PowerPC host. Source of nondeterminism not apparent. Restrict the test to build on PowerPC hosts for now while looking into the issue further. llvm-svn: 170016
* This patch implements local-dynamic TLS model support for the 64-bitBill Schmidt2012-12-121-0/+49
PowerPC target. This is the last of the four models, so we now have full TLS support. This is mostly a straightforward extension of the general dynamic model. I had to use an additional Chain operand to tie ADDIS_DTPREL_HA to the register copy following ADDI_TLSLD_L; otherwise everything above the ADDIS_DTPREL_HA appeared dead and was removed. As before, there are new test cases to test the assembly generation, and the relocations output during integrated assembly. The expected code gen sequence can be read in test/CodeGen/PowerPC/tls-ld.ll. There are a couple of things I think can be done more efficiently in the overall TLS code, so there will likely be a clean-up patch forthcoming; but for now I want to be sure the functionality is in place. Bill llvm-svn: 170003
OpenPOWER on IntegriCloud