+#define supports_float 1
+#define only_integer 0
+
+NEW_BD_BINOP(Add, supports_float)
+NEW_BD_BINOP(Sub, supports_float)
+NEW_BD_UNOP(Minus, supports_float)
+NEW_BD_BINOP(Mul, supports_float)
+NEW_BD_DIVOP(Quot, supports_float)
+NEW_BD_DIVOP(DivMod, only_integer)
+NEW_BD_DIVOP(Div, only_integer)
+NEW_BD_DIVOP(Mod, only_integer)
+NEW_BD_BINOP(And, only_integer)
+NEW_BD_BINOP(Or, only_integer)
+NEW_BD_BINOP(Eor, only_integer)
+NEW_BD_UNOP(Not, only_integer)
+NEW_BD_BINOP(Shl, only_integer)
+NEW_BD_BINOP(Shr, only_integer)
+NEW_BD_BINOP(Shrs, only_integer)
+NEW_BD_BINOP(Rot, only_integer)
+NEW_BD_UNOP(Abs, supports_float)
+NEW_BD_BINOP(Carry, only_integer)
+NEW_BD_BINOP(Borrow, only_integer)