aboutsummaryrefslogtreecommitdiff
path: root/src/common.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/common.h')
-rw-r--r--src/common.h24
1 files changed, 22 insertions, 2 deletions
diff --git a/src/common.h b/src/common.h
index cf5bdf6..df150c1 100644
--- a/src/common.h
+++ b/src/common.h
@@ -248,18 +248,38 @@ struct ejit_insn {
#define VEC_NAME insns
#include "vec.h"
+
+struct fpr_stat {
+ struct ejit_fpr f;
+ size_t prio, fno;
+};
+
+#define VEC_NAME fpr_stats
+#define VEC_TYPE struct fpr_stat
+#include "vec.h"
+
+struct gpr_stat {
+ struct ejit_gpr r;
+ size_t prio, rno;
+};
+
+#define VEC_NAME gpr_stats
+#define VEC_TYPE struct gpr_stat
+#include "vec.h"
+
struct ejit_func {
struct insns insns;
struct labels labels;
enum ejit_type rtype;
- size_t gpr;
- size_t fpr;
+ struct gpr_stats gpr;
+ struct fpr_stats fpr;
bool use_64;
void *arena;
void *direct_call;
size_t size;
+ size_t prio;
};