r is now uint8_t, allocated to registers
len is uint16_t for more efficent arithmetic
(Changes replicated from the 253x port, originally
contributed by Philippe Retornaz - EPFL)
This allows us to reduce CODE footprint of SDCC projects
built with --model-huge. Use carefully!
* Added a facility which allows us to enable/disable the
feature from the CPU dir (CC_CONF_NON_BANKED_OPTIMIZATION)
* Added the CC_NON_BANKED keyword to some platform files
(expands to __nonbanked)
* Started using this for some examples
This new approach (CLOCK_CONF_ACCURATE=0) was not as inaccurate
as originally thought. In fact, it has pretty much the same
accuracy as the old, stack-hungry version.
* Renamed the define from CLOCK_CONF_ACCURATE (1: old) to
CLOCK_CONF_STACK_FRIENDLY (1: new) to stop implying
that one is more accurate than the other.
* Using CLOCK_CONF_STACK_FRIENDLY by default.
Since the introduction of a purpose-written routine, the old
generic one (which was written in asm) was never being used.
There was a configuration directive which allowed us to switch
between the two. All references to this configuration directive
have also been removed.