TG9541/stm8ef

Replace COMPILE in Core with COMPLIT

TG9541 opened this issue · 1 comments

After the introduction of POSTPONE in #414 the usage of COMPILE can be phased out.

Currently there are sequences in the core like

  • <CALL COMPILE><CALL target> or
  • <CALL COMPILE><CALLR reltarget>

The task of COMPILE is to decode the CALL or CALLR assembler instruction, find target and use CALL, to compile a <CALL target> or <CALLR reltarget> at the current CP. The COMPILE method normally needs 5 or 6 bytes, and 4 bytes in rare cases.

These can be easily replaced with <CALL COMPLIT><target> or <CALLR COMPLIT><target> which normally requires 5 bytes or 4 bytes in rare cases.

It turned out that in the core <CALLR COMPLIT><target> is not so rare.