llvm-6502/lib/Target/SparcV9
Misha Brukman 0870e970ff Use the registers g1 and g5 as temporaries for making far jumps and far calls,
because saving i1 and i2 to their ``designated'' stack slots corrupts unknown
memory in other functions, standard libraries, and worse.

In addition, this has the benefit of improving JIT performance because we
eliminate writing out 4 instructions in CompilationCallback() and 2 loads and 2
stores.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7653 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-06 22:19:18 +00:00
..
InstrSched Be const correct 2003-07-26 23:23:41 +00:00
InstrSelection All constant-evaluation code now unified into 2003-07-29 19:50:12 +00:00
LiveVar Don't require a BB to look-up live variables, unless they may need to 2003-07-29 19:42:32 +00:00
ModuloScheduling Remove #include 2003-07-26 23:01:04 +00:00
RegAlloc Use a new local data structure instead of the MachineInstr::regsUsed set 2003-08-05 22:11:13 +00:00
.cvsignore Since there is now another derived .inc file, ignore them all. 2003-05-29 20:15:27 +00:00
EmitBytecodeToAssembly.cpp
MachineCodeForInstruction.h Remove a ton of extraneous #includes 2003-06-22 03:08:05 +00:00
MachineFunctionInfo.h State for frame and constant pool information pulled out of MachineFunction 2002-12-28 20:07:33 +00:00
MachineInstrAnnot.h Values stored in CallArgsDescriptor cannot be const. 2003-07-10 19:46:15 +00:00
Makefile Remove makefile complexity by always running tablegen with its final output 2003-08-01 20:34:56 +00:00
MappingInfo.cpp lib/CodeGen/Mapping/MappingInfo.cpp: 2003-06-04 22:07:12 +00:00
MappingInfo.h Add file comment. Include <vector> and <string>. Update include guards 2003-06-04 22:02:47 +00:00
SparcV9_F2.td * Set annul bit to be 0, because the Sparc backend currently does not use it. 2003-08-05 14:34:38 +00:00
SparcV9_F3.td Transition to using 'let X = y' instead of 'set X = y'. 2003-08-04 05:03:18 +00:00
SparcV9_F4.td Transition to using 'let X = y' instead of 'set X = y'. 2003-08-04 05:03:18 +00:00
SparcV9_Reg.td Transition to using 'let X = y' instead of 'set X = y'. 2003-08-04 05:03:18 +00:00
SparcV9.burg.in Fold cast-to-bool into not. Later, this should also be folded into other 2003-07-10 19:47:42 +00:00
SparcV9.td Transition to using 'let X = y' instead of 'set X = y'. 2003-08-04 05:03:18 +00:00
SparcV9AsmPrinter.cpp * Removed `using' declaration, now use full namespace qualifier std::string 2003-08-05 16:01:50 +00:00
SparcV9CodeEmitter.cpp Use the registers g1 and g5 as temporaries for making far jumps and far calls, 2003-08-06 22:19:18 +00:00
SparcV9CodeEmitter.h SparcV9CodeEmitter.cpp: 2003-08-06 16:20:22 +00:00
SparcV9Instr.def RDCCR defines arg. #1, not arg. #2. 2003-06-20 11:32:11 +00:00
SparcV9InstrInfo.cpp Unify all constant evaluations that depend on register size 2003-07-29 19:59:23 +00:00
SparcV9InstrSelection.cpp 1. Bug fix: was using SLL instead of SLLX for ULongTy. Chump. 2003-08-06 18:48:40 +00:00
SparcV9InstrSelectionSupport.h * Changed Bcc instructions to behave like BPcc instructions 2003-06-06 09:52:23 +00:00
SparcV9Internals.h Add ConvertConstantToIntType() to unify all constant handling 2003-07-29 19:54:41 +00:00
SparcV9PeepholeOpts.cpp Cleaned up code layout; no functional changes. 2003-05-23 19:20:57 +00:00
SparcV9PreSelection.cpp Remove conversion of fp-to-uint cast into a multi-step cast: 2003-08-06 18:42:49 +00:00
SparcV9PrologEpilogInserter.cpp This code doesn't modify the LLVM structure, keep stuff const 2003-07-26 23:04:00 +00:00
SparcV9RegClassInfo.cpp (1) Major fix to the way unused regs. are marked and found for the FP 2003-07-25 21:12:15 +00:00
SparcV9RegClassInfo.h (1) Major fix to the way unused regs. are marked and found for the FP 2003-07-25 21:12:15 +00:00
SparcV9RegInfo.cpp Add code to support stack spill/temp offsets that don't fit in the 2003-07-29 19:53:21 +00:00
SparcV9SchedInfo.cpp Added 'r' and 'i' versions to WRCCR. 2003-06-06 09:52:58 +00:00
SparcV9StackSlots.cpp Rename MachineInstrInfo -> TargetInstrInfo 2003-01-14 22:00:31 +00:00
SparcV9TargetMachine.cpp Put back the separate pass to decompose multi-dimensional references 2003-08-01 15:53:24 +00:00