summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* Add support to count the number of dynamic instructions executed by LLIChris Lattner2002-12-081-0/+8
| | | | llvm-svn: 4955
* Add total instruction, bb, & function countsChris Lattner2002-12-071-2/+9
| | | | llvm-svn: 4954
* Fix bug that was bugging bugpointChris Lattner2002-12-071-2/+2
| | | | llvm-svn: 4953
* Remove dead codeChris Lattner2002-12-071-32/+0
| | | | llvm-svn: 4952
* Two bug fixes:Vikram S. Adve2002-12-061-13/+22
| | | | | | | | (1) Make entries for Constant values in the ScalarMap. (2) Set MOD bit for the node pointed to by the argument of a free instruction. llvm-svn: 4948
* Fix several related bugs in DSNode::mergeWith() caused by theVikram S. Adve2002-12-061-90/+102
| | | | | | | | | fact that the incoming nodes may be merged away at intermediate steps. Use an extra level of indirection via DSNodeHandles to track the nodes being merged. All this now happens in a static helper function MergeNodes(). llvm-svn: 4947
* Implement a lot of cast functionality (no FP or 64)Brian Gaeke2002-12-061-34/+62
| | | | llvm-svn: 4944
* Fix bug: 2002-12-05-MissedConstProp.ll pointed out by Casey CarterChris Lattner2002-12-051-1/+2
| | | | llvm-svn: 4935
* Cute bug fix: when moving links from N to this, some links could haveVikram S. Adve2002-12-051-14/+23
| | | | | | | been missed if node *this got merged away due to recursive merging! Also, links were not moved correctly if a node is collapsed. llvm-svn: 4933
* Target/X86/Printer.cpp: Add sizePtr function, and use it instead ofBrian Gaeke2002-12-053-111/+143
| | | | | | | | | | | | | | | | | | " <SIZE> PTR " string when emitting assembly. Target/X86/X86InstrInfo.def: Tidy up a bit: Squashed everything down to 118 chars wide, wrapping lines so that comment is at the same point on each line. Rename "NoImpRegs" as "NoIR". (most instructions have NoImpRegs twice on a line, so this saves 10 columns). Also, annotate various instructions with flags for size of memory operand. (MemArg16, MemArg32, MemArg64, etc.) Target/X86/X86InstrInfo.h: Define flags for size of memory operand. (MemArg16, MemArg32, MemArg64, etc.) llvm-svn: 4932
* Added code generation for function prologues and epilogues.Misha Brukman2002-12-041-17/+32
| | | | llvm-svn: 4930
* Implemented functions for emitting prologues and epilogues;Misha Brukman2002-12-042-1/+62
| | | | | | removed EBP from the list of callee-saved registers (it isn't one). llvm-svn: 4929
* Added push and pop instructions.Misha Brukman2002-12-041-1/+2
| | | | llvm-svn: 4928
* Fix handling of function calls that return voidChris Lattner2002-12-041-9/+11
| | | | llvm-svn: 4925
* Implement initial support for return values from call instructionsChris Lattner2002-12-041-0/+14
| | | | llvm-svn: 4924
* Fun arithmetic with iterators aimed at fixing a bug: inserting instructionsMisha Brukman2002-12-041-2/+4
| | | | | | | after the *current* instruction while keeping the iterator in the same 'logical' place. llvm-svn: 4923
* Adjust the stack pointer after a function call, proportional to the number ofMisha Brukman2002-12-041-0/+9
| | | | | | arguments pushed onto the stack. llvm-svn: 4922
* Added instructions to add/subtract imm32 to/from a reg32.Misha Brukman2002-12-041-0/+2
| | | | llvm-svn: 4921
* Fix bogus assertion failuresChris Lattner2002-12-043-3/+3
| | | | llvm-svn: 4919
* Avoid bad assertionChris Lattner2002-12-041-1/+1
| | | | llvm-svn: 4918
* Remove think-o assertionChris Lattner2002-12-041-2/+0
| | | | llvm-svn: 4917
* Avoid crashing on Arguments, just silently miscompileChris Lattner2002-12-041-0/+2
| | | | llvm-svn: 4916
* storeReg2RegOffset() and loadRegOffset2Reg() now take the iterator by valueMisha Brukman2002-12-042-4/+4
| | | | | | instead of by reference, since they return the modified iterator. llvm-svn: 4914
* Moved buildReg2RegClassMap() into from X86RegisterInfo to MRegisterInfo, sinceMisha Brukman2002-12-042-15/+0
| | | | | | it is target-independent. llvm-svn: 4911
* Add a "Lazy Function Resolution in Jello" sectionChris Lattner2002-12-041-14/+40
| | | | | | Remove some todo's llvm-svn: 4910
* Fix a bug I introduced in a previous changeChris Lattner2002-12-041-2/+4
| | | | llvm-svn: 4909
* Add support for referencing global variables/functionsChris Lattner2002-12-044-5/+31
| | | | llvm-svn: 4907
* Print out direct global referencesChris Lattner2002-12-041-1/+4
| | | | llvm-svn: 4906
* This should fix the bug seen with some registers not being allocatedMisha Brukman2002-12-031-6/+45
| | | | | | | | | | | correctly: skipping instructions by incorrectly incrementing the pointer. Also adds support for building a reg-to-regclass map, and splits the function for saving register to stack into two, one suitable for virtual registers (which also assigns it a physical register) and one for simply storing back physical registers. llvm-svn: 4898
* Added support for callee- and caller-save registers.Misha Brukman2002-12-032-0/+30
| | | | llvm-svn: 4897
* Fix broken ret opcode, grr...Chris Lattner2002-12-031-1/+1
| | | | llvm-svn: 4895
* Checkin debug implementation of MCEChris Lattner2002-12-031-0/+41
| | | | llvm-svn: 4893
* Fix instsel for callsChris Lattner2002-12-031-3/+2
| | | | llvm-svn: 4891
* Simplify codeChris Lattner2002-12-031-118/+13
| | | | llvm-svn: 4886
* Fix big bug introduced with symbol table changesChris Lattner2002-12-031-2/+2
| | | | llvm-svn: 4885
* Fix the buildChris Lattner2002-12-031-2/+2
| | | | llvm-svn: 4884
* brgBrian Gaeke2002-12-031-3/+14
| | | | | | Add support for cast ... to bool in visitCastInst (it's a start, anyways...) llvm-svn: 4883
* Split the machine code emitter completely out of the printerChris Lattner2002-12-033-203/+381
| | | | llvm-svn: 4882
* * Move information about Implicit Defs/Uses into X86InstrInfo.def.Chris Lattner2002-12-035-207/+131
| | | | | | | * Expose information about implicit defs/uses of register through the MachineInstrInfo.h file. llvm-svn: 4877
* Initialize implicit uses/defs fields for sparc backend to empty listChris Lattner2002-12-031-1/+3
| | | | llvm-svn: 4876
* brgBrian Gaeke2002-12-033-1/+108
| | | | | | | X86Implicit.cpp, X86Implicit.h: New files. InstSelectSimple.cpp: Add some clarifications in visitCallInst comments. llvm-svn: 4874
* More support for machine code emission: raw instructionsChris Lattner2002-12-022-12/+30
| | | | llvm-svn: 4872
* Expose explicit typeChris Lattner2002-12-021-1/+1
| | | | llvm-svn: 4871
* Start implementing MachineCodeEmitterChris Lattner2002-12-022-6/+72
| | | | llvm-svn: 4870
* Eliminate OtherFrmChris Lattner2002-12-021-10/+6
| | | | llvm-svn: 4868
* Remove commentChris Lattner2002-12-021-7/+0
| | | | | | Remove handling of OtherFrm llvm-svn: 4867
* Initial support for machine code emissionChris Lattner2002-12-023-0/+81
| | | | llvm-svn: 4866
* Ignore generated files Lexer.cpp and llvmAsmParser.*Misha Brukman2002-12-021-0/+2
| | | | llvm-svn: 4861
* * Abstracted out stack space allocation into its own functionMisha Brukman2002-12-021-34/+36
| | | | | | * Added saving of register values to the stack llvm-svn: 4858
* Fix order of operands on a store from reg to [reg+offset].Misha Brukman2002-12-021-2/+2
| | | | llvm-svn: 4857
OpenPOWER on IntegriCloud