summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Add support for frame pointers, and large offsets from stack and frame ↵Nate Begeman2004-08-142-28/+72
| | | | | | pointers. Adopt elimination of MachineFunction& arg from eliminateFrameIndex. llvm-svn: 15745
* Add indexed forms of load doubleword and load word algebraic for 64 bit targetsNate Begeman2004-08-141-0/+2
| | | | llvm-svn: 15743
* Fix handling of FP constants with single precision, and loading of internal ↵Nate Begeman2004-08-141-27/+27
| | | | | | linkage function addresses llvm-svn: 15742
* Add initial support for using the generated asm writer. Also, fix FP ↵Nate Begeman2004-08-141-61/+73
| | | | | | constant printing to always print 8 byte intializers. Move printing of LinkOnce stubs. llvm-svn: 15741
* Add generation of asm writer from tablegen files to MakefileNate Begeman2004-08-141-1/+6
| | | | llvm-svn: 15740
* Eliminate MachineFunction& argument from eliminateFrameIndex in x86 Target. ↵Nate Begeman2004-08-142-4/+3
| | | | | | Get MachineFunction from MachineInstruction's parent's parent llvm-svn: 15739
* Eliminate MachineFunction& argument from eliminateFrameIndex in SparcV9 targetNate Begeman2004-08-142-4/+3
| | | | llvm-svn: 15738
* Eliminate MachineFunction& argument from eliminateFrameIndex in Skeleton targetNate Begeman2004-08-142-4/+3
| | | | llvm-svn: 15737
* Elminiate MachineFunction& argument from eliminateFrameIndexNate Begeman2004-08-141-1/+1
| | | | llvm-svn: 15736
* Implement test/Regression/Transforms/GlobalConstifier/phi-select.llxChris Lattner2004-08-141-6/+16
| | | | | | This allows more globals to be marked constant, particularly global arrays. llvm-svn: 15735
* Allow any cl::opt to use the method getPosition() to retrieve the option'sReid Spencer2004-08-131-19/+32
| | | | | | | | | | | | | absolute position on the command line. Similarly allow any cl::list to use the method getPosition(n) to retrieve the absolute position of the nth option in the list. This provides support for two things: (a) options like -l that are actually positional and their order of occurrence matters when they are intermixed with positional arguments like "a.o"; and (b) options like -x LANG which affect only the positional arguments that come after the option. In both cases, knowing the absolute position of a given option helps. llvm-svn: 15725
* Remove an unneeded header and forward declarationNate Begeman2004-08-131-2/+0
| | | | llvm-svn: 15722
* Fix siod by switching BoolTy to byte rather than int until CFE changes forNate Begeman2004-08-132-27/+28
| | | | | | | Darwin. Also, change asm printer to output proper stubs for external functions whose address is passed as an argument to aid in bugpointing. llvm-svn: 15721
* Fix 177.mesa compilation, don't use floating point regs for base addresses!Nate Begeman2004-08-131-1/+1
| | | | llvm-svn: 15720
* Fix llc crasher compiling siod by giving BuildMI the correct number of argumentsNate Begeman2004-08-131-1/+1
| | | | llvm-svn: 15719
* If we are extracting a block that has multiple successors that are the sameChris Lattner2004-08-131-2/+11
| | | | | | | | | block (common in a switch), make sure to remove extra edges in successor blocks. This fixes CodeExtractor/2004-08-12-BlockExtractPHI.ll and should be pulled into LLVM 1.3 (though the regression test need not be, as that would require pulling in the LoopExtract.cpp changes). llvm-svn: 15717
* When we code extract some stuff, leave the codeRepl block in the place whereChris Lattner2004-08-131-1/+1
| | | | | | the extracted code was, instead of putting it at the end of the function llvm-svn: 15716
* "extract" the block extractor pass from bugpoint (haha)Chris Lattner2004-08-131-0/+53
| | | | llvm-svn: 15714
* Add value mapper support for select constant exprs. This should fix a bugChris Lattner2004-08-131-0/+5
| | | | | | Nate ran into when bugpointing siod. This fix should go into LLVM 1.3 llvm-svn: 15712
* Longs are in one register on PowerPC 64; use appropriate instructions to ↵Nate Begeman2004-08-131-158/+22
| | | | | | operate on them. llvm-svn: 15711
* Add some more 64 bit instructions we need for the PowerPC-64 ISel to the ↵Nate Begeman2004-08-132-2/+57
| | | | | | tablegen files llvm-svn: 15710
* Split saveCallerSavedRegisters into two methods for clarity, and add comments.Chris Lattner2004-08-121-9/+52
| | | | | | | | Add support for targets that must spill certain physregs at certain locations. Patch contributed by Nate Begeman, slightly hacked by me. llvm-svn: 15701
* Remove dead methodsChris Lattner2004-08-123-64/+7
| | | | llvm-svn: 15698
* Fix warningChris Lattner2004-08-121-1/+1
| | | | llvm-svn: 15697
* Instead of a virtual method call, lets try a direct constant referenceChris Lattner2004-08-123-7/+8
| | | | llvm-svn: 15696
* Virtual method calls are overratedChris Lattner2004-08-121-3/+3
| | | | llvm-svn: 15695
* Virtual method calls are overrated.Chris Lattner2004-08-122-8/+6
| | | | llvm-svn: 15694
* Forward substitute some constants into their usersChris Lattner2004-08-121-5/+2
| | | | llvm-svn: 15693
* The only target that uses this code (v9) always has argsOnStackHaveFixedSizeChris Lattner2004-08-121-16/+1
| | | | | | set to true (obviously) llvm-svn: 15692
* Remove dead methodsChris Lattner2004-08-122-34/+0
| | | | llvm-svn: 15691
* When we want a constant, just use it, instead of calling through layers ofChris Lattner2004-08-123-10/+10
| | | | | | virtual methods and register name mapping functions llvm-svn: 15690
* Disable PPC64 backend by default because LLC cannot choose automatically betweenMisha Brukman2004-08-121-2/+2
| | | | | | | SparcV9 and PowerPC64 without target triples, since they are both 64-bit big-endian targets. llvm-svn: 15688
* This patch makes the inliner refuse to inline functions that have allocaChris Lattner2004-08-121-25/+57
| | | | | | | | | | instructions in the body of the function (not the entry block). This fixes test/Programs/SingleSource/Regression/C/2004-08-12-InlinerAndAllocas.c and test/Programs/External/SPEC/CINT2000/176.gcc on zion. This should obviously be pulled into 1.3. llvm-svn: 15684
* * Correct 64-bit version: blr 1 (not 0)Misha Brukman2004-08-121-2/+2
| | | | | | * BuildMI() can build 0-param instructions (e.g., NOP) llvm-svn: 15681
* * Print out full names for non-GPR or -FPR registersMisha Brukman2004-08-121-3/+5
| | | | | | * BuildMI() really *does* handle 0 params! llvm-svn: 15680
* Fix code extraction of unwind blocks. This fixed bugs that bugpoint canChris Lattner2004-08-121-9/+12
| | | | | | run into. This should go into 1.3 llvm-svn: 15679
* * Pointers are 8 bytes, hence cLong type on 64-bit PPCMisha Brukman2004-08-121-6/+8
| | | | | | * Fix loading of GlobalValues llvm-svn: 15678
* Eliminate special-casing 14-bit immediate load/store opcodesMisha Brukman2004-08-121-16/+5
| | | | llvm-svn: 15677
* Hrm, this pass didn't compile. This bugfix should go into 1.3!Chris Lattner2004-08-121-0/+1
| | | | llvm-svn: 15676
* Correctly print out ASCII literal strings on AIXMisha Brukman2004-08-121-22/+48
| | | | llvm-svn: 15674
* Mark R2 as available for allocation on Darwin/PPC32, but not AIX/PPC64Misha Brukman2004-08-121-3/+6
| | | | llvm-svn: 15673
* * Move AIX into the llvm namespace to be accessed from RegisterInfoMisha Brukman2004-08-112-11/+15
| | | | | | | * Mark InstrInfo with 32 vs. 64 bit flag * Enable the 64-bit isel and asm printer llvm-svn: 15672
* Set the is64bit flag and propagate it to PowerPCRegisterInfoMisha Brukman2004-08-112-3/+6
| | | | llvm-svn: 15671
* * Set the is64bit boolean flag in PowerPCRegisterInfoMisha Brukman2004-08-113-18/+30
| | | | | | | | * Doubles are 8 bytes in 64-bit PowerPC, and use the general register class * Use double-word loads and stores for restoring from/saving to stack * Do not allocate R2 if compiling for AIX llvm-svn: 15670
* 64-bit instruction selector and AIX-specific 64-bit asm printerMisha Brukman2004-08-113-1/+3887
| | | | llvm-svn: 15669
* Fix names of 64-bit CMP*D* opcodes, add LWA and STD* opcodesMisha Brukman2004-08-111-4/+10
| | | | llvm-svn: 15668
* Add support for 64-bit CMPDI, CMPLDI, and CMPLD opcodesMisha Brukman2004-08-112-3/+6
| | | | llvm-svn: 15667
* Add doubleword load/store (64-bit only).Misha Brukman2004-08-112-5/+29
| | | | llvm-svn: 15665
* Hyphenate ##-bit and remove first-person from comments.Misha Brukman2004-08-111-4/+4
| | | | llvm-svn: 15663
* Clean up 32/64bit and Darwin/AIX split. Next steps: 64 bit ISel, AIX asm ↵Nate Begeman2004-08-1112-307/+140
| | | | | | printer. llvm-svn: 15662
OpenPOWER on IntegriCloud