{-# LANGUAGE GADTs #-} module Debug where import Data.Array.Accelerate.AST showPrimFun :: PrimFun a -> String showPrimFun PrimAdd{} = "PrimAdd" showPrimFun PrimSub{} = "PrimSub" showPrimFun PrimMul{} = "PrimMul" showPrimFun PrimNeg{} = "PrimNeg" showPrimFun PrimAbs{} = "PrimAbs" showPrimFun PrimSig{} = "PrimSig" showPrimFun PrimQuot{} = "PrimQuot" showPrimFun PrimRem{} = "PrimRem" showPrimFun PrimQuotRem{} = "PrimQuotRem" showPrimFun PrimIDiv{} = "PrimIDiv" showPrimFun PrimMod{} = "PrimMod" showPrimFun PrimDivMod{} = "PrimDivMod" showPrimFun PrimBAnd{} = "PrimBAnd" showPrimFun PrimBOr{} = "PrimBOr" showPrimFun PrimBXor{} = "PrimBXor" showPrimFun PrimBNot{} = "PrimBNot" showPrimFun PrimBShiftL{} = "PrimBShiftL" showPrimFun PrimBShiftR{} = "PrimBShiftR" showPrimFun PrimBRotateL{} = "PrimBRotateL" showPrimFun PrimBRotateR{} = "PrimBRotateR" showPrimFun PrimPopCount{} = "PrimPopCount" showPrimFun PrimCountLeadingZeros{} = "PrimCountLeadingZeros" showPrimFun PrimCountTrailingZeros{} = "PrimCountTrailingZeros" showPrimFun PrimFDiv{} = "PrimFDiv" showPrimFun PrimRecip{} = "PrimRecip" showPrimFun PrimSin{} = "PrimSin" showPrimFun PrimCos{} = "PrimCos" showPrimFun PrimTan{} = "PrimTan" showPrimFun PrimAsin{} = "PrimAsin" showPrimFun PrimAcos{} = "PrimAcos" showPrimFun PrimAtan{} = "PrimAtan" showPrimFun PrimSinh{} = "PrimSinh" showPrimFun PrimCosh{} = "PrimCosh" showPrimFun PrimTanh{} = "PrimTanh" showPrimFun PrimAsinh{} = "PrimAsinh" showPrimFun PrimAcosh{} = "PrimAcosh" showPrimFun PrimAtanh{} = "PrimAtanh" showPrimFun PrimExpFloating{} = "PrimExpFloating" showPrimFun PrimSqrt{} = "PrimSqrt" showPrimFun PrimLog{} = "PrimLog" showPrimFun PrimFPow{} = "PrimFPow" showPrimFun PrimLogBase{} = "PrimLogBase" showPrimFun PrimTruncate{} = "PrimTruncate" showPrimFun PrimRound{} = "PrimRound" showPrimFun PrimFloor{} = "PrimFloor" showPrimFun PrimCeiling{} = "PrimCeiling" showPrimFun PrimAtan2{} = "PrimAtan2" showPrimFun PrimIsNaN{} = "PrimIsNaN" showPrimFun PrimIsInfinite{} = "PrimIsInfinite" showPrimFun PrimLt{} = "PrimLt" showPrimFun PrimGt{} = "PrimGt" showPrimFun PrimLtEq{} = "PrimLtEq" showPrimFun PrimGtEq{} = "PrimGtEq" showPrimFun PrimEq{} = "PrimEq" showPrimFun PrimNEq{} = "PrimNEq" showPrimFun PrimMax{} = "PrimMax" showPrimFun PrimMin{} = "PrimMin" showPrimFun PrimLAnd = "PrimLAnd" showPrimFun PrimLOr = "PrimLOr" showPrimFun PrimLNot = "PrimLNot" showPrimFun PrimFromIntegral{} = "PrimFromIntegral" showPrimFun PrimToFloating{} = "PrimToFloating"