- regs = if isCall then
- case (reps, conv) of
- (_, NativeNodeCall) -> getRegsWithNode
- (_, NativeDirectCall) -> getRegsWithoutNode
- (_, GC ) -> getRegsWithNode
- (_, PrimOpCall) -> allRegs
- (_, Slow ) -> noRegs
- _ -> pprPanic "Unknown calling convention" (ppr conv)
- else
- case (reps, conv) of
- ([_], _) -> allRegs
- (_, NativeNodeCall) -> getRegsWithNode
- (_, NativeDirectCall) -> getRegsWithoutNode
- (_, NativeReturn) -> getRegsWithNode
- (_, GC ) -> getRegsWithNode
- (_, PrimOpReturn) -> getRegsWithNode
- (_, Slow ) -> noRegs
- _ -> pprPanic "Unknown calling convention" (ppr conv)
- -- (_, NativeCall) -> getRegsWithoutNode
- -- (_, GC ) -> getRegsWithNode
- -- (_, PrimOpCall) -> allRegs
- -- (_, Slow ) -> noRegs
- -- _ -> panic "Unknown calling convention"
- -- else
- -- case (reps, conv) of
- -- ([_], _) -> allRegs
- -- (_, NativeCall) -> getRegsWithNode
+ regs = case (reps, conv) of
+ (_, NativeNodeCall) -> getRegsWithNode
+ (_, NativeDirectCall) -> getRegsWithoutNode
+ ([_], NativeReturn) -> allRegs
+ (_, NativeReturn) -> getRegsWithNode
+ (_, GC) -> getRegsWithNode
+ (_, PrimOpCall) -> allRegs
+ ([_], PrimOpReturn) -> allRegs
+ (_, PrimOpReturn) -> getRegsWithNode
+ (_, Slow) -> noRegs
+ _ -> pprPanic "Unknown calling convention" (ppr conv)