improve constant loading. Still sucks, but oh well
[oota-llvm.git] / utils / Burg / operator.c
1 char rcsid_operator[] = "$Id$";
2
3 #include "b.h"
4 #include <stdio.h>
5
6 int max_arity = -1;
7
8 List operators;
9 List leaves;
10
11 Operator
12 newOperator(name, num, arity) char *name; OperatorNum num; ArityNum arity;
13 {
14   Operator op;
15
16   assert(arity <= MAX_ARITY);
17   op = (Operator) zalloc(sizeof(struct operator));
18   assert(op);
19   op->name = name;
20   op->num = num;
21   op->arity = arity;
22
23   operators = newList(op, operators);
24
25   return op;
26 }
27
28 void
29 dumpOperator_s(op) Operator op;
30 {
31   printf("Op: %s(%d)=%d\n", op->name, op->arity, op->num);
32 }
33
34 void
35 dumpOperator(op, full) Operator op; int full;
36 {
37   dumpOperator_s(op);
38   if (full) {
39     dumpTable(op->table, 0);
40   }
41 }
42
43 void
44 dumpOperator_l(op) Operator op;
45 {
46   dumpOperator(op, 1);
47 }
48