/*1:*/ #line 25 "gb_gates.w" #define print_gates p_gates #line 9 "gb_gates.ch" extern Graph*risc(unsigned long); extern Graph*prod(unsigned long,unsigned long); extern void print_gates(Graph*); extern long gate_eval(Graph*,char*,char*); extern Graph*partial_gates(Graph*,unsigned long,unsigned long,long,char*); extern long run_risc(Graph*,unsigned long[],unsigned long,unsigned long); #line 33 "gb_gates.w" extern unsigned long risc_state[]; /*:1*//*2:*/ #line 99 "gb_gates.w" #define val x.I #define typ y.I #define alt z.V #define outs zz.A #define is_boolean(v) ((unsigned long)(v)<=1) #define the_boolean(v) ((long)(v)) #define tip_value(v) (is_boolean(v)? the_boolean(v): (v)->val) #define AND '&' #define OR '|' #define NOT '~' #define XOR '^' /*:2*//*50:*/ #line 1127 "gb_gates.w" #define bit z.I /*:50*/