summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target
Commit message (Collapse)AuthorAgeFilesLines
* Change MachineBasicBlock's vector of MachineInstr pointers into anAlkis Evlogimenos2004-02-1219-162/+141
| | | | | | | | | ilist of MachineInstr objects. This allows constant time removal and insertion of MachineInstr instances from anywhere in each MachineBasicBlock. It also allows for constant time splicing of MachineInstrs into or out of MachineBasicBlocks. llvm-svn: 11340
* MachineInstr::getOpCode() --> getOpcode() in SPARC back-end.Brian Gaeke2004-02-1110-41/+41
| | | | llvm-svn: 11335
* s/getOpCode/getOpcodeChris Lattner2004-02-111-11/+11
| | | | llvm-svn: 11332
* Increase constness.Alkis Evlogimenos2004-02-112-4/+6
| | | | llvm-svn: 11322
* Remove assert as the only integer registers on the sparc are physical.Alkis Evlogimenos2004-02-111-3/+0
| | | | llvm-svn: 11317
* Fix previous broken commit. A MachineOperand may have opType ==Alkis Evlogimenos2004-02-111-2/+4
| | | | | | | MO_VirtualRegister but if the register number is one of a physical register is it considered as a physical register. llvm-svn: 11315
* Remove assert as it is meaningless. MachineOperands can be tagged asAlkis Evlogimenos2004-02-111-2/+0
| | | | | | MO_VirtualRegister but actually be representing a physical register. llvm-svn: 11310
* Expose the "Other" value type to tablegen targetsChris Lattner2004-02-111-0/+1
| | | | llvm-svn: 11304
* Add #includeChris Lattner2004-02-101-0/+1
| | | | llvm-svn: 11285
* Stop using this methodChris Lattner2004-02-101-1/+1
| | | | llvm-svn: 11282
* Remove uses of MachineOperand::isVirtualRegisterChris Lattner2004-02-101-3/+6
| | | | llvm-svn: 11281
* Remvoe use of MO.isVirtualRegister(), turn an assertion into an assert()Chris Lattner2004-02-101-5/+3
| | | | llvm-svn: 11280
* Remove use of isPhysicalRegisterChris Lattner2004-02-101-1/+1
| | | | llvm-svn: 11277
* Don't use MachineOperator::is(Phys|Virt)RegisterChris Lattner2004-02-102-3/+3
| | | | llvm-svn: 11276
* Tighten up checksChris Lattner2004-02-101-2/+2
| | | | llvm-svn: 11274
* Fix PR228: [sparc] Boolean constants are emitted as true and falseChris Lattner2004-02-101-0/+2
| | | | | | | I will observe that the concept of using WriteAsOperand is completely broken, but then we all knew that, didn't we? llvm-svn: 11255
* Doxygenify comments.Misha Brukman2004-02-091-12/+9
| | | | llvm-svn: 11252
* Fix PR#226: When emitting padding, always emit it as bytes. Bytes can beJohn Criswell2004-02-091-8/+5
| | | | | | placed into any alignment situation. llvm-svn: 11247
* Adjust to the changed StructType interface. In particular, ↵Chris Lattner2004-02-092-5/+4
| | | | | | getElementTypes() is gone. llvm-svn: 11228
* Add a new (hidden) option that is useful for profiling.Chris Lattner2004-02-091-1/+5
| | | | llvm-svn: 11218
* Modify the two address instruction pass to remove the duplicateAlkis Evlogimenos2004-02-044-66/+66
| | | | | | operand of the instruction and thus simplify the register allocation. llvm-svn: 11124
* Take away the default iostream argument of createMachineFunctionPrinterPass(),Brian Gaeke2004-02-041-6/+6
| | | | | | at Chris's request. llvm-svn: 11120
* IMULri* instructions do not require their first two registers operandsAlkis Evlogimenos2004-02-042-7/+9
| | | | | | to be the same (IOW they are not two address instructions). llvm-svn: 11117
* Generate ftst instructions for comparison against zeroChris Lattner2004-02-031-0/+9
| | | | llvm-svn: 11098
* Add the ftst instructionChris Lattner2004-02-031-1/+3
| | | | llvm-svn: 11095
* Add support for one argument OneArgFP instructionsChris Lattner2004-02-031-3/+4
| | | | llvm-svn: 11094
* No need to declare implicit uses/defs of ST0Chris Lattner2004-02-021-1/+1
| | | | llvm-svn: 11081
* Generate the fchs instruction to negate a floating point numberChris Lattner2004-02-022-1/+15
| | | | llvm-svn: 11078
* Add support for OneArgFPRW instructions, fix a couple of typeosChris Lattner2004-02-021-12/+43
| | | | llvm-svn: 11077
* Include PowerPC.h. Flesh out the stub versions of addPassesToEmitAssembly()Brian Gaeke2004-02-021-3/+13
| | | | | | and addPassesToJITCompile() slightly. llvm-svn: 11076
* Add comments describing how you would add prototypes for factory methods forBrian Gaeke2004-02-021-0/+15
| | | | | | PowerPC-specific passes here. llvm-svn: 11073
* Codegen -0.0 correctly. Do not use fldz! This is another -0.0 == +0.0 ↵Chris Lattner2004-02-021-4/+4
| | | | | | problem, arg. llvm-svn: 11070
* FpMOV is also a move instruction.Alkis Evlogimenos2004-02-011-1/+2
| | | | llvm-svn: 11055
* Add some comments sketching out how this is to work eventually.Chris Lattner2004-01-301-6/+49
| | | | llvm-svn: 11026
* Add a new flag, which is only used for symmetry.Chris Lattner2004-01-301-0/+3
| | | | llvm-svn: 11025
* Add (currently disabled) support to the instruction selector to only insertChris Lattner2004-01-301-4/+47
| | | | | | | | | FP_REG_KILL instructions at the end of blocks involved with critical edges. Fix a bug where FP_REG_KILL instructions weren't inserted in fall through unconditional branches. Perhaps this will fix some linscan problems? llvm-svn: 11019
* Add a new (static inline) std::ostream& << AllocInfo& method. Use it.Brian Gaeke2004-01-282-6/+9
| | | | llvm-svn: 11002
* Add the JITInfo object, accessor & initializer.Brian Gaeke2004-01-231-1/+1
| | | | llvm-svn: 10972
* Add CodeEmitter and JITInfo stubs. Dump the oldBrian Gaeke2004-01-232-4/+51
| | | | | | | PowerPCTargetMachine::addPassesToJITCompile() method, in favor of the TargetJITInfo interface. llvm-svn: 10971
* Build the PowerPC directory, so it is less likely to bit-rot (again)Brian Gaeke2004-01-211-1/+1
| | | | llvm-svn: 10938
* Import of skeletal PowerPC backend I have had laying around for months...Brian Gaeke2004-01-214-0/+208
| | | | llvm-svn: 10937
* Use the LLVM standard name mangling infrastructure instead of reinventing theMisha Brukman2004-01-151-77/+18
| | | | | | wheel. llvm-svn: 10891
* Include TargetRegInfo.h and declare SparcTargetMachine forward, to make thisBrian Gaeke2004-01-151-1/+4
| | | | | | header more easily includable. llvm-svn: 10880
* Make this assertion more self-explanatory.Brian Gaeke2004-01-151-2/+2
| | | | llvm-svn: 10879
* Eliminate the isStringCompatible function, using ConstantArray::isString.Chris Lattner2004-01-141-40/+22
| | | | | | | | | | It's not clear why the code was looking for signed chars < 0, but it can't matter to the assembler anyway, so the check goes away. This also fixes compatibility with arrays of [us]byte that have constantexprs in them. Also slightly restructure some code to be cleaner. llvm-svn: 10854
* Eliminate the isStringCompatible function, using ConstantArray::isString.Chris Lattner2004-01-141-18/+3
| | | | | | | It's not clear why the code was looking for signed chars < 0, but it can't matter to the assembler anyway, so the check goes away. llvm-svn: 10853
* Finegrainify namespacificationChris Lattner2004-01-131-53/+15
| | | | | | | Using the SlotCalculator is total overkill for this file, a simple map will suffice. Why doesn't this use the NameMangler interface? llvm-svn: 10823
* Remove dump-input option.Brian Gaeke2004-01-131-14/+2
| | | | | | Make addPassesToEmitAssembly() look slightly more like addPassesToJITCompile(). llvm-svn: 10818
* Eliminate use of ConstantHandling itfChris Lattner2004-01-121-5/+4
| | | | llvm-svn: 10782
* Output mov %REG = 0 instead of xor %REG, %REG, %REG to clear aAlkis Evlogimenos2004-01-121-3/+3
| | | | | | register so that LiveVariable analysis is not confused. llvm-svn: 10773
OpenPOWER on IntegriCloud