Documentation

Miri.Input.EvalUnixConstruction

Source construction for the Unix environment foreign-item arm. The compiler ABI recipe and genuine environment/host operations are explicit; frame relevance, symbol clashes, ABI compatibility, target policy and guest memory writes are bound to the canonical compiler and execution state.

@[reducible, inline]
abbrev Miri.Input.EvalUnixConstruction.User (Os R P H D O Aff B Host : Type) :
Equations
Instances For
    @[reducible, inline]
    abbrev Miri.Input.EvalUnixConstruction.State (Os R P H D O Aff B Host : Type) :
    Equations
    Instances For
      @[reducible, inline]
      abbrev Miri.Input.EvalUnixConstruction.M (Os R P H D O Aff B Host A : Type) :
      Equations
      Instances For
        @[reducible, inline]
        abbrev Miri.Input.EvalUnixConstruction.Stored (Os R P H D O Aff B Host : Type) :
        Equations
        Instances For
          @[reducible, inline]
          abbrev Miri.Input.EvalUnixConstruction.InnerControl (Os R P H D O Aff B Host : Type) :
          Equations
          Instances For
            Instances For
              Equations
              • One or more equations did not get rendered due to their size.
              Instances For

                Exact source MiriConfig.isolated_op setting. communicate is checked against this value, and shim policy actions are derived below.

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

                    Genuine host filesystem/error-display effects plus exact Miri host configuration values. It contains no target memory, ABI, libc constant, EnvVars, errno-slot, or policy callback.

                    Instances For

                      Native error conversions that cannot be computed from the target compiler facts. Unix errno/libc lookups and conversion of host errors remain explicit; the IoError machine, compiler constants, errno memory and scalar access are constructed here.

                      Instances For

                        Source EnvVars backed by the same EvalWorld environment root and real runtime memory/allocation geometry as startup. The only environment-specific effects are the actual host OsStr conversions and the two host error outcomes; all target strings, arrays, reads, writes, allocation kinds and roots come from EnvironmentMemory.

                        Equations
                        • One or more equations did not get rendered due to their size.
                        Instances For
                          def Miri.Input.EvalUnixConstruction.environmentFromRuntime {Os R P H D O Aff B Host E C Payload : Type} [DecidableEq Memory.MiriMemoryKind] (p : CompilerProviders.Prepared) (userRelevantCrates : Array Nat) (compatibilityBudget : Nat) (host : EvalHostRuntimeConstruction.OsHostEffects Os) (hostEffects : EvalHostRuntimeConstruction.EnvironmentHostEffects (InnerControl Os R P H D O Aff B Host)) (hostConfig : HostConfigEffects (State Os R P H D O Aff B Host) Os E) (ioHost : IoHostEffects (State Os R P H D O Aff B Host) E) (memory : EvalHostRuntimeConstruction.EnvironmentMemory (InnerControl Os R P H D O Aff B Host) C Payload) :

                          Compose Unix environment dispatch from the real runtime memory bundle. source remains only for process/host/isolation policy and host-error display; its environment, OS-string memory, scalar/pointer access, compiler constants, typed projections, errno allocation, and errno-place state are all replaced by the canonical providers.

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