- FloatExpOp -> promoteAndCall SLIT("exp") DoubleKind
- FloatLogOp -> promoteAndCall SLIT("log") DoubleKind
- FloatSqrtOp -> promoteAndCall SLIT("sqrt") DoubleKind
-
- FloatSinOp -> promoteAndCall SLIT("sin") DoubleKind
- FloatCosOp -> promoteAndCall SLIT("cos") DoubleKind
- FloatTanOp -> promoteAndCall SLIT("tan") DoubleKind
-
- FloatAsinOp -> promoteAndCall SLIT("asin") DoubleKind
- FloatAcosOp -> promoteAndCall SLIT("acos") DoubleKind
- FloatAtanOp -> promoteAndCall SLIT("atan") DoubleKind
-
- FloatSinhOp -> promoteAndCall SLIT("sinh") DoubleKind
- FloatCoshOp -> promoteAndCall SLIT("cosh") DoubleKind
- FloatTanhOp -> promoteAndCall SLIT("tanh") DoubleKind
-
- FloatPowerOp -> promoteAndCall SLIT("pow") DoubleKind
-
- DoubleAddOp -> trivialFCode DoubleKind FADD args
- DoubleSubOp -> trivialFCode DoubleKind FSUB args
- DoubleMulOp -> trivialFCode DoubleKind FMUL args
- DoubleDivOp -> trivialFCode DoubleKind FDIV args
- DoubleNegOp -> trivialUFCode DoubleKind (FNEG DF) args
-
+ FloatExpOp -> promoteAndCall SLIT("exp") DoubleRep
+ FloatLogOp -> promoteAndCall SLIT("log") DoubleRep
+ FloatSqrtOp -> promoteAndCall SLIT("sqrt") DoubleRep
+
+ FloatSinOp -> promoteAndCall SLIT("sin") DoubleRep
+ FloatCosOp -> promoteAndCall SLIT("cos") DoubleRep
+ FloatTanOp -> promoteAndCall SLIT("tan") DoubleRep
+
+ FloatAsinOp -> promoteAndCall SLIT("asin") DoubleRep
+ FloatAcosOp -> promoteAndCall SLIT("acos") DoubleRep
+ FloatAtanOp -> promoteAndCall SLIT("atan") DoubleRep
+
+ FloatSinhOp -> promoteAndCall SLIT("sinh") DoubleRep
+ FloatCoshOp -> promoteAndCall SLIT("cosh") DoubleRep
+ FloatTanhOp -> promoteAndCall SLIT("tanh") DoubleRep
+
+ FloatPowerOp -> promoteAndCall SLIT("pow") DoubleRep
+
+ DoubleAddOp -> trivialFCode DoubleRep FADD args
+ DoubleSubOp -> trivialFCode DoubleRep FSUB args
+ DoubleMulOp -> trivialFCode DoubleRep FMUL args
+ DoubleDivOp -> trivialFCode DoubleRep FDIV args
+ DoubleNegOp -> trivialUFCode DoubleRep (FNEG DF) args
+