ack/lib/descr/fe.src

173 lines
3.6 KiB
Plaintext

# (c) copyright 1983 by the Vrije Universiteit, Amsterdam, The Netherlands.
# $Header$
callname ack
name cpp
# no from, this is a preprocessor
to .i
program {EM}/lib/cpp
mapflag -I* CPP_F={CPP_F?} -I*
mapflag -U* CPP_F={CPP_F?} -U*
mapflag -D* CPP_F={CPP_F?} -D*
mapflag -P CPP_F={CPP_F?} -P
mapflag -C CPP_F={CPP_F?} -C
args {CPP_F?} ({SUFFIX?}:.ocm=-I{EM}/include/occam) \
({SUFFIX}:.c={INCLUDES?}) \
-D{NAME} -DEM_WSIZE={w} -DEM_PSIZE={p} \
-DEM_SSIZE={s} -DEM_LSIZE={l} -DEM_FSIZE={f} -DEM_DSIZE={d} <
stdout
prep is
end
name cem
from .c
to .k
program {EM}/lib/em_cemcom
# mapflag -I* CPP_F={CPP_F?} -I*
# mapflag -U* CPP_F={CPP_F?} -U*
# mapflag -D* CPP_F={CPP_F?} -D*
mapflag -M* CEM_F={CEM_F?} -M*
mapflag -L CEM_F={CEM_F?} -L
mapflag -KR CEM_F={CEM_F?} -R
mapflag -w CEM_F={CEM_F?} -w
mapflag -p CEM_F={DEM_F?} -p
mapflag -V CEM_F={DEM_F?} -V*
args \
{CPP_F?} {INCLUDES?} \
-D{NAME} -DEM_WSIZE={w} -DEM_PSIZE={p} \
-DEM_SSIZE={s} -DEM_LSIZE={l} -DEM_FSIZE={f} -DEM_DSIZE={d} \
-Vw{w}.{w}i{w}.{w}p{p}.{w}f{f}.{w}s{s}.{s}l{l}.{w}d{d}.{w} {CC_ALIGN?} \
{CEM_F?} < >
rts .c
need .c
callname acc
callname cc
end
var PC_PCPATH={EM}/lib/pc_pem
var PC_ERRPATH={EM}/etc/pc_errors
name pc
from .p
to .k
program {EM}/lib/em_pc
mapflag -p PC_F={PC_F?} -p
mapflag -w PC_F={PC_F?} -w
mapflag -E PC_F={PC_F?} -E
mapflag -e PC_F={PC_F?} -e
mapflag -{*} PC_F={PC_F?} -\{*}
mapflag -L PC_F={PC_F?} -\{l-}
mapflag -V* PC_F={PC_F?} -V*
mapflag -Pr* PC_ERRPATH=*
mapflag -PR* PC_PCPATH=*
args -Vw{w}i{w}j{w}p{p}f{d}l{l} -R{PC_PCPATH} -r{PC_ERRPATH} {PC_F?} < > {SOURCE}
prep cond
rts .p
need .p
callname apc
callname pc
end
name m2
from .mod
to .k
program {EM}/lib/em_m2
mapflag -I* M2_INCL={M2_INCL?} -I*
mapflag -L M2_F={M2_F?} -L
mapflag -w* M2_F={M2_F?} -w*
mapflag -W* M2_F={M2_F?} -W*
mapflag -M* M2_F={M2_F?} -M*
mapflag -x M2_F={M2_F?} -x
mapflag -V* M2_F={M2_F?} -V*
args {M2_INCL?} -I{EM}/lib/m2 {M2SYSLIB?} \
-Vw{w}.{w}i{w}.{w}p{p}.{w}l{l}.{w} \
{M2_ALIGN?} {M2_F?} < >
prep cond
rts .mod
need .mod
callname m2
end
name ocm
from .ocm
to .k
program {EM}/lib/em_occam
mapflag -L OCM_F={OCM_F?} -L
mapflag -V* OCM_F={OCM_F?} -V*
args -Vw{w}p{p}l{l} {OCM_F?}
stdin
stdout
rts .ocm
need .ocm
prep cond
callname ocm
end
name abc
from .b
to .e
program {EM}/lib/em_bem
mapflag -h ABC_F={ABC_F?} -h
mapflag -w ABC_F={ABC_F?} -w
mapflag -L ABC_F={ABC_F?} -L
mapflag -E ABC_F={ABC_F?} -E
# mapflag -d ABC_F={ABC_F?} -d
args {ABC_F?} < > {SOURCE}
prep always
rts .b
need .b
callname abc
end
name encode
from .e
to .k
program {EM}/lib/em_encode
args <
prep cond
stdout
end
name opt
from .k
to .m
program {EM}/lib/em_opt
mapflag -LIB OPT_F={OPT_F?} -L
args {OPT_F?} <
stdout
optimizer
end
name ego
from .m.ma
to .gk
program /bin/sh
mapflag -IL* EGO_F={EGO_F?} -IL*
mapflag -CS* EGO_F={EGO_F?} -CS*
mapflag -SR* EGO_F={EGO_F?} -SR*
mapflag -UD* EGO_F={EGO_F?} -UD*
mapflag -LV* EGO_F={EGO_F?} -LV*
mapflag -SA* EGO_F={EGO_F?} -RA*
mapflag -SP* EGO_F={EGO_F?} -SP*
mapflag -BO* EGO_F={EGO_F?} -BO*
mapflag -CJ* EGO_F={EGO_F?} -CJ*
mapflag -Q* EGO_F={EGO_F?} -Q*
mapflag -T* EGO_F={EGO_F?} -T*
mapflag -S* EGO_F={EGO_F?} -S*
mapflag -s* EGO_F={EGO_F?} -s*
args {EM}/lib/em_ego {EGO_F?} -P {EM}/lib/ego \
-M{EM}/lib/ego/{M}descr <
optimizer
stdout
priority -1
combiner
end
name opt2
# output of the global optimizer is processed by a stripped version
# of the em peephole optimizer
from .gk
to .g
program {EM}/lib/em_opt2
# mapflag -LIB OPT_F={OPT_F?} -L
args {OPT_F?} <
optimizer
stdout
end
name decode
from .k.m.g
to .e
program {EM}/lib/em_decode
args <
stdout
end