[M3commit] CVS Update: cm3
Jay Krell
jkrell at elego.de
Thu Aug 16 15:43:08 CEST 2012
CVSROOT: /usr/cvs
Changes by: jkrell at birch. 12/08/16 15:43:08
Modified files:
cm3/m3-sys/m3middle/src/: Target.m3
Log message:
The only reason, seemingly, that m3cgcat needs to know TARGET,
is so it can initialize m3middle.Target, so that calling conventions
are known. The vast majority of targets just have one calling convention,
with id 0. Go ahead and default initialize calling conventions.
Know what the default is, so that we only initialize again later
for the rare case.
Note that we could optimize this calling convention stuff a fair amount.
The vast majority of targets have one calling convention and so the whole
thing is moot usually. Only NT/x86 will ever have multiple calling conventions.
(i.e. we might as well provide cc with id 1, equal to id 0, so m3cgcat
would work for NT/x86..but not so simple, another factor is if we
are using the integrated backend, and the division of labor of reversing
parameter order and struct return wrt frontend vs. backend -- really,
imho, the division of labor maybe shouldn't be variable like that,
the backends should be consistent..but leave it alone at least for now..)
More information about the M3commit
mailing list