summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/MBlaze
Commit message (Collapse)AuthorAgeFilesLines
...
* Remove the MCObjectFormat class.Rafael Espindola2010-12-181-8/+0
| | | | llvm-svn: 122147
* Move some data to the TargetWriter.Rafael Espindola2010-12-181-6/+5
| | | | llvm-svn: 122134
* Pass StringRefs by value, for consistency.Benjamin Kramer2010-12-171-1/+1
| | | | llvm-svn: 122074
* Stub out explicit MCELFObjectTargetWriter interface.Rafael Espindola2010-12-171-1/+7
| | | | llvm-svn: 122067
* Move createELFObjectWriter to its own header.Rafael Espindola2010-12-171-0/+1
| | | | llvm-svn: 122064
* MC/Target: Remove HasScatteredSymbols target hook variable, which has beenDaniel Dunbar2010-12-171-3/+1
| | | | | | superceded and was effectively dead. llvm-svn: 122024
* Fix MBlaze backend call instructions so that arguments passed through registersWesley Peck2010-12-162-10/+11
| | | | | | | are correctly marked as used. This removes a hack where the call instructions marked all possible argument registers as used in the tablegen description. llvm-svn: 121994
* MC: Move target specific fixup info descriptors to TargetAsmBackend instead ofDaniel Dunbar2010-12-162-4/+4
| | | | | | | the MCCodeEmitter, which seems like a better organization. - Also, cleaned up some magic constants while in the area. llvm-svn: 121953
* Lower the MBlaze target specific calling conventions for "interrupt_handler"Wesley Peck2010-12-154-12/+119
| | | | | | | and "save_volatiles" correctly. This completes the custom calling convention functionality changes for the MBlaze backend that were started in 121888. llvm-svn: 121891
* Add some special purpose register definitions to the MBlaze backend and ↵Wesley Peck2010-12-151-80/+34
| | | | | | cleanup some old, unused floating point register definitions. llvm-svn: 121882
* Missed some ADDI <-> ADDIK conversions in 121649.Wesley Peck2010-12-121-8/+8
| | | | llvm-svn: 121652
* MBlaze delay slot filler was not capable of using ADDK and variants to fill ↵Wesley Peck2010-12-121-1/+18
| | | | | | delay slots. This broke several test cases when 121649 was committed. This fixes the regression. llvm-svn: 121650
* The ADD and ADDK (and all variants) instructions where flip-flopped in the ↵Wesley Peck2010-12-128-49/+49
| | | | | | MBlaze backend. This bug fix makes 64-bit math work on the MBlaze backend. llvm-svn: 121649
* 1. Change MBlaze indirect branches to use absolute branch BRALD instead of ↵Wesley Peck2010-12-125-12/+158
| | | | | | | | | pc relative branch BRLD. 2. Make sure that the MBlaze stack is aligned to 4-byte boundaries. 3. Determine frame indexes that should be placed in the callers stack frame, as per the MBlaze ABI, and place them in the correct locations. llvm-svn: 121639
* Reworking the stack layout generated by the MBlaze backend.Wesley Peck2010-12-0912-177/+127
| | | | llvm-svn: 121355
* Adding bug fix that was suppose to be part of 121044.Wesley Peck2010-12-061-6/+6
| | | | | | patch contributed by Jack Whitham! llvm-svn: 121049
* Fixed reversed operands for IDIV and CMP instructions in MBlaze backend.Wesley Peck2010-12-061-24/+24
| | | | | | | | Use BRAD instead of BRD for indirect branches in MBlaze backend. patch contributed by Jack Whitham! llvm-svn: 121044
* Fix a 16-bit immediate value detection bug in the MBlaze delay slot filler.Wesley Peck2010-12-061-48/+86
| | | | | | | | Address more hazards in the MBlaze delay slot filler. patch contributed by Jack Whitham! llvm-svn: 121037
* Remove the instruction fragment to data fragment lowering since it was causingRafael Espindola2010-12-061-5/+5
| | | | | | freed data to be read. I will open a bug to track it being reenabled. llvm-svn: 121028
* Teaching MBlaze backend how to reverse branch conditions.Wesley Peck2010-12-022-0/+35
| | | | llvm-svn: 120707
* Define generic 1, 2 and 4 byte pc relative relocations. They are commonRafael Espindola2010-11-283-46/+4
| | | | | | and at least the 4 byte one will be needed to implement the .cfi_* directives. llvm-svn: 120240
* Remove the unused TheTarget member.Rafael Espindola2010-11-261-1/+1
| | | | llvm-svn: 120168
* Updating MBlaze .mask and .frame directives to match GCC's output and fixing ↵Wesley Peck2010-11-241-12/+19
| | | | | | regression introduced in 120095 by checking MCStreamer::hasRawTextSupport. llvm-svn: 120097
* 1. Fixing error where basic block labels were not being printed out when ↵Wesley Peck2010-11-245-33/+126
| | | | | | | | | | they need to be for the MBlaze backend because AsmPrinter::isBlockOnlyReachableByFallthrough does not take into account delay slots. 2. Re-adding .mask and .frame directives in printed assembly. 3. Adding .ent and .end directives in printed assembly. 4. Minor cleanups to MBlaze backend. llvm-svn: 120095
* Renaming ISD::BIT_CONVERT to ISD::BITCAST to better reflect the LLVM IR concept.Wesley Peck2010-11-231-4/+4
| | | | llvm-svn: 119990
* Implement ELF object file writing support for the MBlaze backend. Its not ↵Wesley Peck2010-11-215-111/+104
| | | | | | perfect yet, but it works for many tests. llvm-svn: 119952
* Implement branch analysis in the MBlaze backend.Wesley Peck2010-11-212-46/+201
| | | | llvm-svn: 119951
* Make it a little bit more explicit that the MBlaze backend only supports uptoWesley Peck2010-11-212-3/+3
| | | | | | 32-bit immediate values. llvm-svn: 119950
* Fix an error in the MBlaze delay slot filler where instructions that alreadyWesley Peck2010-11-211-16/+29
| | | | | | fill a delay slot are moved to fill a different delay slot. llvm-svn: 119949
* Move hasFP() and few related hooks to TargetFrameInfo.Anton Korobeynikov2010-11-184-21/+17
| | | | llvm-svn: 119740
* make isVirtualSection a virtual method on MCSection. Chris' suggestion.Rafael Espindola2010-11-171-5/+0
| | | | llvm-svn: 119547
* add fields to the .td files unconditionally, simplifying tblgen a bit.Chris Lattner2010-11-151-1/+1
| | | | | | Switch the ARM backend to use 'let' instead of 'set' with this change. llvm-svn: 119120
* Attempt to unbreak cmake-based buildsAnton Korobeynikov2010-11-151-0/+1
| | | | llvm-svn: 119098
* First step of huge frame-related refactoring: move emit{Prologue,Epilogue} ↵Anton Korobeynikov2010-11-156-156/+234
| | | | | | out of TargetRegisterInfo to TargetFrameInfo, which is definitely much better suitable place llvm-svn: 119097
* MC: Simplify Mach-O and ELF object writer implementations.Daniel Dunbar2010-11-131-6/+4
| | | | | | - What was I thinking????? llvm-svn: 118992
* Fixed error and re-enabled MBlaze MC disassembler tests.Wesley Peck2010-11-131-0/+3
| | | | llvm-svn: 118987
* 1. Adding test cases for MBlaze MC disassembler.Wesley Peck2010-11-133-14/+87
| | | | | | | 2. Fixing several errors in disassembler uncovered by test cases. 3. Fixing invalid encoding of PCMPEQ and PCMPNE uncovered by test cases. llvm-svn: 118969
* 1. Adding missing immediate mode asm parser test cases.Wesley Peck2010-11-131-2/+2
| | | | | | 2. Fixing improper immediate mode reverse subtract. llvm-svn: 118948
* Fixing improperly encoded reverse subtract instructions in MBlaze backend.Wesley Peck2010-11-122-9/+8
| | | | llvm-svn: 118943
* 1. Finishing MBlaze MC asm parser test casesWesley Peck2010-11-1211-170/+222
| | | | | | | | | | 2. Parsing .word directive in MBlaze asm parser 3. Fixing hack where memory instructions reversed order of last two parameters 4. Fixing many improperly encoded instructions 5. Support parsing special instructions (MFS,MTS,etc.) 6. Removing unused functions from inst printer llvm-svn: 118941
* The BRK instruction in the MicroBlaze is a branch-and-link.Wesley Peck2010-11-111-2/+2
| | | | llvm-svn: 118848
* Fix tblgen instruction errors exposed by MC asm parser testsWesley Peck2010-11-112-30/+29
| | | | | | | Fix minimum 16-bit signed value error exposed by MC asm parser tests Add initial MC asm parser tests for the MBlaze backend llvm-svn: 118844
* Fixed some bugs in MBlaze asm parser that were introduced when removing ↵Wesley Peck2010-11-111-5/+5
| | | | | | OwningPtrs from the code. llvm-svn: 118807
* Adding working version of assembly parser for the MBlaze backendWesley Peck2010-11-0825-810/+498
| | | | | | Major cleanup of whitespace and formatting issues in MBlaze backend llvm-svn: 118434
* In the calling convention logic, ValVT is always a legal type,Duncan Sands2010-11-041-3/+3
| | | | | | | and as such can be represented by an MVT - the more complicated EVT is not needed. Use MVT for ValVT everywhere. llvm-svn: 118245
* Inside the calling convention logic LocVT is always a simpleDuncan Sands2010-11-031-1/+1
| | | | | | | | | | value type, so there is no point in passing it around using an EVT. Use the simpler MVT everywhere. Rather than trying to propagate this information maximally in all the code that using the calling convention stuff, I chose to do a mainly low impact change instead. llvm-svn: 118167
* per a suggestion by Frits van Bommel, mark all MBlaze Pseudo Chris Lattner2010-11-023-5/+8
| | | | | | | instructions as isCodeGenOnly in the parent class instead of sprinkling it throughout the .td files. llvm-svn: 118125
* mark a few codegenonly instructions.Chris Lattner2010-11-022-3/+3
| | | | llvm-svn: 118092
* reapply r117858 with apparent editor malfunction fixed (somehow I Chris Lattner2010-10-311-1/+1
| | | | | | got a dulicated line). llvm-svn: 117860
* revert r117858 while I check out a failure I missed.Chris Lattner2010-10-311-1/+1
| | | | llvm-svn: 117859
OpenPOWER on IntegriCloud