mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-11 05:35:11 +00:00
633a5b1aac
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3785 91177308-0d34-0410-b5e6-96231b3b80d8
39 lines
529 B
C
39 lines
529 B
C
char rcsid_pattern[] = "$Id$";
|
|
|
|
#include <stdio.h>
|
|
#include "b.h"
|
|
|
|
Pattern
|
|
newPattern(op) Operator op;
|
|
{
|
|
Pattern p;
|
|
|
|
p = (Pattern) zalloc(sizeof(struct pattern));
|
|
p->op = op;
|
|
return p;
|
|
}
|
|
|
|
void
|
|
dumpPattern(p) Pattern p;
|
|
{
|
|
int i;
|
|
|
|
if (!p) {
|
|
printf("[no-pattern]");
|
|
return;
|
|
}
|
|
|
|
if (p->op) {
|
|
printf("%s", p->op->name);
|
|
if (p->op->arity > 0) {
|
|
printf("(");
|
|
for (i = 0; i < p->op->arity; i++) {
|
|
printf("%s ", p->children[i]->name);
|
|
}
|
|
printf(")");
|
|
}
|
|
} else {
|
|
printf("%s", p->children[0]->name);
|
|
}
|
|
}
|