ref: 8b6238bf263ac5d1f357c0f4a4d0e113b83f1570
dir: /ops.h/
typedef struct CompileTimeContext CompileTimeContext;
struct CompileTimeContext {
Shader *shader;
};
enum {
COMPILE,
RUNTIME,
};
typedef struct FrameContext FrameContext;
struct FrameContext {
short type;
union {
CompileTimeContext c;
};
};
typedef struct Frame Frame;
struct Frame {
u32int *pc;
FrameContext ctxt;
Frame *next;
};
typedef struct Op Op;
struct Op {
u32int opcode;
void (*f)(Frame*,u32int);
};
int oplookup(u32int code, void (**f)(Frame*,u32int));