Documentation

Miri.Interpreter.Native.Runtime

Initialization, callback construction, and mprotect helper boundaries from native_lib/{mod.rs,trace/child.rs,trace/parent.rs,trace/stub.rs}.

Instances For
    def Miri.Interpreter.Native.initializeLibraries {S C Handle : Type} (h : LibraryHooks S C Handle) (choice : C) (paths : Array String) :
    RvalueM S (Array (Handle × Library))

    Source Machine::new checks host/target once per configured library, before loading that library. Empty configuration does not spuriously reject a cross compile, while the supported build still allocates its interchange cell.

    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
          Instances For
            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              Instances For

                Ptrace-scope fast rejection precedes the initialized/lock check exactly as source. Parent exit is explicit, not an initialized interpreter continuation.

                Equations
                • One or more equations did not get rendered due to their size.
                Instances For
                  structure Miri.Interpreter.Native.ClosureHooks (P S C V Code Closure : Type) :
                  Instances For
                    def Miri.Interpreter.Native.buildClosure {P S C V Code Closure : Type} (h : ClosureHooks P S C V Code Closure) (choice : C) (fuel : Nat) (inputs : Array MIR.TyId) (output : MIR.TyId) :
                    RvalueM S Closure

                    Unsupported signature conversion builds the source aborting closure with an empty descriptor; it does not reject creation of the function pointer.

                    Equations
                    • One or more equations did not get rendered due to their size.
                    Instances For
                      def Miri.Interpreter.Native.callback {P S C V Code Closure A : Type} (h : ClosureHooks P S C V Code Closure) (unsupportedSignature : Bool) :

                      Source callback always diagnoses and exits: successful native→Rust callbacks are not implemented in pinned Miri either. The returned error has no value.

                      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

                            Source off helper uses saturating multiplication, on helper wrapping multiplication. Neither error unwinds through the synthetic callback stack.

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