summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen
Commit message (Collapse)AuthorAgeFilesLines
* Start allocating stack space at [ebp-4] to not overwrite the return address.Misha Brukman2002-12-131-2/+9
| | | | | | Also make all loads & stores 4-byte aligned for performance. ;) llvm-svn: 4982
* Take advantage of our knowledge of 2-address X86 instructions andMisha Brukman2002-12-121-7/+24
| | | | | | register-allocated them appropriately. llvm-svn: 4976
* Added code generation for function prologues and epilogues.Misha Brukman2002-12-041-17/+32
| | | | llvm-svn: 4930
* 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
* 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
* Checkin debug implementation of MCEChris Lattner2002-12-031-0/+41
| | | | llvm-svn: 4893
* * 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
* A simple (spilling) register allocator.Misha Brukman2002-11-221-0/+219
| | | | llvm-svn: 4828
* Initialize the SSARegMap.Misha Brukman2002-11-201-0/+1
| | | | llvm-svn: 4782
* 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
* Fix warningChris Lattner2002-11-091-2/+2
| | | | llvm-svn: 4649
* Move function to cpp file from headerChris Lattner2002-11-022-5/+7
| | | | llvm-svn: 4510
* New iostream definitionsChris Lattner2002-11-011-0/+1
| | | | llvm-svn: 4482
* Restore support for indirect function calls (which briefly wasn't workingVikram S. Adve2002-10-311-4/+10
| | | | | | after I removed annotations on MachineInstr for the CallDescriptor). llvm-svn: 4469
* 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-302-33/+148
| | | | llvm-svn: 4435
* Make argsize calculation stuff optional, so that Targets without FrameInfoChris Lattner2002-10-291-4/+6
| | | | | | objects yet don't die llvm-svn: 4427
* Implement autoinserting ctorChris Lattner2002-10-291-0/+20
| | | | llvm-svn: 4426
* Rename annotation idChris Lattner2002-10-291-5/+5
| | | | llvm-svn: 4425
* Merge with sparc backendChris Lattner2002-10-291-31/+0
| | | | llvm-svn: 4403
* X86 merge is complete, eliminate unused codeChris Lattner2002-10-291-76/+0
| | | | llvm-svn: 4400
* Remove separate vector of implicit refs from MachineInstr, andVikram S. Adve2002-10-292-16/+55
| | | | | | | | 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 CallArgsDescriptor into this class instead of making it anVikram S. Adve2002-10-291-0/+5
| | | | | | annotation on the machine instruction. llvm-svn: 4398
* 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-292-3/+3
| | | | llvm-svn: 4389
* Use higher level methodChris Lattner2002-10-291-2/+2
| | | | llvm-svn: 4386
* Remove #include, misleading comment, and a typedef used only onceChris Lattner2002-10-291-25/+4
| | | | llvm-svn: 4383
* Inline typedef, eliminate unused methodChris Lattner2002-10-292-24/+12
| | | | llvm-svn: 4382
* Remove long dead #if 0Chris Lattner2002-10-291-4/+0
| | | | llvm-svn: 4381
* Add #includes that were eliminated from headersChris Lattner2002-10-294-1/+14
| | | | llvm-svn: 4380
* De-inline methodsChris Lattner2002-10-291-9/+2
| | | | llvm-svn: 4379
* Remove #includeChris Lattner2002-10-291-1/+0
| | | | llvm-svn: 4378
* Remove unneeded #includeChris Lattner2002-10-291-10/+9
| | | | llvm-svn: 4377
* Remove forward declChris Lattner2002-10-291-1/+0
| | | | llvm-svn: 4376
* Make assertIGNode be private to the InterferenceGraph.cpp fileChris Lattner2002-10-292-29/+26
| | | | llvm-svn: 4375
* MachineInstrInfo no longer #includes this header, so we mustChris Lattner2002-10-281-1/+1
| | | | llvm-svn: 4366
* 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
* Replaced uses of deprecated `MachineFunction::get(BasicBlock *BB)'.Misha Brukman2002-10-281-15/+0
| | | | llvm-svn: 4351
* Remove two arguments that are never specifiedChris Lattner2002-10-281-8/+2
| | | | llvm-svn: 4348
* Rename some regalloc fieldsChris Lattner2002-10-281-4/+4
| | | | llvm-svn: 4346
* Eliminate usage of MachineBasicBlock::getChris Lattner2002-10-282-103/+82
| | | | llvm-svn: 4344
* Remove usage of MachineBasicBlock::getChris Lattner2002-10-281-14/+18
| | | | llvm-svn: 4342
* Remove usage of MachineBasicBlock::getChris Lattner2002-10-284-186/+96
| | | | llvm-svn: 4341
OpenPOWER on IntegriCloud