From 13c7721bc52ca2ee998c0a4347f15264c78a951b Mon Sep 17 00:00:00 2001 From: "kr.angelov" Date: Mon, 6 Oct 2014 15:57:42 +0000 Subject: using instruction RET was wrong; now use EVAL --- src/runtime/haskell/PGF/Binary.hs | 6 ++---- src/runtime/haskell/PGF/ByteCode.hs | 3 --- 2 files changed, 2 insertions(+), 7 deletions(-) (limited to 'src/runtime/haskell') diff --git a/src/runtime/haskell/PGF/Binary.hs b/src/runtime/haskell/PGF/Binary.hs index 3f8515179..aef894e2b 100644 --- a/src/runtime/haskell/PGF/Binary.hs +++ b/src/runtime/haskell/PGF/Binary.hs @@ -168,10 +168,8 @@ instance Binary Instr where put (EVAL (ARG_VAR n) (UpdateCall b c)) = putWord8 49 >> put n >> put (b,c) put (EVAL (FREE_VAR n) (UpdateCall b c)) = putWord8 50 >> put n >> put (b,c) put (EVAL (GLOBAL id) (UpdateCall b c)) = putWord8 51 >> put id >> put (b,c) - put (RET h (TailCall a b c)) = putWord8 53 >> put h >> put a >> put b - put (RET h (UpdateCall b c)) = putWord8 54 >> put h >> put b - put (DROP n l ) = putWord8 60 >> put (n,l) - put (FAIL ) = putWord8 64 + put (DROP n l ) = putWord8 52 >> put (n,l) + put (FAIL ) = putWord8 56 instance Binary Type where put (DTyp hypos cat exps) = put (hypos,cat,exps) diff --git a/src/runtime/haskell/PGF/ByteCode.hs b/src/runtime/haskell/PGF/ByteCode.hs index 7cec9cfe5..393efa5b9 100644 --- a/src/runtime/haskell/PGF/ByteCode.hs +++ b/src/runtime/haskell/PGF/ByteCode.hs @@ -26,7 +26,6 @@ data Instr | SET_PAD | PUSH IVal | EVAL IVal TailInfo - | RET {-# UNPACK #-} !Int TailInfo | DROP {-# UNPACK #-} !Int {-# UNPACK #-} !CodeLabel | FAIL @@ -60,8 +59,6 @@ ppInstr (SET v) = text "SET " <+> ppIVal v ppInstr (SET_PAD ) = text "SET_PAD" ppInstr (PUSH v) = text "PUSH " <+> ppIVal v ppInstr (EVAL v ti) = text "EVAL " <+> ppIVal v <+> ppTailInfo ti -ppInstr (RET h (TailCall a b c)) = text "RET " <+> ppIVal (HEAP h) <+> text "tail" <> parens (int a <> comma <> int b) -ppInstr (RET h (UpdateCall b c)) = text "RET " <+> ppIVal (HEAP h) <+> text "update" <> parens (int b) ppInstr (DROP n l ) = text "DROP " <+> int n <+> ppLabel l ppInstr (FAIL ) = text "FAIL" -- cgit v1.2.3