aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target/ARM/ARMAsmBackend.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Support the "target" encodings for the CB[N]Z instructions.Bill Wendling2010-12-081-0/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121308 91177308-0d34-0410-b5e6-96231b3b80d8
* Tweak ARM fixup value adjustments for Thumb to better handle the half-wordJim Grosbach2010-12-081-8/+15
| | | | | | ordering of thumb mode. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121280 91177308-0d34-0410-b5e6-96231b3b80d8
* Improve comment.Owen Anderson2010-12-081-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121272 91177308-0d34-0410-b5e6-96231b3b80d8
* Add initializer.Jim Grosbach2010-12-081-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121262 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for loading from a constant pool.Bill Wendling2010-12-081-2/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121226 91177308-0d34-0410-b5e6-96231b3b80d8
* Let target asm backends see assembler flags as they go by. Use that to handleJim Grosbach2010-12-081-5/+28
| | | | | | thumb vs. arm mode differences in WriteNopData(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121219 91177308-0d34-0410-b5e6-96231b3b80d8
* Simplify the byte reordering logic slightly.Owen Anderson2010-12-081-4/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121216 91177308-0d34-0410-b5e6-96231b3b80d8
* VLDR fixups need special handling under Thumb. While the encoding is the same,Owen Anderson2010-12-081-0/+12
| | | | | | | the order of the bytes in the data stream is flipped around. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121215 91177308-0d34-0410-b5e6-96231b3b80d8
* Cleanup in the Darwin end. No functionality change.Bill Wendling2010-12-071-5/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121198 91177308-0d34-0410-b5e6-96231b3b80d8
* A bit of cleanup: early exit ApplyFixup and cache the Fixup offset. NoBill Wendling2010-12-071-13/+14
| | | | | | | functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121195 91177308-0d34-0410-b5e6-96231b3b80d8
* Add fixup for Thumb1 BL/BLX instructions.Jim Grosbach2010-12-061-7/+23
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121072 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove the instruction fragment to data fragment lowering since it was causingRafael Espindola2010-12-061-9/+9
| | | | | | freed data to be read. I will open a bug to track it being reenabled. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121028 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove unused variable.Benjamin Kramer2010-12-031-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120836 91177308-0d34-0410-b5e6-96231b3b80d8
* fix ARM::fixup_arm_branch, cleanup, and share more code between ELF and DarwinJason W Kim2010-12-031-23/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120832 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for binary encoding of ARM 'adr' instructions referencing constantJim Grosbach2010-12-021-3/+18
| | | | | | pool entries (LEApcrel pseudo). Ongoing saga of rdar://8542291. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120635 91177308-0d34-0410-b5e6-96231b3b80d8
* fixing style nit: move class static to global staticJason W Kim2010-12-011-42/+41
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120619 91177308-0d34-0410-b5e6-96231b3b80d8
* Add correct encodings for STRD and LDRD, including fixup support. ↵Owen Anderson2010-12-011-2/+2
| | | | | | Additionally, update these to unified syntax. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120589 91177308-0d34-0410-b5e6-96231b3b80d8
* kill trailing spaceJason W Kim2010-12-011-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120586 91177308-0d34-0410-b5e6-96231b3b80d8
* 10 bits, not 12.Jim Grosbach2010-12-011-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120584 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove "comparison of integers of different signs" warning by making theBill Wendling2010-12-011-1/+1
| | | | | | | variable unsigned. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120541 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM/MC/ELF relocation "hello world" for movw/movt.Jason W Kim2010-12-011-44/+75
| | | | | | | | | | | | | Lifted adjustFixupValue() from Darwin for sharing w ELF. Test added TODO: refactor ELFObjectWriter::RecordRelocation more. Possibly share more code with Darwin? Lots more relocations... git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120534 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix handling of ARM negative pc-relative fixups for loads and stores.Jim Grosbach2010-11-301-5/+27
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120480 91177308-0d34-0410-b5e6-96231b3b80d8
* MC/Mach-O: Switch to using MachOFormat.h.Daniel Dunbar2010-11-271-3/+4
| | | | | | - I'm leaving MachO.h, because I believe it has external consumers, but I would really like to eliminate it (we have stylistic disagreements with one another). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120187 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove the unused TheTarget member.Rafael Espindola2010-11-261-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120168 91177308-0d34-0410-b5e6-96231b3b80d8
* make isVirtualSection a virtual method on MCSection. Chris' suggestion.Rafael Espindola2010-11-171-12/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119547 91177308-0d34-0410-b5e6-96231b3b80d8
* tidy upChris Lattner2010-11-171-8/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119462 91177308-0d34-0410-b5e6-96231b3b80d8
* MC: Simplify Mach-O and ELF object writer implementations.Daniel Dunbar2010-11-131-8/+7
| | | | | | - What was I thinking????? git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118992 91177308-0d34-0410-b5e6-96231b3b80d8
* Start of support for binary emit of 16-it Thumb instructions.Jim Grosbach2010-11-111-4/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118859 91177308-0d34-0410-b5e6-96231b3b80d8
* Encoding of destination fixup for ARM branch and conditional branchJim Grosbach2010-11-111-6/+8
| | | | | | instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118801 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM .word data fixups don't need an adjustment.Jim Grosbach2010-11-091-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118586 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for a few simple fixups to the ARM Darwin asm backend. This allowsJim Grosbach2010-11-091-2/+34
| | | | | | | | | | | | | | | | constant pool references and global variable refernces to resolve properly for object file generation. For example, int x; void foo(unsigned a, unsigned *p) { p[a] = x; } can now be successfully compiled directly to an (ARM mode) object file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118469 91177308-0d34-0410-b5e6-96231b3b80d8
* Enable MachO writing for ARM/Darwin. Lots of stuff still doesn't workJim Grosbach2010-11-051-1/+0
| | | | | | (relocations, e.g.), but this will allow simple things to flow through. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118289 91177308-0d34-0410-b5e6-96231b3b80d8
* Allow targets to specify the MachO CPUType/CPUSubtype information.Jim Grosbach2010-11-051-1/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118288 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for emitting ARM file attributes.Rafael Espindola2010-10-251-2/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117275 91177308-0d34-0410-b5e6-96231b3b80d8
* Making the e_machine configurable by the target backend in ELFObjectWriter.Wesley Peck2010-10-221-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117099 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a MCObjectFormat class so that code common to all targets that use aRafael Espindola2010-10-161-2/+13
| | | | | | | | | | | | single object format can be shared. This also adds support for mov zed+(bar-foo), %eax on ELF and COFF targets. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116675 91177308-0d34-0410-b5e6-96231b3b80d8
* Move getPointerSize() to the base class since it's not dependent on MachOJim Grosbach2010-09-301-8/+4
| | | | | | vs. ELF git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115180 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove extraneous ';'Jim Grosbach2010-09-301-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115176 91177308-0d34-0410-b5e6-96231b3b80d8
* Adds getPointerSize() to the AsmBackend which will be needed by the final patchKevin Enderby2010-09-301-0/+8
| | | | | | | for the dwarf .loc support to emit dwarf line number tables. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115153 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix two tiny issues (ARM does not need COFF) and comment sanity.Jason W Kim2010-09-301-2/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115147 91177308-0d34-0410-b5e6-96231b3b80d8
* trailing whitespaceJim Grosbach2010-09-301-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115136 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove misplaced ';'. Make buildbots happy, hopefully.Jim Grosbach2010-09-301-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115135 91177308-0d34-0410-b5e6-96231b3b80d8
* I added a new file ARMAsmBackend which stubs out in similar ways toJason W Kim2010-09-301-0/+143
the eqv X86 class. For now, I split the ELFARMAsmBackend from the DarwinARMAsmBackend (also mimicking X86) Tested against -r115126 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115129 91177308-0d34-0410-b5e6-96231b3b80d8