Can C default to float? Are there floating registers?
Wendy Thrash
wendyt at isieng.UUCP
Sat Sep 28 08:21:31 AEST 1985
Ken Turkowski @ CADLINC, Menlo Park, CA writes:
> On machines such as the 68000 that have separate address and data
> register sets, the C compiler doesn't normally distinguish between the
> two when allocating them....
Rich $alz at Mirror Systems replies:
> Sorry, Ken. If the C compiler is based on PCC, as most of them are, then:
> "The machine is assumed to have a number of
> registers, of at most two different types: A and B...."
Vanilla SU numbers and sucomp() do not adequately describe different types of
registers; resulting schemes for register allocation and evaluation order are
generally either very conservative or very easy to break; some compilers
(including a couple I've worked on and, I believe, Sun's) extend the SU notion
to ordered n-tuples. I've found getting register allocation correct to be the
main problem in modifying our compilers for the 68881.
The 4.2 f77 optimizer seems fairly single-minded in its belief that there is
only one kind of register, by the way -- a bigger pain than ccom/f1.
More information about the Comp.lang.c
mailing list