From 2c454bc6f57f02014b7203f6fc0e3c0ce7cb8bf7 Mon Sep 17 00:00:00 2001
From: Eric Kooistra <kooistra@astron.nl>
Date: Wed, 23 Dec 2020 16:48:04 +0100
Subject: [PATCH] Added largest() and smallest() for REAL

---
 libraries/base/common/src/vhdl/common_pkg.vhd | 20 +++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/libraries/base/common/src/vhdl/common_pkg.vhd b/libraries/base/common/src/vhdl/common_pkg.vhd
index bd8ebf307c..bb74671548 100644
--- a/libraries/base/common/src/vhdl/common_pkg.vhd
+++ b/libraries/base/common/src/vhdl/common_pkg.vhd
@@ -220,11 +220,13 @@ PACKAGE common_pkg IS
   FUNCTION matrix_or( mat : t_sl_matrix; wi, wj : NATURAL) RETURN STD_LOGIC;  -- '0' when all matrix bits are '0' else '1'
   
   FUNCTION smallest(n, m    : INTEGER)       RETURN INTEGER;
+  FUNCTION smallest(n, m    : REAL)          RETURN REAL;
   FUNCTION smallest(n, m, l : INTEGER)       RETURN INTEGER;
   FUNCTION smallest(n       : t_natural_arr) RETURN NATURAL;
   FUNCTION smallest(n       : t_nat_natural_arr) RETURN NATURAL;
 
   FUNCTION largest(n, m : INTEGER)       RETURN INTEGER;
+  FUNCTION largest(n, m : REAL)          RETURN REAL;
   FUNCTION largest(n    : t_natural_arr) RETURN NATURAL;
   FUNCTION largest(n    : t_nat_natural_arr) RETURN NATURAL;
   
@@ -835,6 +837,15 @@ PACKAGE BODY common_pkg IS
     END IF;
   END;
   
+  FUNCTION smallest(n, m : REAL) RETURN REAL IS
+  BEGIN
+    IF n < m THEN
+      RETURN n;
+    ELSE
+      RETURN m;
+    END IF;
+  END;
+  
   FUNCTION smallest(n, m, l : INTEGER) RETURN INTEGER IS
     VARIABLE v : NATURAL;
   BEGIN
@@ -875,6 +886,15 @@ PACKAGE BODY common_pkg IS
     END IF;
   END;
   
+  FUNCTION largest(n, m : REAL) RETURN REAL IS
+  BEGIN
+    IF n > m THEN
+      RETURN n;
+    ELSE
+      RETURN m;
+    END IF;
+  END;
+  
   FUNCTION largest(n : t_natural_arr) RETURN NATURAL IS
     VARIABLE m : NATURAL := 0;
   BEGIN
-- 
GitLab