summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/MachineInstr.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* int64_t -> intChris Lattner2004-02-291-1/+1
| | | | llvm-svn: 11977
* Fix crash caused by passing register 0 toAlkis Evlogimenos2004-02-271-1/+1
| | | | | | MRegisterInfo::isPhysicalRegister(). llvm-svn: 11894
* Fix bugs in finegrainificationChris Lattner2004-02-231-1/+3
| | | | llvm-svn: 11758
* Finegrainify namespacificationChris Lattner2004-02-231-9/+7
| | | | llvm-svn: 11757
* Fix a __LONG__ term annoyance of mine: symbolic registers weren't being printedChris Lattner2004-02-191-6/+16
| | | | | | | by operator<< on MachineInstr's, and looking up what register "24" is all of the time was greatly annoying. llvm-svn: 11623
* Add LeakDetection to MachineInstr.Alkis Evlogimenos2004-02-161-0/+12
| | | | | | | Move out of line member functions of MachineBasicBlock to MachineBasicBlock.cpp. llvm-svn: 11497
* Remove getAllocatedRegNum(). Use getReg() instead.Alkis Evlogimenos2004-02-131-5/+5
| | | | llvm-svn: 11393
* Add head-of-file comments and Doxygen comments. Tighten up a lot of whitespace.Brian Gaeke2004-02-131-36/+32
| | | | | | | | Rename SetMachineOperandConst's formal parameters to match other methods here. Mark some methods as being used only by the SPARC back-end. Fix a missing-paren bug in OutputValue(). llvm-svn: 11363
* Add parent pointer to MachineInstr that points to owningAlkis Evlogimenos2004-02-121-7/+14
| | | | | | | | MachineBasicBlock. Also change opcode to a short and numImplicitRefs to an unsigned char so that overall MachineInstr's size stays the same. llvm-svn: 11357
* Rename the opCode instance variable to OpcodeChris Lattner2004-02-121-29/+15
| | | | llvm-svn: 11348
* This field is never readChris Lattner2004-02-121-3/+0
| | | | llvm-svn: 11346
* Modify the two address instruction pass to remove the duplicateAlkis Evlogimenos2004-02-041-18/+0
| | | | | | operand of the instruction and thus simplify the register allocation. llvm-svn: 11124
* When an instruction like: A += B had both A and B virtual registersAlkis Evlogimenos2004-02-031-0/+18
| | | | | | spilled, A was loaded from its stack location twice. This fixes the bug. llvm-svn: 11093
* Change interface of MachineOperand as follows:Alkis Evlogimenos2003-12-141-28/+33
| | | | | | | | | | | | | | | a) remove opIsUse(), opIsDefOnly(), opIsDefAndUse() b) add isUse(), isDef() c) rename opHiBits32() to isHiBits32(), opLoBits32() to isLoBits32(), opHiBits64() to isHiBits64(), opLoBits64() to isLoBits64(). This results to much more readable code, for example compare "op.opIsDef() || op.opIsDefAndUse()" to "op.isDef()" a pattern used very often in the code. llvm-svn: 10461
* Put all LLVM code into the llvm namespace, as per bug 109.Brian Gaeke2003-11-111-2/+6
| | | | llvm-svn: 9903
* Added LLVM project notice to the top of every C++ source file.John Criswell2003-10-201-0/+7
| | | | | | Header files will be on the way. llvm-svn: 9298
* Fixed spelling.Misha Brukman2003-09-171-5/+5
| | | | llvm-svn: 8588
* Fix assertion in MachineInstr::substituteValue().Vikram S. Adve2003-08-071-2/+2
| | | | llvm-svn: 7675
* Do not insert physical regsiters into the regsUsed setChris Lattner2003-08-051-3/+0
| | | | llvm-svn: 7617
* All callers of these methods actually wanted them to preserve the flags,Chris Lattner2003-08-051-26/+5
| | | | | | | | | so get rid of the def/use parameters that were getting passed in. **** This now changes the semantics of these methods to preserve the flags, not clobber them! llvm-svn: 7602
* Simplify code, eliminating the need for the X86 isVoid target instr flagChris Lattner2003-08-031-3/+4
| | | | llvm-svn: 7534
* Remove using declChris Lattner2003-08-031-3/+1
| | | | llvm-svn: 7531
* Change interface to MachineInstr::substituteValue to specify more preciselyVikram S. Adve2003-07-101-7/+21
| | | | | | which args can be substituted: defsOnly, defsAndUses or usesOnly. llvm-svn: 7154
* Allow explicit physical registers for implicit operands.Vikram S. Adve2003-05-311-1/+11
| | | | llvm-svn: 6468
* (1) Added special register class containing (for now) %fsr.Vikram S. Adve2003-05-271-15/+17
| | | | | | | | | | | | | Fixed spilling of %fcc[0-3] which are part of %fsr. (2) Moved some machine-independent reg-class code to class TargetRegInfo from SparcReg{Class,}Info. (3) Renamed MachienOperand::opIsDef to MachineOperand::opIsDefOnly() and related functions and flags. Fixed several bugs where only "isDef" was being checked, not "isDefAndUse". llvm-svn: 6341
* Remove obsolete ctorChris Lattner2003-01-151-9/+0
| | | | llvm-svn: 5301
* Rename MachineInstrInfo -> TargetInstrInfoChris Lattner2003-01-141-3/+3
| | | | llvm-svn: 5272
* Add support for 3 new forms of MachineOperandChris Lattner2003-01-131-18/+39
| | | | llvm-svn: 5217
* * Add printing support for FrameIndex operandsChris Lattner2002-12-281-24/+29
| | | | llvm-svn: 5194
* Implement printing of MBB argumentsChris Lattner2002-12-151-17/+28
| | | | llvm-svn: 5053
* Print is const!Chris Lattner2002-11-171-1/+1
| | | | llvm-svn: 4737
* Remove only uses of markDef/markDefAndUse methodsChris Lattner2002-11-171-6/+9
| | | | llvm-svn: 4719
* Remove fixmeChris Lattner2002-10-301-1/+1
| | | | llvm-svn: 4447
* Add special code to make printing SSA form machine instructions nicerChris Lattner2002-10-301-4/+15
| | | | llvm-svn: 4446
* Use MRegisterInfo, if available, to print symbolic register namesChris Lattner2002-10-301-7/+14
| | | | llvm-svn: 4438
* Implement structured machine code printingChris Lattner2002-10-301-7/+102
| | | | llvm-svn: 4435
* Implement autoinserting ctorChris Lattner2002-10-291-0/+20
| | | | llvm-svn: 4426
* Remove separate vector of implicit refs from MachineInstr, andVikram S. Adve2002-10-291-11/+24
| | | | | | | | instead record them as extra operands in the operands[] vector. Also, move CallArgsDescriptor into this class instead of making it an annotation on the machine instruction. llvm-svn: 4399
* Move TargetInstrDescriptors extern to the one .cpp file that refers to it:Chris Lattner2002-10-291-0/+8
| | | | | | MachineInstr.cpp llvm-svn: 4392
* Use higher level methods, don't use TargetInstrDescriptors directly!Chris Lattner2002-10-291-1/+1
| | | | llvm-svn: 4389
* Remove all traces of the "Opcode Mask" field in the MachineInstr classChris Lattner2002-10-281-4/+3
| | | | llvm-svn: 4359
* Remove more default arguments that are never usedChris Lattner2002-10-281-7/+4
| | | | llvm-svn: 4358
* Remove default operands that are never usedChris Lattner2002-10-281-6/+10
| | | | llvm-svn: 4357
* * Make MachineOperand ctors private, so MachineOperand can only be createdChris Lattner2002-10-281-20/+21
| | | | | | | | by MachineInstr. * Add a bunch of new methods to allow incremental addition of operands to the machine instr instance. llvm-svn: 4356
* Remove two arguments that are never specifiedChris Lattner2002-10-281-8/+2
| | | | llvm-svn: 4348
* Fairly major overhaul of MachineInstr & Operand classesChris Lattner2002-10-281-6/+21
| | | | | | | | - Inline methods that are mostly a single line anyway - Eliminate several methods that were never called - Group methods a bit more consistently llvm-svn: 4329
* Add #includes now that MachineInstr.h doesn't include ↵Chris Lattner2002-10-281-0/+1
| | | | | | llvm/Target/MachineInstrInfo.h llvm-svn: 4327
* - Two minor improvements to the MachineInstr class to reduce footprint andChris Lattner2002-10-221-4/+4
| | | | | | | overhead: Merge 3 parallel vectors into 1, change regsUsed hash_set to be a bitvector. Sped up LLC a little less than 10% in a debug build! llvm-svn: 4261
* Add method MachineInstr::replace to rewrite a machine instruction in place.Vikram S. Adve2002-09-201-0/+16
| | | | llvm-svn: 3843
* Dump routine now writes out allocated register numbers if available.Vikram S. Adve2002-09-161-4/+13
| | | | llvm-svn: 3737
OpenPOWER on IntegriCloud