summaryrefslogtreecommitdiff
path: root/scope.h
diff options
context:
space:
mode:
Diffstat (limited to 'scope.h')
-rw-r--r--scope.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/scope.h b/scope.h
new file mode 100644
index 0000000000..6c753c51ee
--- /dev/null
+++ b/scope.h
@@ -0,0 +1,18 @@
+#define SAVEt_ITEM 0
+#define SAVEt_SV 1
+#define SAVEt_AV 2
+#define SAVEt_HV 3
+#define SAVEt_INT 4
+#define SAVEt_I32 5
+#define SAVEt_SPTR 6
+#define SAVEt_HPTR 7
+#define SAVEt_APTR 8
+#define SAVEt_NSTAB 9
+#define SAVEt_SVREF 10
+#define SAVEt_GP 11
+
+#define SSCHECK(need) if (savestack_ix + need > savestack_max) savestack_grow()
+#define SSPUSHINT(i) (savestack[savestack_ix++].any_i32 = (I32)(i))
+#define SSPUSHPTR(p) (savestack[savestack_ix++].any_ptr = (void*)(p))
+#define SSPOPINT (savestack[--savestack_ix].any_i32)
+#define SSPOPPTR (savestack[--savestack_ix].any_ptr)