summary refs log tree commit diff
path: root/lisc/lisc.h
diff options
context:
space:
mode:
Diffstat (limited to 'lisc/lisc.h')
-rw-r--r--lisc/lisc.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/lisc/lisc.h b/lisc/lisc.h
index 66f12ad..bc22a41 100644
--- a/lisc/lisc.h
+++ b/lisc/lisc.h
@@ -16,6 +16,25 @@ typedef struct Sym Sym;
 typedef struct Fn Fn;
 
 enum {
+	RAX = 1,
+	RCX,
+	RDX,
+	RBX,
+	RSP,
+	RBP,
+	RSI,
+	RDI,
+	R8,
+	R9,
+	R10,
+	R11,
+	R12,
+	R13,
+	R14,
+	R15,
+};
+
+enum {
 	NReg    = 32,
 	Tmp0    = NReg+1,
 
@@ -65,6 +84,7 @@ enum {
 	ORem,
 	/* reserved instructions */
 	OCopy,
+	OXCltd,
 	OXDiv,
 	OLast
 };
@@ -136,6 +156,7 @@ struct Fn {
 
 /* parse.c */
 extern OpDesc opdesc[];
+void diag(char *);
 void *alloc(size_t);
 Fn *parsefn(FILE *);
 void printfn(Fn *, FILE *);