crucible-0.7: Crucible is a library for language-agnostic symbolic simulation
Copyright(c) Galois Inc 2019
LicenseBSD3
MaintainerAndrei Stefanescu <andrei@galois.com>
Stabilityprovisional
Safe HaskellSafe-Inferred
LanguageHaskell2010

Lang.Crucible.Simulator.Breakpoint

Description

This module provides execution features for changing the state on breakpoints.

Synopsis

Documentation

breakAndReturn :: (IsSymInterface sym, IsSyntaxExtension ext) => CFG ext blocks init ret -> BreakpointName -> Assignment TypeRepr args -> TypeRepr ret -> OverrideSim p sym ext rtp args ret (RegValue sym ret) -> HashMap SomeHandle [BreakpointName] -> IO (ExecutionFeature p sym ext rtp) Source #

This execution feature registers an override for a breakpoint. The override summarizes the execution from the breakpoint to the return from the function (similar to a tail call). This feature requires a map from each function handle to the list of breakpoints in the respective function with this execution feature.