K
Kaz Kylheku
not be in the spirit that say that inbuilt operators of the
language map to inbuilt operations of the processor, while
functions might combine such operations to form larger units.
I would say there is no such spirit.
The first implementations of C (well, B) generated "threaded" code.
``The B compiler on the PDP-7 did not generate machine instructions, but
instead `threaded code' [Bell 72], an interpretive scheme in which the
compiler's output consists of a sequence of addresses of code fragments that
perform the elementary operations. The operations typically—in particular for
B—act on a simple stack machine.''[1]
The need for run-time support routines just to have all the operators working
on all of the arithmetic types is more frequent than one might think; you don't
have to reach to examples like 8 bit micros. (Think: libgcc).