[project @ 2002-12-13 15:16:29 by simonmar]
authorsimonmar <unknown>
Fri, 13 Dec 2002 15:16:29 +0000 (15:16 +0000)
committersimonmar <unknown>
Fri, 13 Dec 2002 15:16:29 +0000 (15:16 +0000)
commitc986ed0b78218ec0be4c7f360b6060185c39fdf8
treefedb9627f109487f4547bf32888557bca1f2469e
parentdcf930cadb1c8ba420ca44e1ea5bd628d95cc73d
[project @ 2002-12-13 15:16:29 by simonmar]
Shortcut when switching evaluators: instead of going round the normal
scheduler loop, just cut to the chase and run the thread using the
other evaluator.

This avoids doing stack squeezing each time we switch evaluators,
which is an O(n) operation these days, whereas it used to be O(n) the
first time, and O(1) thereafter if the stack hadn't changed too much.
This is a problem that we should perhaps address separately, but for
now the workaround should provide a speed boost to GHCi on the HEAD.
ghc/rts/Schedule.c