Allow return_to_compiled_code to return to compiled entries.
authorTaylor R Campbell <campbell@mumble.net>
Thu, 3 Jan 2019 03:19:54 +0000 (03:19 +0000)
committerTaylor R Campbell <campbell@mumble.net>
Tue, 13 Aug 2019 14:37:03 +0000 (14:37 +0000)
commit500ae9a5b856ddc8ea3ae03fa1d32b6efaa10de3
treeb21b738c678945c6b52e174063ddc292ca094ae5
parentfd7b4fe4c83e5e4be265cdcc1d1042f57c09ffad
Allow return_to_compiled_code to return to compiled entries.

The earlier compiled entry/return split left various utility calls
pushing compiled entries, rather than compiled return addresses, for
continuations on the stack -- notably interrupt routines, the linker
utility, and interpreter calls.

I arranged for these to all to use RETURN_TO_SCHEME_ENTRY (or
JUMP_TO_CC_ENTRY), but missed one spot: the continuations constructed
by STACK-FRAME->CONTINUATION, which use return_to_compiled_code,
which in turn expected a compiled return rather than a compiled entry
and choked.

The interrupt routines, linker utility, and interpreter calls should
all be adapted to take returns rather than entries (which is another
ABI-breaking flag day), but this will do for now.
src/microcode/cmpint.c