Add generator functions to support TFL gelu

Change-Id: I1056f4a3abe9079381fb2c7d02edf11312aba9d6
Signed-off-by: TatWai Chong <tatwai.chong@arm.com>
diff --git a/verif/frameworks/test_builder.py b/verif/frameworks/test_builder.py
index 8677559..84e4d46 100644
--- a/verif/frameworks/test_builder.py
+++ b/verif/frameworks/test_builder.py
@@ -101,6 +101,13 @@
         def eval(self, a):
             return tf.nn.leaky_relu(a, alpha=self.alpha, name=self.result_name)
 
+    class Gelu:
+        def __init__(self, name):
+            self.result_name = name
+
+        def eval(self, a):
+            return tf.nn.gelu(a, name=self.result_name)
+
     class Concat:
         def __init__(self, axis, name):
             self.axis = axis
diff --git a/verif/frameworks/tosa_verif_framework_generator.py b/verif/frameworks/tosa_verif_framework_generator.py
index 4167227..097fe1f 100755
--- a/verif/frameworks/tosa_verif_framework_generator.py
+++ b/verif/frameworks/tosa_verif_framework_generator.py
@@ -139,6 +139,19 @@
             ),
         },
     },
+    "gelu": {
+        "operands": (1, 0),
+        "build_fcn": (TBuilder.Gelu, TGen.tgBasic, ArgGen.agNone),
+        "types": {
+            # Need compiler support for tf.Erf.
+            # "tf": TYPE_F,
+            "tflite": list(
+                # Only float32, int8 and uint8 supported currently
+                TYPE_F
+                + [QuantType.ALL_U8, QuantType.ALL_I8]
+            ),
+        },
+    },
     "concat": {
         "operands": (2, 0),
         "build_fcn": (TBuilder.Concat, TGen.tgBasic, ArgGen.agAxes),