mirror of
https://github.com/GaloisInc/macaw.git
synced 2024-11-24 00:42:28 +03:00
Remove PhaseHolderStmt.
This commit is contained in:
parent
097edda1ef
commit
052506f202
@ -474,8 +474,6 @@ stmtDemandedValues ctx stmt = demandConstraints ctx $
|
||||
| otherwise ->
|
||||
[]
|
||||
WriteMem addr _ v -> [Some addr, Some v]
|
||||
-- Place holder statements are unknown.
|
||||
PlaceHolderStmt _ _ -> []
|
||||
InstructionStart _ _ -> []
|
||||
-- Comment statements have no specific value.
|
||||
Comment _ -> []
|
||||
|
@ -781,11 +781,6 @@ data Stmt arch ids
|
||||
| forall tp . WriteMem !(ArchAddrValue arch ids) !(MemRepr tp) !(Value arch ids tp)
|
||||
-- ^ This denotes a write to memory, and consists of an address to write to, a `MemRepr` defining
|
||||
-- how the value should be stored in memory, and the value to be written.
|
||||
| PlaceHolderStmt !([Some (Value arch ids)]) !String
|
||||
-- ^ A placeholder to indicate something the
|
||||
-- architecture-specific backend does not support.
|
||||
--
|
||||
-- Note that we plan to remove this eventually
|
||||
| InstructionStart !(ArchAddrWord arch) !Text
|
||||
-- ^ The start of an instruction
|
||||
--
|
||||
@ -809,9 +804,6 @@ ppStmt ppOff stmt =
|
||||
case stmt of
|
||||
AssignStmt a -> pretty a
|
||||
WriteMem a _ rhs -> text "write_mem" <+> prettyPrec 11 a <+> ppValue 0 rhs
|
||||
PlaceHolderStmt vals name ->
|
||||
text ("PLACEHOLDER: " ++ name)
|
||||
<+> parens (hcat $ punctuate comma $ viewSome (ppValue 0) <$> vals)
|
||||
InstructionStart off mnem -> text "#" <+> ppOff off <+> text (Text.unpack mnem)
|
||||
Comment s -> text $ "# " ++ Text.unpack s
|
||||
ExecArchStmt s -> ppArchStmt (ppValue 10) s
|
||||
|
@ -103,8 +103,6 @@ addStmtDemands s =
|
||||
WriteMem addr _repr val -> do
|
||||
addValueDemands addr
|
||||
addValueDemands val
|
||||
PlaceHolderStmt l _ ->
|
||||
mapM_ (\(Some v) -> addValueDemands v) l
|
||||
InstructionStart{} ->
|
||||
pure ()
|
||||
Comment _ ->
|
||||
@ -125,7 +123,6 @@ stmtNeeded demandSet stmt =
|
||||
case stmt of
|
||||
AssignStmt a -> Set.member (Some (assignId a)) demandSet
|
||||
WriteMem{} -> True
|
||||
PlaceHolderStmt{} -> True
|
||||
InstructionStart{} -> True
|
||||
Comment{} -> True
|
||||
ExecArchStmt{} -> True
|
||||
|
@ -436,9 +436,6 @@ rewriteStmt s =
|
||||
tgtAddr <- rewriteValue addr
|
||||
tgtVal <- rewriteValue val
|
||||
appendRewrittenStmt $ WriteMem tgtAddr repr tgtVal
|
||||
PlaceHolderStmt args nm -> do
|
||||
args' <- traverse (traverseSome rewriteValue) args
|
||||
appendRewrittenStmt $ PlaceHolderStmt args' nm
|
||||
Comment cmt ->
|
||||
appendRewrittenStmt $ Comment cmt
|
||||
InstructionStart off mnem ->
|
||||
|
@ -78,8 +78,6 @@ absEvalStmt info stmt = withArchConstraints info $
|
||||
modify $ addAssignment info a
|
||||
WriteMem addr memRepr v ->
|
||||
modify $ addMemWrite addr memRepr v
|
||||
PlaceHolderStmt{} ->
|
||||
pure ()
|
||||
InstructionStart _ _ ->
|
||||
pure ()
|
||||
Comment{} ->
|
||||
|
@ -920,9 +920,6 @@ addMacawStmt stmt =
|
||||
cval <- valueToCrucible val
|
||||
w <- archAddrWidth
|
||||
void $ evalMacawStmt (MacawWriteMem w repr caddr cval)
|
||||
M.PlaceHolderStmt _vals msg -> do
|
||||
cmsg <- crucibleValue (C.TextLit (Text.pack msg))
|
||||
addTermStmt (CR.ErrorStmt cmsg)
|
||||
M.InstructionStart off _ -> do
|
||||
-- Update the position
|
||||
modify $ \s -> s { codeOff = off }
|
||||
|
Loading…
Reference in New Issue
Block a user