Add some missing operation implementations
@@ -296,6 +296,19 @@ END_TRIGGER;
END_OPERATION(CDL)
+//////////////////////////////////////////////////////////////////////////////
+// CDLU - convert DP floating-point to integer
+//////////////////////////////////////////////////////////////////////////////
+OPERATION(CDLU)
+
+TRIGGER
+ DoubleWord in = DBL(1);
+ SLongWord out = static_cast<ULongWord>(in);
+ IO(2) = out;
+END_TRIGGER;
+
+END_OPERATION(CDLU)
+
//////////////////////////////////////////////////////////////////////////////
// CFIU - convert floating-point to unsigned integer
//////////////////////////////////////////////////////////////////////////////
@@ -334,3 +347,31 @@ TRIGGER
END_TRIGGER;
END_OPERATION(CLDU)
+
+//////////////////////////////////////////////////////////////////////////////
+// SQRTD - DP floating-point square root
+//////////////////////////////////////////////////////////////////////////////
+
+OPERATION(SQRTD)
+
+TRIGGER
+ IO(2) = sqrt(DBL(1));
+END_TRIGGER;
+
+END_OPERATION(SQRTD)
+
+//////////////////////////////////////////////////////////////////////////////
+// ABSF - floating-point absolute value
+//////////////////////////////////////////////////////////////////////////////
+
+OPERATION(ABSD)
+
+TRIGGER
+DoubleWord in = DBL(1);
+if (in < 0) {
+ in = -in;
+}
+IO(2) = in;
+END_TRIGGER;
+
+END_OPERATION(ABSD)
