summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* 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
* Add rawfrm flagsChris Lattner2002-12-012-7/+26
| | | | llvm-svn: 4841
* Don't add implicit regsChris Lattner2002-12-011-1/+1
| | | | llvm-svn: 4840
* brgBrian Gaeke2002-11-301-49/+74
| | | | | | | | InstSelectSimple.cpp: Refactor out conversion of byte, short -> int from visitReturnInst() to new method, promote32(). Use it in both visitReturnInst() and visitCallInst(). llvm-svn: 4839
* brgBrian Gaeke2002-11-292-4/+27
| | | | | | | | | InstSelectSimple.cpp: First draft of visitCallInst method, handling int/float args. X86InstrInfo.def: Add entries for CALL with 32-bit pc relative arg, and PUSH with 32-bit reg arg. llvm-svn: 4838
* Fix logical error in TD pass: we should clear Mod/Ref bits of each callerVikram S. Adve2002-11-273-8/+17
| | | | | | | before inlining their graphs into a function. To support this, added flags to CloneFlags to strip/keep Mod/Ref bits. llvm-svn: 4836
* (1) Bug fix that was causing nodes with dangling references to be freed.Vikram S. Adve2002-11-271-77/+201
| | | | | | | | | | We run removeDeadNodes() on the TD graph up front before using it. (2) Major enhancement to printing of results: now we list the actual objects that are mod/ref instead of just printing the bit vectors. Also an important bug fix in TDDataStructures pass (no change here): clear Mod/Ref bits of callers before inlining into a function. llvm-svn: 4833
* brgBrian Gaeke2002-11-261-3/+33
| | | | | | | InstSelectSimple.cpp: Add some comments that say what I'm going to do for calls and casts. llvm-svn: 4832
* Keep global nodes in each DS Graph (by forcing them to be marked live).Vikram S. Adve2002-11-251-3/+3
| | | | llvm-svn: 4831
* Oops. Got the MOVrm and MOVmr mixed up. Fixed. We can now print outMisha Brukman2002-11-221-2/+2
| | | | | | instructions correctly. llvm-svn: 4830
* Enable the register allocator pass.Misha Brukman2002-11-221-1/+5
| | | | llvm-svn: 4829
* A simple (spilling) register allocator.Misha Brukman2002-11-221-0/+219
| | | | llvm-svn: 4828
* Added methods to read/write values to stack in .h, fixed implementation inMisha Brukman2002-11-222-21/+39
| | | | | | .cpp to return the iterator correctly. llvm-svn: 4827
* Added -*- C++ -*- mode to the comments.Misha Brukman2002-11-221-1/+1
| | | | llvm-svn: 4826
* Add a simple way to add memory locations of format [reg+offset]Misha Brukman2002-11-221-0/+9
| | | | llvm-svn: 4825
* lib/Target/X86/InstSelectSimple.cpp: Add visitCallInst, visitCastInst.Brian Gaeke2002-11-221-0/+14
| | | | llvm-svn: 4821
* Handle cmp Reg, 0 correctlyChris Lattner2002-11-211-10/+13
| | | | llvm-svn: 4819
* Printing support for more stuffChris Lattner2002-11-211-20/+20
| | | | llvm-svn: 4818
* Don't add implicit operandsChris Lattner2002-11-211-5/+5
| | | | llvm-svn: 4817
* Fix off by one bugChris Lattner2002-11-211-1/+1
| | | | llvm-svn: 4816
* Add fixmeChris Lattner2002-11-211-0/+3
| | | | llvm-svn: 4815
* Minor code cleanupsChris Lattner2002-11-211-2/+1
| | | | llvm-svn: 4814
* Implement printing of store instructionsChris Lattner2002-11-211-5/+20
| | | | llvm-svn: 4813
* The big change here is to handle printing/emission of X86II::MRMSrcMemChris Lattner2002-11-211-23/+184
| | | | | | | instructions. Right now the only users are load instructions, and Misha's spill code llvm-svn: 4812
* Remove implicit information from instruction selectorChris Lattner2002-11-211-6/+2
| | | | llvm-svn: 4811
* Add printing information for MUL and DIVChris Lattner2002-11-211-12/+15
| | | | llvm-svn: 4810
* Fix a bug that prevented compilation of multiple functionsChris Lattner2002-11-211-0/+1
| | | | llvm-svn: 4809
* Remove opcode information for instructions that are completely defined nowChris Lattner2002-11-211-22/+22
| | | | llvm-svn: 4805
* Add printing support for sahf & setccChris Lattner2002-11-211-15/+15
| | | | llvm-svn: 4804
OpenPOWER on IntegriCloud