[project @ 2000-07-11 15:26:33 by sewardj]
Fix up the sparc native code generator. Mostly dull stuff. Notable changes: * Cleaned up ccall mechanism for sparc somewhat. * Rearranged assignment of sparc floating point registers (includes/MachRegs.h) so the NCG's register allocator can handle the double-single pairing issue without modification. Split VirtualRegF into VirtualRegF and VirtualRegD, and split RcFloating into RcFloat and RcDouble. Net effect is that there are now three register classes -- int, float and double, and we pretend that sparc has some float and some double real regs. * (A fix for all platforms): propagate MachFloats through as StFloats, not StDoubles. Amazingly, until now literal floats had been converted to and treated as doubles, including in ccalls.
Showing
- ghc/compiler/nativeGen/AbsCStixGen.lhs 8 additions, 1 deletionghc/compiler/nativeGen/AbsCStixGen.lhs
- ghc/compiler/nativeGen/AsmCodeGen.lhs 1 addition, 1 deletionghc/compiler/nativeGen/AsmCodeGen.lhs
- ghc/compiler/nativeGen/AsmRegAlloc.lhs 6 additions, 3 deletionsghc/compiler/nativeGen/AsmRegAlloc.lhs
- ghc/compiler/nativeGen/MachCode.lhs 86 additions, 38 deletionsghc/compiler/nativeGen/MachCode.lhs
- ghc/compiler/nativeGen/MachMisc.lhs 21 additions, 2 deletionsghc/compiler/nativeGen/MachMisc.lhs
- ghc/compiler/nativeGen/MachRegs.lhs 129 additions, 86 deletionsghc/compiler/nativeGen/MachRegs.lhs
- ghc/compiler/nativeGen/PprMach.lhs 83 additions, 75 deletionsghc/compiler/nativeGen/PprMach.lhs
- ghc/compiler/nativeGen/RegAllocInfo.lhs 63 additions, 42 deletionsghc/compiler/nativeGen/RegAllocInfo.lhs
- ghc/compiler/nativeGen/Stix.lhs 4 additions, 0 deletionsghc/compiler/nativeGen/Stix.lhs
- ghc/compiler/nativeGen/StixPrim.lhs 5 additions, 2 deletionsghc/compiler/nativeGen/StixPrim.lhs
- ghc/includes/MachRegs.h 46 additions, 13 deletionsghc/includes/MachRegs.h
Loading
Please register or sign in to comment