@(in-package :sys) @(mdo (find-struct-type 'assembler)) @(bind oc @(keep-if .code %oc-list-builder%.(get))) @(next "vm.h") @(collect) @{copyright} @(until) @(end) @(output "vmop.h") @{copyright "\n"} typedef enum vm_op { @ (repeat) @{oc.symbol :filter :upcase} = @{oc.code},@(if oc.deprecated " /* deprecated */") @ (end) } vm_op_t; #define VM_LEV_BITS @{sys:%lev-bits%} #define VM_LEV_MASK @(fmt "0x~X" (pred (ash 1 sys:%lev-bits%))) #define VM_SM_LEV_BITS @{sys:%sm-lev-bits%} #define VM_SM_LEV_MASK @(fmt "0x~X" (pred (ash 1 sys:%sm-lev-bits%))) #define VM_MAX_LEV @{sys:%max-lev%} #define VM_MAX_V_LEV @{sys:%max-v-lev%} @(end)