summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target
Commit message (Collapse)AuthorAgeFilesLines
* Handle multiple functions, properly mangle symbols, and fix support forNate Begeman2007-01-261-12/+23
| | | | | | scattered relocations. llvm-svn: 33555
* Represent tADDspi and tSUBspi as two-address instructions.Evan Cheng2007-01-262-5/+5
| | | | llvm-svn: 33551
* Change the MachineDebugInfo to MachineModuleInfo to better reflect usageJim Laskey2007-01-266-27/+27
| | | | | | for debugging and exception handling. llvm-svn: 33550
* Fix Data16bitsDirective for ELF.Lauro Ramos Venancio2007-01-261-1/+0
| | | | llvm-svn: 33549
* Conditional branch being fixed up is not the last MI in the BB, there is aEvan Cheng2007-01-261-13/+51
| | | | | | | | | | | | | unconditional branch following it. Simply invert the condition and swap destinations if the conditional branch can reach the destination of the unconditional branch: beq L1 b L2 => bne L2 b L1 llvm-svn: 33548
* If the constant pool value is a extern weak symbol, emit the weak reference.Lauro Ramos Venancio2007-01-261-1/+7
| | | | llvm-svn: 33543
* extload -> zextloadEvan Cheng2007-01-261-0/+5
| | | | llvm-svn: 33542
* Make LABEL a builtin opcode.Jim Laskey2007-01-2621-55/+23
| | | | llvm-svn: 33537
* For PR761:Reid Spencer2007-01-261-21/+3
| | | | | | | The Module::setEndianness and Module::setPointerSize methods have been removed. Instead you can get/set the DataLayout. Adjust thise accordingly. llvm-svn: 33530
* For PR645:Reid Spencer2007-01-261-3/+0
| | | | | | | Remove the Function::renameLocalSymbols function as it is no longer needed. llvm-svn: 33522
* SplitBlockBeforeInstr() insert a unconditional branch to the next BB. ThisEvan Cheng2007-01-261-2/+6
| | | | | | | is unnecessary when we are fixing up a conditional branch since we will be adding a unconditional branch to the destination of the original branch. llvm-svn: 33517
* Need to scan the function for branches even if there aren't any constants.Evan Cheng2007-01-261-3/+2
| | | | llvm-svn: 33515
* Forgot to update this.Evan Cheng2007-01-251-1/+1
| | | | llvm-svn: 33512
* Add comment, fix typo, reduce memory usage, etc.Evan Cheng2007-01-251-9/+14
| | | | llvm-svn: 33510
* I am an idiot.Evan Cheng2007-01-251-1/+1
| | | | llvm-svn: 33509
* Fix comment.Evan Cheng2007-01-251-2/+1
| | | | llvm-svn: 33508
* - Tell PEI that PPC will handle stack frame rounding itself.Evan Cheng2007-01-252-7/+7
| | | | | | | - Do not round up to max. alignment of stack object if it is > stack alignment. It will have to be handled with dynamic aligning code. llvm-svn: 33505
* Fix elf object definition.Lauro Ramos Venancio2007-01-251-1/+1
| | | | llvm-svn: 33502
* Doh. Skip JT branches.Evan Cheng2007-01-251-1/+2
| | | | llvm-svn: 33501
* Added (preliminary) branch shortening capability to constantpool island pass.Evan Cheng2007-01-251-7/+130
| | | | llvm-svn: 33497
* Getting rid uses of evil std::set<>Evan Cheng2007-01-253-17/+33
| | | | llvm-svn: 33496
* Fix test/CFrontend/2007-01-24-InlineAsmCModifier.c on X86. The %c modifierChris Lattner2007-01-251-2/+3
| | | | | | says that no $ prefix should be emitted on X86. llvm-svn: 33495
* Fix test/CFrontend/2007-01-24-InlineAsmCModifier.c on PPCChris Lattner2007-01-251-0/+4
| | | | llvm-svn: 33494
* FTOIT and ITOFT are bit converts, and if we drop 21264s, are always availableAndrew Lenharth2007-01-248-73/+17
| | | | llvm-svn: 33492
* Call frames for intel.Jim Laskey2007-01-242-0/+52
| | | | llvm-svn: 33490
* 80 columnsJim Laskey2007-01-241-4/+8
| | | | llvm-svn: 33489
* Repair debug frames as a prelude to eh_frames. Switched to using MachineMovesJim Laskey2007-01-243-17/+45
| | | | | | by value so that clean up is less confusing (these vectors tend to be small.) llvm-svn: 33488
* Fix unordered fp on alphaAndrew Lenharth2007-01-241-15/+35
| | | | llvm-svn: 33487
* Fix a misencoding of CBW and CWD. This fixes PR1030.Chris Lattner2007-01-241-2/+2
| | | | llvm-svn: 33486
* Use PC relative ldr to load from a constantpool in Thumb mode.Evan Cheng2007-01-243-9/+25
| | | | llvm-svn: 33484
* Make ivars private and use getters. Have the MachOWriter return "Mach-OBill Wendling2007-01-241-5/+2
| | | | | | Writer" for the pass name. llvm-svn: 33483
* Renamed getTypeAlignmentShift() to getPreferredTypeAlignmentShift().Evan Cheng2007-01-243-4/+4
| | | | llvm-svn: 33482
* Add a field for and construction of the PPCMachOWriterInfo object.Bill Wendling2007-01-242-2/+7
| | | | llvm-svn: 33480
* Move the getJTRelocation method out of here.Bill Wendling2007-01-241-26/+7
| | | | llvm-svn: 33479
* New "TargetMachOWriterInfo" class. It holds target-specific informationBill Wendling2007-01-243-0/+80
| | | | | | that the MachOWriter needs in order to do its writing stuff 'n things. llvm-svn: 33475
* Allow [ fi#c, imm ] as ARM load / store addresses.Evan Cheng2007-01-241-25/+39
| | | | llvm-svn: 33474
* Various Thumb mode load / store isel bug fixes.Evan Cheng2007-01-241-13/+38
| | | | llvm-svn: 33472
* - Reorg Thumb load / store instructions. Combine each rr and ri pair ofEvan Cheng2007-01-233-104/+112
| | | | | | | | | instructions into one (e.g. tLDRrr, tLDRri -> tLDR). - Thumb ldrsb and ldrsh only have the [reg, reg] address format. If the address is not an add, materialize a 0 immediate into a register and use it as the offset field. llvm-svn: 33470
* Darwin HiddenDirective is .private_extern.Evan Cheng2007-01-231-0/+1
| | | | llvm-svn: 33465
* PEI is now responsible for adding MaxCallFrameSize to frame size and align ↵Evan Cheng2007-01-234-49/+0
| | | | | | the stack. Each target can further adjust the frame size if necessary. llvm-svn: 33460
* hasFP() is now a virtual method of MRegisterInfo.Evan Cheng2007-01-2314-18/+42
| | | | llvm-svn: 33455
* ARM AAPCS abi (Linux, etc.) requires 8-byte double / long alignment; MacEvan Cheng2007-01-221-2/+2
| | | | | | requires 4-bytes alignment. llvm-svn: 33448
* Double and long preferred alignment set to 8 bytes.Evan Cheng2007-01-221-1/+2
| | | | llvm-svn: 33447
* Double and long preferred alignment is 8 byte.Evan Cheng2007-01-221-2/+2
| | | | llvm-svn: 33446
* - getTypeAlignmentShift() should be returning preferred alignment, not ABIEvan Cheng2007-01-221-3/+1
| | | | | | | alignment. - getPreferredAlignmentLog(): remove Double special case. llvm-svn: 33445
* Linux GOT indirect reference is only necessary in PIC mode.Evan Cheng2007-01-223-3/+5
| | | | llvm-svn: 33441
* Double and Long preferred alignment is 4 for Darwin, 8 for Linux.Evan Cheng2007-01-221-1/+5
| | | | llvm-svn: 33440
* Use bl to call Thumb fuctions directly.Evan Cheng2007-01-221-1/+1
| | | | llvm-svn: 33433
* add a noteChris Lattner2007-01-211-0/+52
| | | | llvm-svn: 33423
* Implement a getTypeSizeInBits method. This helps in transforms that wantReid Spencer2007-01-201-0/+10
| | | | | | to ensure the bit size of a type is identical before proceeding. llvm-svn: 33413
OpenPOWER on IntegriCloud