summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Sparc
Commit message (Collapse)AuthorAgeFilesLines
...
* Merge ISD::TRUNCSTORE to ISD::STORE. Switch to using StoreSDNode.Evan Cheng2006-10-132-13/+12
| | | | llvm-svn: 30945
* adjcallstackup/down clobbers the stack pointerChris Lattner2006-10-121-2/+2
| | | | llvm-svn: 30909
* Add properties to ComplexPattern.Evan Cheng2006-10-111-2/+2
| | | | llvm-svn: 30891
* Reflects ISD::LOAD / ISD::LOADX / LoadSDNode changes.Evan Cheng2006-10-092-26/+26
| | | | llvm-svn: 30844
* Make use of getStore().Evan Cheng2006-10-051-8/+7
| | | | llvm-svn: 30759
* Use getSectionForFunctionChris Lattner2006-10-051-3/+5
| | | | llvm-svn: 30739
* Combine ISD::EXTLOAD, ISD::SEXTLOAD, ISD::ZEXTLOAD into ISD::LOADX. Add anEvan Cheng2006-10-041-4/+4
| | | | | | extra operand to LOADX to specify the exact value extension type. llvm-svn: 30714
* Adding dllimport, dllexport and external weak linkage types.Anton Korobeynikov2006-09-141-0/+8
| | | | | | | | | DLL* linkages got full (I hope) codegeneration support in C & both x86 assembler backends. External weak linkage added for future use, we don't provide any codegeneration, etc. support for it. llvm-svn: 30374
* Reflects MachineConstantPoolEntry changes.Evan Cheng2006-09-121-1/+1
| | | | llvm-svn: 30279
* 1. Remove condition on delete.Jim Laskey2006-09-072-5/+9
| | | | | | | | 2. Protect and outline createTargetAsmInfo. 3. Misc. kruft. llvm-svn: 30169
* Make target asm info a property of the target machine.Jim Laskey2006-09-072-14/+6
| | | | llvm-svn: 30162
* Break out target asm info into separate files.Jim Laskey2006-09-072-0/+56
| | | | llvm-svn: 30161
* Separate target specific asm properties from the asm printers.Jim Laskey2006-09-061-4/+12
| | | | llvm-svn: 30126
* Completely eliminate def&use operands. Now a register operand is EITHER aChris Lattner2006-09-051-2/+2
| | | | | | def operand or a use operand. llvm-svn: 30109
* Completely rearchitect the interface between targets and the pass manager.Chris Lattner2006-09-042-54/+18
| | | | | | | | | | | | | | | | | | | | | | | | This pass: 1. Splits TargetMachine into TargetMachine (generic targets, can be implemented any way, like the CBE) and LLVMTargetMachine (subclass of TM that is used by things using libcodegen and other support). 2. Instead of having each target fully populate the passmgr for file or JIT output, move all this to common code, and give targets hooks they can implement. 3. Commonalize the target population stuff between file emission and JIT emission. 4. All (native code) codegen stuff now happens in a FunctionPassManager, which paves the way for "fast -O0" stuff in the CFE later, and now LLC could lazily stream .bc files from disk to use less memory. 5. There are now many fewer #includes and the targets don't depend on the scalar xforms or libanalysis anymore (but codegen does). 6. Changing common code generator pass ordering stuff no longer requires touching all targets. 7. The JIT now has the option of "-fast" codegen or normal optimized codegen, which is now orthogonal to the fact that JIT'ing is being done. llvm-svn: 30081
* Simplify target construction.Chris Lattner2006-09-031-1/+1
| | | | llvm-svn: 30070
* Use a couple of multiclass patterns to factor some integer ops.Chris Lattner2006-09-012-135/+51
| | | | llvm-svn: 30039
* remove a bunch of commentsChris Lattner2006-09-011-54/+0
| | | | llvm-svn: 30038
* SelectNodeTo now returns a SDNode*.Evan Cheng2006-08-261-2/+2
| | | | llvm-svn: 29901
* Select() no longer require Result operand by reference.Evan Cheng2006-08-261-6/+4
| | | | llvm-svn: 29898
* Match tblgen changes.Evan Cheng2006-08-261-6/+8
| | | | llvm-svn: 29895
* Constify some methods. Patch provided by Anton Vayvod, thanks!Chris Lattner2006-08-171-2/+2
| | | | llvm-svn: 29756
* SelectNodeTo() may return a SDOperand that is different from the input.Evan Cheng2006-08-161-3/+3
| | | | llvm-svn: 29726
* Match tablegen changes.Evan Cheng2006-08-111-6/+6
| | | | llvm-svn: 29604
* CALLSEQ_* produces chain even if that's not needed.Evan Cheng2006-08-111-2/+4
| | | | llvm-svn: 29603
* Start eliminating temporary vectors used to create DAG nodes. Instead, passChris Lattner2006-08-081-24/+14
| | | | | | | | | | | | | | | | | | | in the start of an array and a count of operands where applicable. In many cases, the number of operands is known, so this static array can be allocated on the stack, avoiding the heap. In many other cases, a SmallVector can be used, which has the same benefit in the common cases. I updated a lot of code calling getNode that takes a vector, but ran out of time. The rest of the code should be updated, and these methods should be removed. We should also do the same thing to eliminate the methods that take a vector of MVT::ValueTypes. It would be extra nice to convert the dagiselemitter to avoid creating vectors for operands when calling getTargetNode. llvm-svn: 29566
* Match tablegen isel changes.Evan Cheng2006-08-071-14/+5
| | | | llvm-svn: 29549
* Remove InFlightSet hack. No longer needed.Evan Cheng2006-07-281-1/+0
| | | | llvm-svn: 29373
* Don't pass target name into TargetData anymore, it is never used or needed.Chris Lattner2006-06-161-2/+1
| | | | | | | Remove explicit casts to std::string now that there is no overload resolution issues in the TargetData ctors. llvm-svn: 28830
* Type of extract_element index operand should be iPTR.Evan Cheng2006-06-151-2/+2
| | | | llvm-svn: 28797
* Change RET node to include signness information of the return values. i.e.Evan Cheng2006-05-261-3/+3
| | | | | | RET chain, value1, sign1, value2, sign2, ... llvm-svn: 28510
* Add support for the missing FP condition codesChris Lattner2006-05-251-6/+12
| | | | llvm-svn: 28482
* Assert if InflightSet is not cleared after instruction selecting a BB.Evan Cheng2006-05-251-0/+1
| | | | llvm-svn: 28459
* Clear HandleMap and ReplaceMap after instruction selection. Or it may causeEvan Cheng2006-05-241-0/+2
| | | | | | non-deterministic behavior. llvm-svn: 28454
* Patches to make the LLVM sources more -pedantic clean. Patch providedChris Lattner2006-05-244-4/+4
| | | | | | by Anton Korobeynikov! This is a step towards closing PR786. llvm-svn: 28447
* Sparc is big-endian.Owen Anderson2006-05-201-1/+1
| | | | llvm-svn: 28415
* Make all of the TargetMachine subclasses use the new string TargetData methods.Owen Anderson2006-05-201-1/+1
| | | | | | This is part of the on-going work on PR 761. llvm-svn: 28414
* getCalleeSaveRegs and getCalleeSaveRegClasses are no long TableGen'd.Evan Cheng2006-05-183-3/+16
| | | | llvm-svn: 28378
* Remove PointerType from class TargetEvan Cheng2006-05-171-3/+0
| | | | llvm-svn: 28368
* Remove dead variable.Chris Lattner2006-05-121-1/+0
| | | | llvm-svn: 28247
* Refactor a bunch of includes so that TargetMachine.h doesn't have to includeOwen Anderson2006-05-122-0/+2
| | | | | | | TargetData.h. This should make recompiles a bit faster with my current TargetData tinkering. llvm-svn: 28238
* Split SwitchSection into SwitchTo{Text|Data}Section methods.Chris Lattner2006-05-091-6/+6
| | | | llvm-svn: 28184
* Some notes and thoughts to myselfChris Lattner2006-05-091-7/+7
| | | | llvm-svn: 28182
* Rename MO_VirtualRegister -> MO_Register. Clean up immediate handling.Chris Lattner2006-05-041-5/+5
| | | | llvm-svn: 28104
* Move some methods out of MachineInstr into MachineOperandChris Lattner2006-05-042-7/+6
| | | | llvm-svn: 28102
* There shalt be only one "immediate" operand type!Chris Lattner2006-05-042-7/+5
| | | | llvm-svn: 28099
* Remove a bunch more SparcV9 specific stuffChris Lattner2006-05-041-8/+1
| | | | llvm-svn: 28093
* Remove some more unused stuff from MachineInstr that was leftover from V9.Chris Lattner2006-05-041-4/+0
| | | | llvm-svn: 28091
* Refactor TargetMachine, pushing handling of TargetData into the ↵Owen Anderson2006-05-033-7/+9
| | | | | | | | target-specific subclasses. This has one caller-visible change: getTargetData() now returns a pointer instead of a reference. This fixes PR 759. llvm-svn: 28074
* Extend printBasicBlockLabel a bit so that it can be used to print allNate Begeman2006-05-021-4/+4
| | | | | | | basic block labels, consolidating the code to do so in one place for each target. llvm-svn: 28050
OpenPOWER on IntegriCloud