| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | This should work better with re-generating the SparcV9CodeEmitter.inc file. | Misha Brukman | 2003-05-29 | 1 | -6/+8 | |
| | | | | | | | Also, added a rule to delete the generated .inc file on `make clean'. llvm-svn: 6389 | |||||
| * | * Broke up SparcV9.td into separate files as it was getting unmanageable | Misha Brukman | 2003-05-29 | 5 | -258/+381 | |
| | | | | | | | | | * Added some Format 4 classes, but not instructions * Added notes on missing sections with FIXMEs * Added RDCCR instr llvm-svn: 6388 | |||||
| * | Fixed ordering of elements in instructions: although the binary instructions | Misha Brukman | 2003-05-28 | 1 | -30/+50 | |
| | | | | | | | | | | | | list (rd, rs1, imm), in that order (bit-wise), the actual assembly syntax is instr rd, imm, rs1, and that is how they are constructed in the instruction selector. This fixes the discrepancy. Also fixed some comments along the same lines and fixed page numbers referring to where instructions are described in the Sparc manual. llvm-svn: 6384 | |||||
| * | Add dependency to make TableGen rule fire. | Brian Gaeke | 2003-05-28 | 1 | -0/+2 | |
| | | | | | llvm-svn: 6383 | |||||
| * | Fixed an error preventing compilation. | Misha Brukman | 2003-05-27 | 2 | -2/+2 | |
| | | | | | llvm-svn: 6381 | |||||
| * | Added the 'r' and 'i' annotations to instructions as their opcode names have | Misha Brukman | 2003-05-27 | 1 | -3/+3 | |
| | | | | | | | changed. llvm-svn: 6380 | |||||
| * | Keep track of the current BasicBlock being processed so that a referencing | Misha Brukman | 2003-05-27 | 2 | -2/+4 | |
| | | | | | | | MachineInstr can later be patched up correctly. llvm-svn: 6378 | |||||
| * | Added 'r' and 'i' annotations to instructions as SparcInstr.def has changed. | Misha Brukman | 2003-05-27 | 1 | -19/+22 | |
| | | | | | llvm-svn: 6377 | |||||
| * | Added 'r' or 'i' annotations to instructions, as SparcInstr.def has changed. | Misha Brukman | 2003-05-27 | 1 | -16/+16 | |
| | | | | | | | | | | Non-obvious change: since I have changed ST and STD to be STF and STDF to (a) closer resemble their name (NOT assembly text) in the Sparc manual, and (b) clearly specify that they they are floating-point opcodes, I made the same changes in this file. llvm-svn: 6376 | |||||
| * | Added 'r' or 'i' annotations to instructions, as SparcInstr.def has changed. | Misha Brukman | 2003-05-27 | 1 | -41/+79 | |
| | | | | | | | | | | | Here I had to make one non-trivial change: add a function to get a version of the opcode that takes an immediate, given an opcode that takes all registers. This is required because sometimes it is not known at construction time which opcode is used because opcodes are passed around between functions. llvm-svn: 6375 | |||||
| * | Added 'r' or 'i' annotations to instructions, as SparcInstr.def has changed. | Misha Brukman | 2003-05-27 | 3 | -27/+30 | |
| | | | | | llvm-svn: 6373 | |||||
| * | Added entries for each of the instructions with annotations ('r' or 'i'). | Misha Brukman | 2003-05-27 | 1 | -34/+57 | |
| | | | | | llvm-svn: 6372 | |||||
| * | One of the first major changes to make the work of JITting easier: adding | Misha Brukman | 2003-05-27 | 1 | -55/+113 | |
| | | | | | | | | | | | | | | | | | annotations on instructions to specify which format they are (i.e., do they take 2 registers and 1 immediate or just 3 registers) as that changes their binary representation and hence, code emission. This makes instructions more like how X86 defines them to be. Now, writers of instruction selection must choose the correct opcode based on what instruction type they are building, which they already know. Thus, the JIT doesn't have to do the same work by `discovering' which operands an instruction really has. As this involves lots of small changes to a lot of files in lib/target/Sparc, I'll commit them individually because otherwise the diffs will be unreadable. llvm-svn: 6371 | |||||
| * | * Allow passing in an unsigned configuration to allocateSparcTargetMachine() | Misha Brukman | 2003-05-27 | 1 | -10/+35 | |
| | | | | | | | | | a default value is set in the header file. * Fixed some code layout to make it more consistent with the rest of codebase * Added addPassesToJITCompile() with relevant passes llvm-svn: 6369 | |||||
| * | Moved generation of the SparcV9CodeEmitter.inc file higher in the Makefile so | Misha Brukman | 2003-05-27 | 1 | -3/+4 | |
| | | | | | | | that Makefile.common would see it. llvm-svn: 6367 | |||||
| * | Add prototypes to add passes to JIT compilation and code emission. | Misha Brukman | 2003-05-27 | 1 | -8/+17 | |
| | | | | | | | | | Also, added annotations to how instructions are modified (reg/imm operands). Added prototype for adding register numbers to values pass for interfacing with the target-independent register allocators in the JIT. llvm-svn: 6366 | |||||
| * | Broke out class definition from SparcV9CodeEmitter, and added ability to take a | Misha Brukman | 2003-05-27 | 2 | -25/+35 | |
| | | | | | | | | MachineCodeEmitter to make a pass-through debugger -- output to memory and to std::cerr. llvm-svn: 6363 | |||||
| * | SparcV9CodeEmitter.cpp is a part of the Sparc code emitter. The main function | Misha Brukman | 2003-05-27 | 3 | -0/+94 | |
| | | | | | | | | | | | | that assembles instructions is generated via TableGen (and hence must be built before building this directory, but that's already the case in the top-level Makefile). Also added is .cvsignore to ignore the generated file `SparcV9CodeEmitter.inc', which is included by SparcV9CodeEmitter.cpp . llvm-svn: 6357 | |||||
| * | Added definitions for a bunch of floating-point instructions. | Misha Brukman | 2003-05-27 | 1 | -65/+381 | |
| | | | | | llvm-svn: 6356 | |||||
| * | Added special register class containing (for now) %fsr. | Vikram S. Adve | 2003-05-27 | 5 | -158/+111 | |
| | | | | | | | | | Fixed spilling of %fcc[0-3] which are part of %fsr. Moved some machine-independent reg-class code to class TargetRegInfo from SparcReg{Class,}Info. llvm-svn: 6339 | |||||
| * | Bug fix: right shift for int divide-by-power-of-2 was incorrect for | Vikram S. Adve | 2003-05-25 | 1 | -11/+48 | |
| | | | | | | | negative values. Need to add one to a negative value before right shift! llvm-svn: 6334 | |||||
| * | Bug fix: padding bytes within a structure should go after each field! | Vikram S. Adve | 2003-05-25 | 1 | -5/+5 | |
| | | | | | llvm-svn: 6333 | |||||
| * | Bug fix: sign-extension was not happening for C = -MININT since C == -C! | Vikram S. Adve | 2003-05-25 | 1 | -2/+3 | |
| | | | | | llvm-svn: 6332 | |||||
| * | Add support for compiling varargs functions. | Vikram S. Adve | 2003-05-25 | 4 | -77/+179 | |
| | | | | | llvm-svn: 6325 | |||||
| * | Reword to remove reference to how things worked in the past. | Misha Brukman | 2003-05-24 | 1 | -4/+3 | |
| | | | | | llvm-svn: 6323 | |||||
| * | Implement the TargetInstrInfo's createNOPinstr() and isNOPinstr() interface. | Misha Brukman | 2003-05-24 | 1 | -0/+29 | |
| | | | | | llvm-svn: 6320 | |||||
| * | Cleaned up code layout; no functional changes. | Misha Brukman | 2003-05-23 | 1 | -24/+20 | |
| | | | | | llvm-svn: 6312 | |||||
| * | Fixed `volatile' typo. | Misha Brukman | 2003-05-21 | 1 | -1/+1 | |
| | | | | | llvm-svn: 6266 | |||||
| * | Cleaned up code layout, spacing, etc. for readability purposes and to be more | Misha Brukman | 2003-05-21 | 2 | -307/+281 | |
| | | | | | | | | | | consistent with the style of LLVM's code base (and itself! it's inconsistent in some places.) No functional changes were made. llvm-svn: 6265 | |||||
| * | Cleaned up code layout, spacing, etc. for readability purposes and to be more | Misha Brukman | 2003-05-21 | 1 | -59/+44 | |
| | | | | | | | | | | consistent with the style of LLVM's code base (and itself! it's inconsistent in some places.) No functional changes were made. llvm-svn: 6262 | |||||
| * | Namespacified `vector' and `cerr' to always use the `std::' namespace. | Misha Brukman | 2003-05-21 | 3 | -88/+90 | |
| | | | | | | | Eliminated `using' directives. llvm-svn: 6261 | |||||
| * | Sparc instruction opcodes now all live under the `V9' namespace. | Misha Brukman | 2003-05-20 | 8 | -568/+569 | |
| | | | | | llvm-svn: 6249 | |||||
| * | Remove wierd printout | Chris Lattner | 2003-05-12 | 1 | -1/+1 | |
| | | | | | llvm-svn: 6145 | |||||
| * | Added the initial version of the TableGen description for the Sparc backend. | Misha Brukman | 2003-05-07 | 1 | -0/+359 | |
| | | | | | llvm-svn: 6021 | |||||
| * | Eliminate use of NonCopyable so that doxygen documentation doesn't link | Chris Lattner | 2003-05-01 | 1 | -3/+4 | |
| | | | | | | | the Annotation classes with the noncopyable classes for no reason llvm-svn: 5973 | |||||
| * | Remove two fields from TargetData which are target specific. | Chris Lattner | 2003-04-26 | 1 | -1/+1 | |
| | | | | | llvm-svn: 5963 | |||||
| * | IntegerRegSize is always 8 for sparc | Chris Lattner | 2003-04-26 | 2 | -6/+3 | |
| | | | | | llvm-svn: 5961 | |||||
| * | Fix obvious type-o | Chris Lattner | 2003-04-25 | 2 | -3/+3 | |
| | | | | | llvm-svn: 5932 | |||||
| * | Trivial cleanup | Chris Lattner | 2003-04-24 | 1 | -5/+5 | |
| | | | | | llvm-svn: 5899 | |||||
| * | Add support for the Switch instruction by running the lowerSwitch pass first | Chris Lattner | 2003-04-23 | 1 | -0/+3 | |
| | | | | | llvm-svn: 5867 | |||||
| * | Add new linkage types to support a real frontend | Chris Lattner | 2003-04-16 | 1 | -1/+2 | |
| | | | | | llvm-svn: 5786 | |||||
| * | Move sparc specific code into the Sparc backend | Chris Lattner | 2003-01-15 | 3 | -2/+271 | |
| | | | | | llvm-svn: 5317 | |||||
| * | Fix warnings | Chris Lattner | 2003-01-15 | 1 | -4/+3 | |
| | | | | | llvm-svn: 5316 | |||||
| * | Adjust to simpler interfaces | Chris Lattner | 2003-01-15 | 2 | -49/+42 | |
| | | | | | | | Eliminate dependency on RegClass.h llvm-svn: 5315 | |||||
| * | #include RegClass.h explicitly | Chris Lattner | 2003-01-15 | 1 | -0/+1 | |
| | | | | | llvm-svn: 5307 | |||||
| * | Move private header to private directory | Chris Lattner | 2003-01-15 | 2 | -2/+2 | |
| | | | | | llvm-svn: 5305 | |||||
| * | Prune #includes | Chris Lattner | 2003-01-15 | 2 | -2/+0 | |
| | | | | | llvm-svn: 5303 | |||||
| * | Use BuildMI more | Chris Lattner | 2003-01-15 | 2 | -242/+156 | |
| | | | | | llvm-svn: 5299 | |||||
| * | Fix bug found by regtests | Chris Lattner | 2003-01-15 | 1 | -9/+5 | |
| | | | | | llvm-svn: 5294 | |||||
| * | Use BuildMI more, Create*Instruction less | Chris Lattner | 2003-01-15 | 3 | -135/+71 | |
| | | | | | llvm-svn: 5291 | |||||

