Documentation

Miri.Interpreter.ProgramExit

Pinned eval.rs::ProgramExitHandler: run TLS cleanup, yield 256 times, then terminate with for_exit=true. Machine stop remains an explicit outcome.

Instances For
    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        Equations
        Instances For
          Instances For
            Instances For
              Equations
              • One or more equations did not get rendered due to their size.
              Instances For
                Instances For
                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For
                    @[reducible, inline]
                    abbrev Miri.Interpreter.ProgramExitM (P E H Error A : Type) :
                    Equations
                    Instances For
                      def Miri.Interpreter.ProgramExitState.new {P E H : Type} (state : TlsExecutionState P E H) (exitCode : Int32) (exitType : ProgramExitType) :

                      Source constructs a fresh TlsDtorsState::new_for_exit, retaining the actual machine/TLS data. The handler is separate from normal-thread callback state.

                      Equations
                      • One or more equations did not get rendered due to their size.
                      Instances For
                        def Miri.Interpreter.programExitOnStackEmpty {P E H Error ProvExtra : Type} [Memory.PointerProvenance P] (platform : TlsPlatform) (target : ABI.RuntimeTargetDataLayout) (destructors : TlsDestructorQueries P E H Error) (termination : ThreadExitQueries P E H ProvExtra Error) :

                        Actual ordered stateful exit protocol, including state changes before a failed callback. A source machine-stop outcome must stop the interpreter loop; it is not a normal Poll::Ready return from the callback.

                        Equations
                        • One or more equations did not get rendered due to their size.
                        Instances For