added stackheight message handling
This commit is contained in:
@@ -16,11 +16,11 @@ CDIR=$(EMHOME)/mach/proto/ncg
|
||||
CGG=$(EMHOME)/lib/ncgg
|
||||
CPP=$(EMHOME)/lib/cpp
|
||||
CFILES=$(CDIR)/codegen.c $(CDIR)/compute.c $(CDIR)/equiv.c $(CDIR)/fillem.c \
|
||||
$(CDIR)/gencode.c $(CDIR)/glosym.c $(CDIR)/main.c $(CDIR)/move.c \
|
||||
$(CDIR)/nextem.c $(CDIR)/reg.c $(CDIR)/regvar.c $(CDIR)/salloc.c \
|
||||
$(CDIR)/state.c $(CDIR)/subr.c $(CDIR)/var.c
|
||||
OFILES=codegen.o compute.o equiv.o fillem.o gencode.o glosym.o main.o\
|
||||
move.o nextem.o reg.o regvar.o salloc.o state.o subr.o var.o
|
||||
$(CDIR)/gencode.c $(CDIR)/glosym.c $(CDIR)/label.c $(CDIR)/main.c \
|
||||
$(CDIR)/move.c $(CDIR)/nextem.c $(CDIR)/reg.c $(CDIR)/regvar.c \
|
||||
$(CDIR)/salloc.c $(CDIR)/state.c $(CDIR)/subr.c $(CDIR)/var.c
|
||||
OFILES=codegen.o compute.o equiv.o fillem.o gencode.o glosym.o label.o \
|
||||
main.o move.o nextem.o reg.o regvar.o salloc.o state.o subr.o var.o
|
||||
|
||||
all: tables.c
|
||||
make "EMHOME="$(EMHOME) cg
|
||||
@@ -43,6 +43,8 @@ gencode.o: $(CDIR)/gencode.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/gencode.c
|
||||
glosym.o: $(CDIR)/glosym.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/glosym.c
|
||||
label.o: $(CDIR)/label.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/label.c
|
||||
main.o: $(CDIR)/main.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/main.c
|
||||
move.o: $(CDIR)/move.c
|
||||
@@ -97,6 +99,7 @@ compute.o: $(CDIR)/assert.h $(EMHOME)/h/cgg_cg.h
|
||||
compute.o: $(CDIR)/data.h
|
||||
compute.o: $(CDIR)/extern.h
|
||||
compute.o: $(CDIR)/glosym.h
|
||||
compute.o: $(CDIR)/label.h
|
||||
compute.o: $(CDIR)/param.h
|
||||
compute.o: $(CDIR)/result.h
|
||||
compute.o: tables.h
|
||||
@@ -130,6 +133,10 @@ glosym.o: $(CDIR)/glosym.h
|
||||
glosym.o: $(CDIR)/param.h
|
||||
glosym.o: tables.h
|
||||
glosym.o: $(CDIR)/types.h
|
||||
label.o: $(CDIR)/label.h
|
||||
label.o: $(CDIR)/param.h
|
||||
label.o: tables.h
|
||||
label.o: $(CDIR)/types.h
|
||||
main.o: $(CDIR)/param.h
|
||||
main.o: tables.h
|
||||
move.o: $(CDIR)/assert.h $(EMHOME)/h/cgg_cg.h
|
||||
|
||||
@@ -16,11 +16,11 @@ CDIR=$(EMHOME)/mach/proto/ncg
|
||||
CGG=$(EMHOME)/lib/ncgg
|
||||
CPP=$(EMHOME)/lib/cpp
|
||||
CFILES=$(CDIR)/codegen.c $(CDIR)/compute.c $(CDIR)/equiv.c $(CDIR)/fillem.c \
|
||||
$(CDIR)/gencode.c $(CDIR)/glosym.c $(CDIR)/main.c $(CDIR)/move.c \
|
||||
$(CDIR)/nextem.c $(CDIR)/reg.c $(CDIR)/regvar.c $(CDIR)/salloc.c \
|
||||
$(CDIR)/state.c $(CDIR)/subr.c $(CDIR)/var.c
|
||||
OFILES=codegen.o compute.o equiv.o fillem.o gencode.o glosym.o main.o\
|
||||
move.o nextem.o reg.o regvar.o salloc.o state.o subr.o var.o
|
||||
$(CDIR)/gencode.c $(CDIR)/glosym.c $(CDIR)/label.c $(CDIR)/main.c \
|
||||
$(CDIR)/move.c $(CDIR)/nextem.c $(CDIR)/reg.c $(CDIR)/regvar.c \
|
||||
$(CDIR)/salloc.c $(CDIR)/state.c $(CDIR)/subr.c $(CDIR)/var.c
|
||||
OFILES=codegen.o compute.o equiv.o fillem.o gencode.o glosym.o label.o \
|
||||
main.o move.o nextem.o reg.o regvar.o salloc.o state.o subr.o var.o
|
||||
|
||||
all: tables.c
|
||||
make "EMHOME="$(EMHOME) cg
|
||||
@@ -43,6 +43,8 @@ gencode.o: $(CDIR)/gencode.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/gencode.c
|
||||
glosym.o: $(CDIR)/glosym.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/glosym.c
|
||||
label.o: $(CDIR)/label.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/label.c
|
||||
main.o: $(CDIR)/main.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/main.c
|
||||
move.o: $(CDIR)/move.c
|
||||
@@ -97,6 +99,7 @@ compute.o: $(CDIR)/assert.h $(EMHOME)/h/cgg_cg.h
|
||||
compute.o: $(CDIR)/data.h
|
||||
compute.o: $(CDIR)/extern.h
|
||||
compute.o: $(CDIR)/glosym.h
|
||||
compute.o: $(CDIR)/label.h
|
||||
compute.o: $(CDIR)/param.h
|
||||
compute.o: $(CDIR)/result.h
|
||||
compute.o: tables.h
|
||||
@@ -130,6 +133,10 @@ glosym.o: $(CDIR)/glosym.h
|
||||
glosym.o: $(CDIR)/param.h
|
||||
glosym.o: tables.h
|
||||
glosym.o: $(CDIR)/types.h
|
||||
label.o: $(CDIR)/label.h
|
||||
label.o: $(CDIR)/param.h
|
||||
label.o: tables.h
|
||||
label.o: $(CDIR)/types.h
|
||||
main.o: $(CDIR)/param.h
|
||||
main.o: tables.h
|
||||
move.o: $(CDIR)/assert.h $(EMHOME)/h/cgg_cg.h
|
||||
|
||||
@@ -16,11 +16,11 @@ CDIR=$(EMHOME)/mach/proto/ncg
|
||||
CGG=$(EMHOME)/lib/ncgg
|
||||
CPP=$(EMHOME)/lib/cpp
|
||||
CFILES=$(CDIR)/codegen.c $(CDIR)/compute.c $(CDIR)/equiv.c $(CDIR)/fillem.c \
|
||||
$(CDIR)/gencode.c $(CDIR)/glosym.c $(CDIR)/main.c $(CDIR)/move.c \
|
||||
$(CDIR)/nextem.c $(CDIR)/reg.c $(CDIR)/regvar.c $(CDIR)/salloc.c \
|
||||
$(CDIR)/state.c $(CDIR)/subr.c $(CDIR)/var.c
|
||||
OFILES=codegen.o compute.o equiv.o fillem.o gencode.o glosym.o main.o\
|
||||
move.o nextem.o reg.o regvar.o salloc.o state.o subr.o var.o
|
||||
$(CDIR)/gencode.c $(CDIR)/glosym.c $(CDIR)/label.c $(CDIR)/main.c \
|
||||
$(CDIR)/move.c $(CDIR)/nextem.c $(CDIR)/reg.c $(CDIR)/regvar.c \
|
||||
$(CDIR)/salloc.c $(CDIR)/state.c $(CDIR)/subr.c $(CDIR)/var.c
|
||||
OFILES=codegen.o compute.o equiv.o fillem.o gencode.o glosym.o label.o \
|
||||
main.o move.o nextem.o reg.o regvar.o salloc.o state.o subr.o var.o
|
||||
|
||||
all: tables.c
|
||||
make "EMHOME="$(EMHOME) cg
|
||||
@@ -43,6 +43,8 @@ gencode.o: $(CDIR)/gencode.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/gencode.c
|
||||
glosym.o: $(CDIR)/glosym.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/glosym.c
|
||||
label.o: $(CDIR)/label.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/label.c
|
||||
main.o: $(CDIR)/main.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/main.c
|
||||
move.o: $(CDIR)/move.c
|
||||
@@ -97,6 +99,7 @@ compute.o: $(CDIR)/assert.h $(EMHOME)/h/cgg_cg.h
|
||||
compute.o: $(CDIR)/data.h
|
||||
compute.o: $(CDIR)/extern.h
|
||||
compute.o: $(CDIR)/glosym.h
|
||||
compute.o: $(CDIR)/label.h
|
||||
compute.o: $(CDIR)/param.h
|
||||
compute.o: $(CDIR)/result.h
|
||||
compute.o: tables.h
|
||||
@@ -130,6 +133,10 @@ glosym.o: $(CDIR)/glosym.h
|
||||
glosym.o: $(CDIR)/param.h
|
||||
glosym.o: tables.h
|
||||
glosym.o: $(CDIR)/types.h
|
||||
label.o: $(CDIR)/label.h
|
||||
label.o: $(CDIR)/param.h
|
||||
label.o: tables.h
|
||||
label.o: $(CDIR)/types.h
|
||||
main.o: $(CDIR)/param.h
|
||||
main.o: tables.h
|
||||
move.o: $(CDIR)/assert.h $(EMHOME)/h/cgg_cg.h
|
||||
|
||||
@@ -16,11 +16,11 @@ CDIR=$(EMHOME)/mach/proto/ncg
|
||||
CGG=$(EMHOME)/lib/ncgg
|
||||
CPP=$(EMHOME)/lib/cpp
|
||||
CFILES=$(CDIR)/codegen.c $(CDIR)/compute.c $(CDIR)/equiv.c $(CDIR)/fillem.c \
|
||||
$(CDIR)/gencode.c $(CDIR)/glosym.c $(CDIR)/main.c $(CDIR)/move.c \
|
||||
$(CDIR)/nextem.c $(CDIR)/reg.c $(CDIR)/regvar.c $(CDIR)/salloc.c \
|
||||
$(CDIR)/state.c $(CDIR)/subr.c $(CDIR)/var.c
|
||||
OFILES=codegen.o compute.o equiv.o fillem.o gencode.o glosym.o main.o\
|
||||
move.o nextem.o reg.o regvar.o salloc.o state.o subr.o var.o
|
||||
$(CDIR)/gencode.c $(CDIR)/glosym.c $(CDIR)/label.c $(CDIR)/main.c \
|
||||
$(CDIR)/move.c $(CDIR)/nextem.c $(CDIR)/reg.c $(CDIR)/regvar.c \
|
||||
$(CDIR)/salloc.c $(CDIR)/state.c $(CDIR)/subr.c $(CDIR)/var.c
|
||||
OFILES=codegen.o compute.o equiv.o fillem.o gencode.o glosym.o label.o \
|
||||
main.o move.o nextem.o reg.o regvar.o salloc.o state.o subr.o var.o
|
||||
|
||||
all: tables.c
|
||||
make "EMHOME="$(EMHOME) cg
|
||||
@@ -43,6 +43,8 @@ gencode.o: $(CDIR)/gencode.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/gencode.c
|
||||
glosym.o: $(CDIR)/glosym.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/glosym.c
|
||||
label.o: $(CDIR)/label.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/label.c
|
||||
main.o: $(CDIR)/main.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/main.c
|
||||
move.o: $(CDIR)/move.c
|
||||
@@ -97,6 +99,7 @@ compute.o: $(CDIR)/assert.h $(EMHOME)/h/cgg_cg.h
|
||||
compute.o: $(CDIR)/data.h
|
||||
compute.o: $(CDIR)/extern.h
|
||||
compute.o: $(CDIR)/glosym.h
|
||||
compute.o: $(CDIR)/label.h
|
||||
compute.o: $(CDIR)/param.h
|
||||
compute.o: $(CDIR)/result.h
|
||||
compute.o: tables.h
|
||||
@@ -130,6 +133,10 @@ glosym.o: $(CDIR)/glosym.h
|
||||
glosym.o: $(CDIR)/param.h
|
||||
glosym.o: tables.h
|
||||
glosym.o: $(CDIR)/types.h
|
||||
label.o: $(CDIR)/label.h
|
||||
label.o: $(CDIR)/param.h
|
||||
label.o: tables.h
|
||||
label.o: $(CDIR)/types.h
|
||||
main.o: $(CDIR)/param.h
|
||||
main.o: tables.h
|
||||
move.o: $(CDIR)/assert.h $(EMHOME)/h/cgg_cg.h
|
||||
|
||||
@@ -16,11 +16,11 @@ CDIR=$(EMHOME)/mach/proto/ncg
|
||||
CGG=$(EMHOME)/lib/ncgg
|
||||
CPP=$(EMHOME)/lib/cpp
|
||||
CFILES=$(CDIR)/codegen.c $(CDIR)/compute.c $(CDIR)/equiv.c $(CDIR)/fillem.c \
|
||||
$(CDIR)/gencode.c $(CDIR)/glosym.c $(CDIR)/main.c $(CDIR)/move.c \
|
||||
$(CDIR)/nextem.c $(CDIR)/reg.c $(CDIR)/regvar.c $(CDIR)/salloc.c \
|
||||
$(CDIR)/state.c $(CDIR)/subr.c $(CDIR)/var.c
|
||||
OFILES=codegen.o compute.o equiv.o fillem.o gencode.o glosym.o main.o\
|
||||
move.o nextem.o reg.o regvar.o salloc.o state.o subr.o var.o
|
||||
$(CDIR)/gencode.c $(CDIR)/glosym.c $(CDIR)/label.c $(CDIR)/main.c \
|
||||
$(CDIR)/move.c $(CDIR)/nextem.c $(CDIR)/reg.c $(CDIR)/regvar.c \
|
||||
$(CDIR)/salloc.c $(CDIR)/state.c $(CDIR)/subr.c $(CDIR)/var.c
|
||||
OFILES=codegen.o compute.o equiv.o fillem.o gencode.o glosym.o label.o \
|
||||
main.o move.o nextem.o reg.o regvar.o salloc.o state.o subr.o var.o
|
||||
|
||||
all: tables.c
|
||||
make "EMHOME="$(EMHOME) cg
|
||||
@@ -43,6 +43,8 @@ gencode.o: $(CDIR)/gencode.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/gencode.c
|
||||
glosym.o: $(CDIR)/glosym.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/glosym.c
|
||||
label.o: $(CDIR)/label.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/label.c
|
||||
main.o: $(CDIR)/main.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/main.c
|
||||
move.o: $(CDIR)/move.c
|
||||
@@ -97,6 +99,7 @@ compute.o: $(CDIR)/assert.h $(EMHOME)/h/cgg_cg.h
|
||||
compute.o: $(CDIR)/data.h
|
||||
compute.o: $(CDIR)/extern.h
|
||||
compute.o: $(CDIR)/glosym.h
|
||||
compute.o: $(CDIR)/label.h
|
||||
compute.o: $(CDIR)/param.h
|
||||
compute.o: $(CDIR)/result.h
|
||||
compute.o: tables.h
|
||||
@@ -130,6 +133,10 @@ glosym.o: $(CDIR)/glosym.h
|
||||
glosym.o: $(CDIR)/param.h
|
||||
glosym.o: tables.h
|
||||
glosym.o: $(CDIR)/types.h
|
||||
label.o: $(CDIR)/label.h
|
||||
label.o: $(CDIR)/param.h
|
||||
label.o: tables.h
|
||||
label.o: $(CDIR)/types.h
|
||||
main.o: $(CDIR)/param.h
|
||||
main.o: tables.h
|
||||
move.o: $(CDIR)/assert.h $(EMHOME)/h/cgg_cg.h
|
||||
|
||||
@@ -16,11 +16,11 @@ CDIR=$(EMHOME)/mach/proto/ncg
|
||||
CGG=$(EMHOME)/lib/ncgg
|
||||
CPP=$(EMHOME)/lib/cpp
|
||||
CFILES=$(CDIR)/codegen.c $(CDIR)/compute.c $(CDIR)/equiv.c $(CDIR)/fillem.c \
|
||||
$(CDIR)/gencode.c $(CDIR)/glosym.c $(CDIR)/main.c $(CDIR)/move.c \
|
||||
$(CDIR)/nextem.c $(CDIR)/reg.c $(CDIR)/regvar.c $(CDIR)/salloc.c \
|
||||
$(CDIR)/state.c $(CDIR)/subr.c $(CDIR)/var.c
|
||||
OFILES=codegen.o compute.o equiv.o fillem.o gencode.o glosym.o main.o\
|
||||
move.o nextem.o reg.o regvar.o salloc.o state.o subr.o var.o
|
||||
$(CDIR)/gencode.c $(CDIR)/glosym.c $(CDIR)/label.c $(CDIR)/main.c \
|
||||
$(CDIR)/move.c $(CDIR)/nextem.c $(CDIR)/reg.c $(CDIR)/regvar.c \
|
||||
$(CDIR)/salloc.c $(CDIR)/state.c $(CDIR)/subr.c $(CDIR)/var.c
|
||||
OFILES=codegen.o compute.o equiv.o fillem.o gencode.o glosym.o label.o \
|
||||
main.o move.o nextem.o reg.o regvar.o salloc.o state.o subr.o var.o
|
||||
|
||||
all: tables.c
|
||||
make "EMHOME="$(EMHOME) cg
|
||||
@@ -43,6 +43,8 @@ gencode.o: $(CDIR)/gencode.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/gencode.c
|
||||
glosym.o: $(CDIR)/glosym.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/glosym.c
|
||||
label.o: $(CDIR)/label.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/label.c
|
||||
main.o: $(CDIR)/main.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/main.c
|
||||
move.o: $(CDIR)/move.c
|
||||
@@ -97,6 +99,7 @@ compute.o: $(CDIR)/assert.h $(EMHOME)/h/cgg_cg.h
|
||||
compute.o: $(CDIR)/data.h
|
||||
compute.o: $(CDIR)/extern.h
|
||||
compute.o: $(CDIR)/glosym.h
|
||||
compute.o: $(CDIR)/label.h
|
||||
compute.o: $(CDIR)/param.h
|
||||
compute.o: $(CDIR)/result.h
|
||||
compute.o: tables.h
|
||||
@@ -130,6 +133,10 @@ glosym.o: $(CDIR)/glosym.h
|
||||
glosym.o: $(CDIR)/param.h
|
||||
glosym.o: tables.h
|
||||
glosym.o: $(CDIR)/types.h
|
||||
label.o: $(CDIR)/label.h
|
||||
label.o: $(CDIR)/param.h
|
||||
label.o: tables.h
|
||||
label.o: $(CDIR)/types.h
|
||||
main.o: $(CDIR)/param.h
|
||||
main.o: tables.h
|
||||
move.o: $(CDIR)/assert.h $(EMHOME)/h/cgg_cg.h
|
||||
|
||||
@@ -16,11 +16,11 @@ CDIR=$(EMHOME)/mach/proto/ncg
|
||||
CGG=$(EMHOME)/lib/ncgg
|
||||
CPP=$(EMHOME)/lib/cpp
|
||||
CFILES=$(CDIR)/codegen.c $(CDIR)/compute.c $(CDIR)/equiv.c $(CDIR)/fillem.c \
|
||||
$(CDIR)/gencode.c $(CDIR)/glosym.c $(CDIR)/main.c $(CDIR)/move.c \
|
||||
$(CDIR)/nextem.c $(CDIR)/reg.c $(CDIR)/regvar.c $(CDIR)/salloc.c \
|
||||
$(CDIR)/state.c $(CDIR)/subr.c $(CDIR)/var.c
|
||||
OFILES=codegen.o compute.o equiv.o fillem.o gencode.o glosym.o main.o\
|
||||
move.o nextem.o reg.o regvar.o salloc.o state.o subr.o var.o
|
||||
$(CDIR)/gencode.c $(CDIR)/glosym.c $(CDIR)/label.c $(CDIR)/main.c \
|
||||
$(CDIR)/move.c $(CDIR)/nextem.c $(CDIR)/reg.c $(CDIR)/regvar.c \
|
||||
$(CDIR)/salloc.c $(CDIR)/state.c $(CDIR)/subr.c $(CDIR)/var.c
|
||||
OFILES=codegen.o compute.o equiv.o fillem.o gencode.o glosym.o label.o \
|
||||
main.o move.o nextem.o reg.o regvar.o salloc.o state.o subr.o var.o
|
||||
|
||||
all: tables.c
|
||||
make "EMHOME="$(EMHOME) cg
|
||||
@@ -43,6 +43,8 @@ gencode.o: $(CDIR)/gencode.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/gencode.c
|
||||
glosym.o: $(CDIR)/glosym.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/glosym.c
|
||||
label.o: $(CDIR)/label.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/label.c
|
||||
main.o: $(CDIR)/main.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/main.c
|
||||
move.o: $(CDIR)/move.c
|
||||
@@ -97,6 +99,7 @@ compute.o: $(CDIR)/assert.h $(EMHOME)/h/cgg_cg.h
|
||||
compute.o: $(CDIR)/data.h
|
||||
compute.o: $(CDIR)/extern.h
|
||||
compute.o: $(CDIR)/glosym.h
|
||||
compute.o: $(CDIR)/label.h
|
||||
compute.o: $(CDIR)/param.h
|
||||
compute.o: $(CDIR)/result.h
|
||||
compute.o: tables.h
|
||||
@@ -130,6 +133,10 @@ glosym.o: $(CDIR)/glosym.h
|
||||
glosym.o: $(CDIR)/param.h
|
||||
glosym.o: tables.h
|
||||
glosym.o: $(CDIR)/types.h
|
||||
label.o: $(CDIR)/label.h
|
||||
label.o: $(CDIR)/param.h
|
||||
label.o: tables.h
|
||||
label.o: $(CDIR)/types.h
|
||||
main.o: $(CDIR)/param.h
|
||||
main.o: tables.h
|
||||
move.o: $(CDIR)/assert.h $(EMHOME)/h/cgg_cg.h
|
||||
|
||||
@@ -16,11 +16,11 @@ CDIR=$(EMHOME)/mach/proto/ncg
|
||||
CGG=$(EMHOME)/lib/ncgg
|
||||
CPP=$(EMHOME)/lib/cpp
|
||||
CFILES=$(CDIR)/codegen.c $(CDIR)/compute.c $(CDIR)/equiv.c $(CDIR)/fillem.c \
|
||||
$(CDIR)/gencode.c $(CDIR)/glosym.c $(CDIR)/main.c $(CDIR)/move.c \
|
||||
$(CDIR)/nextem.c $(CDIR)/reg.c $(CDIR)/regvar.c $(CDIR)/salloc.c \
|
||||
$(CDIR)/state.c $(CDIR)/subr.c $(CDIR)/var.c
|
||||
OFILES=codegen.o compute.o equiv.o fillem.o gencode.o glosym.o main.o\
|
||||
move.o nextem.o reg.o regvar.o salloc.o state.o subr.o var.o
|
||||
$(CDIR)/gencode.c $(CDIR)/glosym.c $(CDIR)/label.c $(CDIR)/main.c \
|
||||
$(CDIR)/move.c $(CDIR)/nextem.c $(CDIR)/reg.c $(CDIR)/regvar.c \
|
||||
$(CDIR)/salloc.c $(CDIR)/state.c $(CDIR)/subr.c $(CDIR)/var.c
|
||||
OFILES=codegen.o compute.o equiv.o fillem.o gencode.o glosym.o label.o \
|
||||
main.o move.o nextem.o reg.o regvar.o salloc.o state.o subr.o var.o
|
||||
|
||||
all: tables.c
|
||||
make "EMHOME="$(EMHOME) cg
|
||||
@@ -43,6 +43,8 @@ gencode.o: $(CDIR)/gencode.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/gencode.c
|
||||
glosym.o: $(CDIR)/glosym.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/glosym.c
|
||||
label.o: $(CDIR)/label.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/label.c
|
||||
main.o: $(CDIR)/main.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/main.c
|
||||
move.o: $(CDIR)/move.c
|
||||
@@ -97,6 +99,7 @@ compute.o: $(CDIR)/assert.h $(EMHOME)/h/cgg_cg.h
|
||||
compute.o: $(CDIR)/data.h
|
||||
compute.o: $(CDIR)/extern.h
|
||||
compute.o: $(CDIR)/glosym.h
|
||||
compute.o: $(CDIR)/label.h
|
||||
compute.o: $(CDIR)/param.h
|
||||
compute.o: $(CDIR)/result.h
|
||||
compute.o: tables.h
|
||||
@@ -130,6 +133,10 @@ glosym.o: $(CDIR)/glosym.h
|
||||
glosym.o: $(CDIR)/param.h
|
||||
glosym.o: tables.h
|
||||
glosym.o: $(CDIR)/types.h
|
||||
label.o: $(CDIR)/label.h
|
||||
label.o: $(CDIR)/param.h
|
||||
label.o: tables.h
|
||||
label.o: $(CDIR)/types.h
|
||||
main.o: $(CDIR)/param.h
|
||||
main.o: tables.h
|
||||
move.o: $(CDIR)/assert.h $(EMHOME)/h/cgg_cg.h
|
||||
|
||||
@@ -16,11 +16,11 @@ CDIR=$(EMHOME)/mach/proto/ncg
|
||||
CGG=$(EMHOME)/lib/ncgg
|
||||
CPP=$(EMHOME)/lib/cpp
|
||||
CFILES=$(CDIR)/codegen.c $(CDIR)/compute.c $(CDIR)/equiv.c $(CDIR)/fillem.c \
|
||||
$(CDIR)/gencode.c $(CDIR)/glosym.c $(CDIR)/main.c $(CDIR)/move.c \
|
||||
$(CDIR)/nextem.c $(CDIR)/reg.c $(CDIR)/regvar.c $(CDIR)/salloc.c \
|
||||
$(CDIR)/state.c $(CDIR)/subr.c $(CDIR)/var.c
|
||||
OFILES=codegen.o compute.o equiv.o fillem.o gencode.o glosym.o main.o\
|
||||
move.o nextem.o reg.o regvar.o salloc.o state.o subr.o var.o
|
||||
$(CDIR)/gencode.c $(CDIR)/glosym.c $(CDIR)/label.c $(CDIR)/main.c \
|
||||
$(CDIR)/move.c $(CDIR)/nextem.c $(CDIR)/reg.c $(CDIR)/regvar.c \
|
||||
$(CDIR)/salloc.c $(CDIR)/state.c $(CDIR)/subr.c $(CDIR)/var.c
|
||||
OFILES=codegen.o compute.o equiv.o fillem.o gencode.o glosym.o label.o \
|
||||
main.o move.o nextem.o reg.o regvar.o salloc.o state.o subr.o var.o
|
||||
|
||||
all: tables.c
|
||||
make "EMHOME="$(EMHOME) cg
|
||||
@@ -43,6 +43,8 @@ gencode.o: $(CDIR)/gencode.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/gencode.c
|
||||
glosym.o: $(CDIR)/glosym.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/glosym.c
|
||||
label.o: $(CDIR)/label.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/label.c
|
||||
main.o: $(CDIR)/main.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/main.c
|
||||
move.o: $(CDIR)/move.c
|
||||
@@ -97,6 +99,7 @@ compute.o: $(CDIR)/assert.h $(EMHOME)/h/cgg_cg.h
|
||||
compute.o: $(CDIR)/data.h
|
||||
compute.o: $(CDIR)/extern.h
|
||||
compute.o: $(CDIR)/glosym.h
|
||||
compute.o: $(CDIR)/label.h
|
||||
compute.o: $(CDIR)/param.h
|
||||
compute.o: $(CDIR)/result.h
|
||||
compute.o: tables.h
|
||||
@@ -130,6 +133,10 @@ glosym.o: $(CDIR)/glosym.h
|
||||
glosym.o: $(CDIR)/param.h
|
||||
glosym.o: tables.h
|
||||
glosym.o: $(CDIR)/types.h
|
||||
label.o: $(CDIR)/label.h
|
||||
label.o: $(CDIR)/param.h
|
||||
label.o: tables.h
|
||||
label.o: $(CDIR)/types.h
|
||||
main.o: $(CDIR)/param.h
|
||||
main.o: tables.h
|
||||
move.o: $(CDIR)/assert.h $(EMHOME)/h/cgg_cg.h
|
||||
|
||||
@@ -16,11 +16,11 @@ CDIR=$(EMHOME)/mach/proto/ncg
|
||||
CGG=$(EMHOME)/lib/ncgg
|
||||
CPP=$(EMHOME)/lib/cpp
|
||||
CFILES=$(CDIR)/codegen.c $(CDIR)/compute.c $(CDIR)/equiv.c $(CDIR)/fillem.c \
|
||||
$(CDIR)/gencode.c $(CDIR)/glosym.c $(CDIR)/main.c $(CDIR)/move.c \
|
||||
$(CDIR)/nextem.c $(CDIR)/reg.c $(CDIR)/regvar.c $(CDIR)/salloc.c \
|
||||
$(CDIR)/state.c $(CDIR)/subr.c $(CDIR)/var.c
|
||||
OFILES=codegen.o compute.o equiv.o fillem.o gencode.o glosym.o main.o\
|
||||
move.o nextem.o reg.o regvar.o salloc.o state.o subr.o var.o
|
||||
$(CDIR)/gencode.c $(CDIR)/glosym.c $(CDIR)/label.c $(CDIR)/main.c \
|
||||
$(CDIR)/move.c $(CDIR)/nextem.c $(CDIR)/reg.c $(CDIR)/regvar.c \
|
||||
$(CDIR)/salloc.c $(CDIR)/state.c $(CDIR)/subr.c $(CDIR)/var.c
|
||||
OFILES=codegen.o compute.o equiv.o fillem.o gencode.o glosym.o label.o \
|
||||
main.o move.o nextem.o reg.o regvar.o salloc.o state.o subr.o var.o
|
||||
|
||||
all: tables.c
|
||||
make "EMHOME="$(EMHOME) cg
|
||||
@@ -43,6 +43,8 @@ gencode.o: $(CDIR)/gencode.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/gencode.c
|
||||
glosym.o: $(CDIR)/glosym.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/glosym.c
|
||||
label.o: $(CDIR)/label.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/label.c
|
||||
main.o: $(CDIR)/main.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/main.c
|
||||
move.o: $(CDIR)/move.c
|
||||
@@ -97,6 +99,7 @@ compute.o: $(CDIR)/assert.h $(EMHOME)/h/cgg_cg.h
|
||||
compute.o: $(CDIR)/data.h
|
||||
compute.o: $(CDIR)/extern.h
|
||||
compute.o: $(CDIR)/glosym.h
|
||||
compute.o: $(CDIR)/label.h
|
||||
compute.o: $(CDIR)/param.h
|
||||
compute.o: $(CDIR)/result.h
|
||||
compute.o: tables.h
|
||||
@@ -130,6 +133,10 @@ glosym.o: $(CDIR)/glosym.h
|
||||
glosym.o: $(CDIR)/param.h
|
||||
glosym.o: tables.h
|
||||
glosym.o: $(CDIR)/types.h
|
||||
label.o: $(CDIR)/label.h
|
||||
label.o: $(CDIR)/param.h
|
||||
label.o: tables.h
|
||||
label.o: $(CDIR)/types.h
|
||||
main.o: $(CDIR)/param.h
|
||||
main.o: tables.h
|
||||
move.o: $(CDIR)/assert.h $(EMHOME)/h/cgg_cg.h
|
||||
|
||||
@@ -16,11 +16,11 @@ CDIR=$(EMHOME)/mach/proto/ncg
|
||||
CGG=$(EMHOME)/lib/ncgg
|
||||
CPP=$(EMHOME)/lib/cpp
|
||||
CFILES=$(CDIR)/codegen.c $(CDIR)/compute.c $(CDIR)/equiv.c $(CDIR)/fillem.c \
|
||||
$(CDIR)/gencode.c $(CDIR)/glosym.c $(CDIR)/main.c $(CDIR)/move.c \
|
||||
$(CDIR)/nextem.c $(CDIR)/reg.c $(CDIR)/regvar.c $(CDIR)/salloc.c \
|
||||
$(CDIR)/state.c $(CDIR)/subr.c $(CDIR)/var.c
|
||||
OFILES=codegen.o compute.o equiv.o fillem.o gencode.o glosym.o main.o\
|
||||
move.o nextem.o reg.o regvar.o salloc.o state.o subr.o var.o
|
||||
$(CDIR)/gencode.c $(CDIR)/glosym.c $(CDIR)/label.c $(CDIR)/main.c \
|
||||
$(CDIR)/move.c $(CDIR)/nextem.c $(CDIR)/reg.c $(CDIR)/regvar.c \
|
||||
$(CDIR)/salloc.c $(CDIR)/state.c $(CDIR)/subr.c $(CDIR)/var.c
|
||||
OFILES=codegen.o compute.o equiv.o fillem.o gencode.o glosym.o label.o \
|
||||
main.o move.o nextem.o reg.o regvar.o salloc.o state.o subr.o var.o
|
||||
|
||||
all: tables.c
|
||||
make "EMHOME="$(EMHOME) cg
|
||||
@@ -43,6 +43,8 @@ gencode.o: $(CDIR)/gencode.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/gencode.c
|
||||
glosym.o: $(CDIR)/glosym.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/glosym.c
|
||||
label.o: $(CDIR)/label.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/label.c
|
||||
main.o: $(CDIR)/main.c
|
||||
$(CC) -c $(CFLAGS) $(CDIR)/main.c
|
||||
move.o: $(CDIR)/move.c
|
||||
@@ -97,6 +99,7 @@ compute.o: $(CDIR)/assert.h $(EMHOME)/h/cgg_cg.h
|
||||
compute.o: $(CDIR)/data.h
|
||||
compute.o: $(CDIR)/extern.h
|
||||
compute.o: $(CDIR)/glosym.h
|
||||
compute.o: $(CDIR)/label.h
|
||||
compute.o: $(CDIR)/param.h
|
||||
compute.o: $(CDIR)/result.h
|
||||
compute.o: tables.h
|
||||
@@ -130,6 +133,10 @@ glosym.o: $(CDIR)/glosym.h
|
||||
glosym.o: $(CDIR)/param.h
|
||||
glosym.o: tables.h
|
||||
glosym.o: $(CDIR)/types.h
|
||||
label.o: $(CDIR)/label.h
|
||||
label.o: $(CDIR)/param.h
|
||||
label.o: tables.h
|
||||
label.o: $(CDIR)/types.h
|
||||
main.o: $(CDIR)/param.h
|
||||
main.o: tables.h
|
||||
move.o: $(CDIR)/assert.h $(EMHOME)/h/cgg_cg.h
|
||||
|
||||
@@ -849,6 +849,19 @@ normalfailed: if (stackpad!=tokpatlen) {
|
||||
level--;
|
||||
#endif
|
||||
return(totalcost);
|
||||
#ifdef USE_SHC
|
||||
case DO_LABDEF: {
|
||||
int index;
|
||||
|
||||
DEBUG("LABDEF");
|
||||
if (toplevel) {
|
||||
getint(index,codep);
|
||||
printlabel(index);
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
}
|
||||
doreturn:
|
||||
|
||||
@@ -11,6 +11,10 @@ static char rcsid[] = "$Header$";
|
||||
#include "result.h"
|
||||
#include "glosym.h"
|
||||
#include "extern.h"
|
||||
#ifdef USE_SHC
|
||||
#include <stdio.h>
|
||||
#include "label.h"
|
||||
#endif
|
||||
|
||||
/*
|
||||
* (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
|
||||
@@ -72,6 +76,10 @@ char opdesc[] = {
|
||||
LLDEF|RLDEF, /* EX_XOR */
|
||||
LLDEF|RLDEF, /* EX_AND */
|
||||
0, /* EX_ISROM */
|
||||
#ifdef USE_SHC
|
||||
0, /* EX_STACKHEIGHT */
|
||||
0, /* EX_FALLTHROUGH */
|
||||
#endif
|
||||
};
|
||||
|
||||
string salloc(),strcpy(),strcat();
|
||||
@@ -376,5 +384,27 @@ result_t compute(node) register node_p node; {
|
||||
assert(leaf1.e_typ == EV_INT);
|
||||
result.e_v.e_con = -leaf1.e_v.e_con;
|
||||
return(result);
|
||||
#ifdef USE_SHC
|
||||
case EX_STACKHEIGHT: /* Hans, new */
|
||||
{ register label_p lbl;
|
||||
|
||||
lbl = get_label(saveemp[node->ex_lnode].em_u.em_ioper);
|
||||
if (lbl != NULL) {
|
||||
result.e_v.e_con = lbl->lb_height;
|
||||
} else {
|
||||
result.e_v.e_con = 0;
|
||||
}
|
||||
return(result);
|
||||
}
|
||||
case EX_FALLTHROUGH: /* Hans, new */
|
||||
{ register label_p lbl;
|
||||
|
||||
lbl = get_label(saveemp[node->ex_lnode].em_u.em_ioper);
|
||||
if (lbl != NULL) {
|
||||
result.e_v.e_con = lbl->lb_fallthrough;
|
||||
} else result.e_v.e_con = 0;
|
||||
return(result);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
@@ -127,6 +127,13 @@ fillemlines() {
|
||||
error("unknown instruction byte");
|
||||
case sp_ilb1:
|
||||
case sp_ilb2:
|
||||
#ifdef USE_SHC
|
||||
lp->em_instr = op_lab;
|
||||
lp->em_optyp = OPSYMBOL;
|
||||
lp->em_soper = strarg(t);
|
||||
lp->em_u.em_loper = argval;
|
||||
return;
|
||||
#endif
|
||||
case sp_fpseu:
|
||||
case sp_dlb1:
|
||||
case sp_dlb2:
|
||||
@@ -169,6 +176,11 @@ fillemlines() {
|
||||
continue;
|
||||
case PAR_B:
|
||||
t = sp_ilb2;
|
||||
#ifdef USE_SHC
|
||||
lp->em_optyp = OPSYMBOL;
|
||||
lp->em_u.em_loper = argval;
|
||||
lp->em_soper = strarg(t);
|
||||
#endif
|
||||
break;
|
||||
case PAR_D:
|
||||
assert(t == sp_cstx);
|
||||
@@ -201,6 +213,7 @@ dopseudo() {
|
||||
error("No table entry for %d",emlines[0].em_instr);
|
||||
nextispseu=0;
|
||||
switch(savetab1) {
|
||||
#ifndef USE_SHC
|
||||
case sp_ilb1:
|
||||
case sp_ilb2:
|
||||
swtxt();
|
||||
@@ -215,6 +228,7 @@ dopseudo() {
|
||||
}
|
||||
#endif
|
||||
return;
|
||||
#endif
|
||||
case sp_dlb1:
|
||||
case sp_dlb2:
|
||||
case sp_dnam:
|
||||
@@ -296,6 +310,16 @@ dopseudo() {
|
||||
fatal("bad pointer size");
|
||||
if ( getarg(any_ptyp)!=sp_cend )
|
||||
fatal("too many parameters");
|
||||
#ifdef USE_SHC
|
||||
} else if (argval == ms_sth) {
|
||||
int lbl, height, flthr;
|
||||
getarg(ptyp(sp_cst2)); lbl = argval;
|
||||
getarg(ptyp(sp_cst2)); height = argval;
|
||||
getarg(ptyp(sp_cst2)); flthr = argval;
|
||||
if ( getarg(any_ptyp)!=sp_cend )
|
||||
fatal("too many parameters");
|
||||
add_label(lbl,height, flthr);
|
||||
#endif
|
||||
#ifdef REGVARS
|
||||
} else if (argval == ms_gto) {
|
||||
getarg(ptyp(sp_cend));
|
||||
@@ -365,6 +389,9 @@ dopseudo() {
|
||||
break;
|
||||
case ps_end:
|
||||
getarg(cst_ptyp | ptyp(sp_cend));
|
||||
#ifdef USE_SHC
|
||||
kill_labels();
|
||||
#endif
|
||||
cleanregs();
|
||||
#ifdef REGVARS
|
||||
unlinkregs();
|
||||
|
||||
@@ -11,6 +11,9 @@ static char rcsid[] = "$Header$";
|
||||
#include "data.h"
|
||||
#include "result.h"
|
||||
#include "extern.h"
|
||||
#ifdef USE_SHC
|
||||
#include "mach.h"
|
||||
#endif
|
||||
|
||||
/*
|
||||
* (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
|
||||
@@ -139,3 +142,11 @@ prtoken(tp,leadingchar) token_p tp; {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef USE_SHC
|
||||
printlabel(labnum)
|
||||
int labnum;
|
||||
{
|
||||
newilb(dollar[labnum].e_v.e_addr.ea_str);
|
||||
}
|
||||
#endif
|
||||
|
||||
48
mach/proto/ncg/label.c
Normal file
48
mach/proto/ncg/label.c
Normal file
@@ -0,0 +1,48 @@
|
||||
#include "tables.h"
|
||||
#ifdef USE_SHC
|
||||
#include <stdio.h>
|
||||
#include "types.h"
|
||||
#include "param.h"
|
||||
#include "label.h"
|
||||
|
||||
static label_p label_list = NULL;
|
||||
extern char *myalloc();
|
||||
|
||||
add_label(num, height, flth)
|
||||
{
|
||||
register label_p lbl = NULL;
|
||||
|
||||
if (height <= 0) return;
|
||||
if (flth != TRUE && flth != FALSE)
|
||||
fatal("incorrect value for fallthrough");
|
||||
|
||||
lbl = (label_p) myalloc(sizeof(label_t));
|
||||
lbl->lb_next = label_list;
|
||||
lbl->lb_number = num;
|
||||
lbl->lb_height = height;
|
||||
lbl->lb_fallthrough = flth;
|
||||
label_list = lbl;
|
||||
}
|
||||
|
||||
label_p get_label(num)
|
||||
register word num;
|
||||
{
|
||||
register label_p tmp = label_list;
|
||||
|
||||
while (tmp != NULL) {
|
||||
if (tmp->lb_number == num) return tmp;
|
||||
tmp = tmp->lb_next;
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
||||
kill_labels()
|
||||
{
|
||||
label_p tmp;
|
||||
|
||||
while((tmp = label_list) != NULL) {
|
||||
label_list = label_list->lb_next;
|
||||
myfree((char *)tmp);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
17
mach/proto/ncg/label.h
Normal file
17
mach/proto/ncg/label.h
Normal file
@@ -0,0 +1,17 @@
|
||||
/*
|
||||
* This file contains the structures that hold information about the labels.
|
||||
* The height and the fallthrough functions of the table.
|
||||
*
|
||||
* Author: Hans van Eck.
|
||||
*/
|
||||
|
||||
typedef struct label *label_p;
|
||||
|
||||
typedef struct label {
|
||||
label_p lb_next;
|
||||
word lb_number;
|
||||
int lb_height;
|
||||
short lb_fallthrough;
|
||||
} label_t;
|
||||
|
||||
extern label_p get_label();
|
||||
@@ -64,7 +64,12 @@ byte *trypat(bp,len) register byte *bp; {
|
||||
if (Debug) {
|
||||
fprintf(stderr,"Matched:");
|
||||
for (i=0;i<patlen;i++) {
|
||||
fprintf(stderr," %3.3s",em_mnem[emp[i].em_instr-sp_fmnem]);
|
||||
#ifdef USE_SHC
|
||||
if (emp[i].em_instr == op_lab)
|
||||
fprintf(stderr," lab");
|
||||
else
|
||||
#endif
|
||||
fprintf(stderr," %3.3s",em_mnem[emp[i].em_instr-sp_fmnem]);
|
||||
if (emp[i].em_soper)
|
||||
fprintf(stderr," %s",emp[i].em_soper);
|
||||
}
|
||||
|
||||
@@ -15,6 +15,8 @@
|
||||
|
||||
#define MAXROM 3
|
||||
|
||||
#define op_lab (sp_lmnem+1)
|
||||
|
||||
/*
|
||||
* Tunable constants
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user