[project @ 2001-03-21 11:17:00 by sewardj]
authorsewardj <unknown>
Wed, 21 Mar 2001 11:17:00 +0000 (11:17 +0000)
committersewardj <unknown>
Wed, 21 Mar 2001 11:17:00 +0000 (11:17 +0000)
commit7c98178cfcb609d7518be822e88f0c7a1ff803d3
tree370608ccd9f0ffa494d077cb54c432a9dd622b89
parent44f0f21f7e788f76bb766bab6560f5e8d09826ef
[project @ 2001-03-21 11:17:00 by sewardj]
Implement tagToEnum# for the bytecode system.  Blargh.  We spot tail-calls
   tagToEnum# <type> arg
and emit code to push the arg, then do a bytecode test-sequence to
determine what value it is, push the relevant constructor, and merge
control flow again, at a label which does the normal tail-call
sequence: slide the constructor down to the sequel and enter it.

Blargyle, or as some would say, barferama.
ghc/compiler/ghci/ByteCodeGen.lhs
ghc/compiler/ghci/ByteCodeInstr.lhs
ghc/compiler/ghci/ByteCodeLink.lhs