Added a patch to ensure that out-of-line hooks are not called with a
authorStephen Adams <edu/mit/csail/zurich/adams>
Tue, 14 Feb 1995 00:58:08 +0000 (00:58 +0000)
committerStephen Adams <edu/mit/csail/zurich/adams>
Tue, 14 Feb 1995 00:58:08 +0000 (00:58 +0000)
commit7a4ab12a52d21eb5b043c9f58cf67a1d4889eab7
tree134187e7a26789e8b81818ffedcc5cfcfc903f6a
parent2bf38e104990ffbcb9b01cf396c710e1edca9b63
Added a patch to ensure that out-of-line hooks are not called with a
constructed continuation.

  (call 'hook (call %make-stack-closure ...) x y)
=>
  (call %invoke-continuation
        (call %make-stack-closure ...)
(call 'hook '#F x y))

This is required because out-of-line hooks have to generate their own
continuation to do the restoring, and the code merges with a control
flow path from somewhere prior to the call so that this continuation
is part of the same rgraph, i.e. the RTL graph sblock for an
INVOKE-SPECIAL-PRIMITIVE is connected to the bblock for the
continuation.  This means that RTL pseudo register value classes must
agree across this boundary, which is not so if we generate one from
%make-stack-closure.

Also tidies a few things.
v8/src/compiler/midend/compat.scm