summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Sparc
Commit message (Collapse)AuthorAgeFilesLines
...
* Canged ColorCallArg so that when a call arg is directly pushed on to stackRuchira Sasanka2001-11-121-2/+7
| | | | | | | for argument passing, that instruction is directly added to the InstructionsBefore set of the called machine instruction - i.e., it is not reordered. llvm-svn: 1277
* Disable use of the Phi machine instruction which is no longer neededVikram S. Adve2001-11-121-0/+5
| | | | | | for register allocation. llvm-svn: 1270
* Added phi elimination codeRuchira Sasanka2001-11-123-13/+55
| | | | llvm-svn: 1265
* Fix dumb bug in alignment adjustment code!Vikram S. Adve2001-11-121-1/+1
| | | | llvm-svn: 1260
* Fix bogus code that was eliminating needed args.Vikram S. Adve2001-11-111-5/+1
| | | | llvm-svn: 1259
* Fixed FP and SP usage. SP for outgoing args - for everything else FPRuchira Sasanka2001-11-111-2/+2
| | | | llvm-svn: 1258
* cahnged StackPointer accesses to FramePointerRuchira Sasanka2001-11-111-6/+6
| | | | llvm-svn: 1257
* Down-growing offsets from FP should start at 0, not -1.Vikram S. Adve2001-11-111-1/+1
| | | | llvm-svn: 1255
* Corrected reodering code for instructions inserted before callsRuchira Sasanka2001-11-102-125/+210
| | | | llvm-svn: 1252
* Several bug fixes in printing constants, particularly with unsizedVikram S. Adve2001-11-101-42/+88
| | | | | | arrays and multi-dimensional arrays. llvm-svn: 1239
* Must generate an instruction for GetElementPtr if single user is notVikram S. Adve2001-11-101-10/+20
| | | | | | a memory instruction! llvm-svn: 1238
* Disabled some debuggin messagesRuchira Sasanka2001-11-101-12/+17
| | | | llvm-svn: 1237
* Added code for correct reordering of call argumentsRuchira Sasanka2001-11-092-3/+240
| | | | llvm-svn: 1234
* Add support to print constant arrays and structures.Vikram S. Adve2001-11-091-26/+68
| | | | | | Align data larger than an L1 cache line on L1 cache line boundary. llvm-svn: 1228
* Do the same for float->int that we did for int->float earlier.Vikram S. Adve2001-11-091-54/+102
| | | | | | Also check IsPointerType() in addition to IsIntegral() in several places. llvm-svn: 1227
* Added function UltraSparcInstrInfo::CreateCodeToCopyFloatToInt.Vikram S. Adve2001-11-091-19/+53
| | | | llvm-svn: 1226
* Added class UltraSparcCacheInfo.Vikram S. Adve2001-11-091-1/+2
| | | | llvm-svn: 1225
* Bug fix: Need to include the stack offset "bias" in assembly code itself.Vikram S. Adve2001-11-091-8/+39
| | | | | | | Added class UltraSparcCacheInfo. Added function to convert float to int by copying via memory. llvm-svn: 1224
* Bug fix: need to use .reserve for uninitialized data.Vikram S. Adve2001-11-081-6/+5
| | | | llvm-svn: 1205
* Added support for bitwise logical operators. Use different labels forVikram S. Adve2001-11-081-4/+29
| | | | | | | for these than for boolean logicals to avoid making Burg diverge. See Burg manual for more information. llvm-svn: 1196
* Fixed function getEscapedString to follow the Sparc assembly rulesVikram S. Adve2001-11-081-107/+150
| | | | | | | for symbol names! (And renamed it to getValidSymbolName). Fixed format for float and other constants. llvm-svn: 1195
* Fix bugs in FITOS/D instruction generation.Vikram S. Adve2001-11-081-68/+116
| | | | | | | | The space for optional args in the stack frame is now being computed, so finish the code generation for the variable `alloca'. Finally, made a major overhaul of how stack frame is managed. llvm-svn: 1194
* Added new function UltraSparcInstrInfo::CreateCodeToCopyIntToFloat.Vikram S. Adve2001-11-081-6/+64
| | | | | | Also major overhaul of how stack frame is managed. llvm-svn: 1193
* Removed class RegStackOffsets and used class MachineCodeForMethodVikram S. Adve2001-11-081-31/+53
| | | | | | directly to manage stack frame. llvm-svn: 1192
* Use MachineFrameInfo as base class of UltraSparcFrameInfo, and madeVikram S. Adve2001-11-082-59/+144
| | | | | | a major overhaul of this class and how stack frames are managed. llvm-svn: 1191
* Killing warningsChris Lattner2001-11-073-8/+10
| | | | llvm-svn: 1175
* Squelch warnings about not returning a valueChris Lattner2001-11-071-3/+4
| | | | llvm-svn: 1173
* Bug fix: Printing AdIBef and AdIAft outside the scope where theyVikram S. Adve2001-11-061-7/+7
| | | | | | were declared, and in some cases when they were unintialized. llvm-svn: 1146
* Generate code for Rem instruction.Vikram S. Adve2001-11-041-19/+53
| | | | llvm-svn: 1124
* Fixed instruction information for RDCCR and WRCCR.Vikram S. Adve2001-11-043-59/+128
| | | | | | | | Fixed selection to create a TmpInstruction for each integer CC register (since it is an implicit side-effect, unlike FP CC registers which are explicit operands). llvm-svn: 1120
* Minor method renameChris Lattner2001-11-041-1/+1
| | | | llvm-svn: 1119
* Added code to support correct saving of %ccr across callsRuchira Sasanka2001-11-034-21/+158
| | | | llvm-svn: 1111
* Arranged stack frame - needs furhter organizationRuchira Sasanka2001-11-032-0/+15
| | | | | | Moved InsertCallerSaveInstr to the SparcRegInfo.cpp llvm-svn: 1106
* Check in to use moved stringizing codeChris Lattner2001-10-291-2/+10
| | | | llvm-svn: 1024
* Minor fix I omitted to check in.Vikram S. Adve2001-10-281-1/+1
| | | | llvm-svn: 1012
* Generate SETX for 64-bit integers!Vikram S. Adve2001-10-281-8/+28
| | | | llvm-svn: 1007
* Add SETX instruction for 64-bit constants.Vikram S. Adve2001-10-281-8/+9
| | | | | | Add M_CC_FLAG for many instructions that use int or fp CC registers. llvm-svn: 1006
* Need to subtract, not add, stack size in SAVE instruction!Vikram S. Adve2001-10-281-3/+6
| | | | llvm-svn: 1005
* Major overhaul to print globals and constants.Vikram S. Adve2001-10-281-133/+355
| | | | llvm-svn: 1004
* Added support for spillingRuchira Sasanka2001-10-282-90/+255
| | | | llvm-svn: 992
* Fixed load syntax in EmitAssemblyRuchira Sasanka2001-10-242-10/+47
| | | | | | Fixed cpReg2Mem (store) operand oreder in SparcRegInfo.cpp llvm-svn: 984
* Fixed logic for checking whether a LR received the correct color.Ruchira Sasanka2001-10-241-52/+60
| | | | llvm-svn: 976
* Corrected a bug in SparcRegInfo.cpp - to add inserted instructions before a ↵Ruchira Sasanka2001-10-232-17/+16
| | | | | | return llvm-svn: 969
* UNUSED.Vikram S. Adve2001-10-221-240/+0
| | | | llvm-svn: 944
* Split JMPL into JMPLCALL and JMPLRET.Vikram S. Adve2001-10-221-1/+2
| | | | llvm-svn: 943
* Added a frame layout class, and code to insert prolog/epilog code.Vikram S. Adve2001-10-221-15/+143
| | | | llvm-svn: 942
* Reordered registers slightly to simplify a new check.Vikram S. Adve2001-10-221-3/+14
| | | | | | Added a function to map between the caller's and callee's register windows. llvm-svn: 941
* Split JMPL into JMPLCALL and JMPLRET so that IsCall and IsReturn canVikram S. Adve2001-10-221-11/+9
| | | | | | be used to distinguish those uses of the `jmpl' instruction. llvm-svn: 940
* Added functions to generate prolog and epilog code.Vikram S. Adve2001-10-221-116/+149
| | | | | | Use JMPLRET instead of RETURN for method returns so that llvm-svn: 939
* Added SAVE and RESTORE. Duplicated JMPL into JMPLCALL and JMPLRET,Vikram S. Adve2001-10-221-1/+6
| | | | | | which have the same opcode and operands but different flags. llvm-svn: 938
OpenPOWER on IntegriCloud