Browse Source

Define CFG JIT intrinsics for reference equality

jonathanvdc 8 years ago
parent
commit
4a265c6464
1 changed files with 14 additions and 0 deletions
  1. 14 0
      kernel/modelverse_jit/intrinsics.py

+ 14 - 0
kernel/modelverse_jit/intrinsics.py

@@ -282,6 +282,20 @@ MISC_INTRINSICS = {
 }
 
 MISC_CFG_INTRINSICS = {
+    # Reference equality
+    'element_eq' :
+        lambda original_def, a, b:
+        original_def.redefine(
+            cfg_ir.CreateNode(
+                original_def.insert_before(
+                    cfg_ir.Binary(a, '==', b)))),
+    'element_neq' :
+        lambda original_def, a, b:
+        original_def.redefine(
+            cfg_ir.CreateNode(
+                original_def.insert_before(
+                    cfg_ir.Binary(a, '!=', b)))),
+
     # State creation
     'create_node' :
         lambda original_def: