Documentation

Miri.Interpreter.ThreadRuntime

Coherent threaded runtime assembly. Spawned MIR root frames, ordinary calls, TLS roots, scalar results and allocation extras share the same actual machine dictionaries. Compiler ABI/body facts and host effects remain required inputs; this is not a second executable MIR representation.

structure Miri.Interpreter.ThreadRuntime.Configuration (K U C O X F A Aff Payload : Type) :
Instances For
    def Miri.Interpreter.ThreadRuntime.thread {K U C O X F A Aff Payload : Type} [DecidableEq K] (config : Configuration K U C O X F A Aff Payload) :
    ThreadMachine.Hooks K U C O X F A Aff

    Every constructed root frame uses canonical LoadedBody, compiler frame relevance, global locals identity supply, FnEntry retag/argument protection, real local storage/copy and actual after-pop unwind/cache behavior.

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

      Return/unwind terminators share the exact frame cleanup/protector/cache pipeline used by root calls and ordinary calls.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        def Miri.Interpreter.ThreadRuntime.miriThread {U C O X F A Aff Payload : Type} (config : Configuration Memory.MiriMemoryKind U C O X F A Aff Payload) :

        Miri's ignored thread return slot has the fixed source Machine kind.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          def Miri.Interpreter.ThreadRuntime.termination {U C O X F A Aff Payload : Type} (config : Configuration Memory.MiriMemoryKind U C O X F A Aff Payload) (base : ThreadTerminationMachine.Hooks U C O X F A Aff Payload) :
          ThreadTerminationMachine.Hooks U C O X F A Aff Payload

          TLS and normal-thread termination receive exactly the spawn/call dictionaries above, including the same extras registry used for allocation and memory access.

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

            Scheduler iteration and callback/termination protocol are a single binding; all callback take/restore actions are the checked source implementation.

            Equations
            Instances For

              The foreign Miri spawn/join arms share the same calls/allocations/retags as the scheduler's TLS and root-frame cleanup. Reuse is a permitted choice input.

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