Documentation

Miri.Interpreter.PointerPlaceMachine

Source place.rs pointer→place construction and deref_pointer, on the canonical Miri address/alignment/validity state. Construction merely caches misalignment; only typed safe-pointer dereference checks dereferenceability.

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

            Representation access to the actual alignment policy and shared pointer promises. These are data projections, not an operation-result oracle.

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

                Source is_ptr_misaligned, including the no-resolve disabled/one-byte path, allocation symbolic policy, and integer-address fallback.

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

                  Existing concrete control/pointer-state API uses the same generic rule.

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

                        Source builtin_deref/layout query precedes scalar/metadata extraction. No dynamic-layout or pointer validity check occurs in this constructor.

                        Equations
                        • One or more equations did not get rendered due to their size.
                        Instances For
                          def Miri.Interpreter.PointerPlaceMachine.dereference {K U C F A : Type} [DecidableEq K] (access : ValidityMachine.Access K U) (compiler : Compiler K U C) (dynamic : DynamicLayoutHooks Memory.Provenance (State K U) C) (vtable : VTableHooks Memory.Provenance (State K U) C F A) (fuel : Nat) (choice : C) (source : OpTy Memory.Provenance) :

                          Full source typed dereference: kind check, read, place construction, conditional validity, safe-pointer null/layout/access/alignment; raw-pointer unsized dynamic tails validate only their vtable identity/type.

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

                            Close ordinary and simple-deref PlaceHooks with the same source driver. Simple deref skips kind/validity checks and performs only read+construction.

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

                              Unary PtrMetadata's source validity event executes before extracting the metadata scalar. Immediates remain typed and do not gain spurious memory reads.

                              Equations
                              • One or more equations did not get rendered due to their size.
                              Instances For
                                def Miri.Interpreter.PointerPlaceMachine.bindCast {K U C F A V : Type} [DecidableEq K] (access : ValidityMachine.Access K U) (compiler : Compiler K U C) (dynamic : DynamicLayoutHooks Memory.Provenance (State K U) C) (vtable : VTableHooks Memory.Provenance (State K U) C F A) (fuel : Nat) (base : CastHooks Memory.Provenance (State K U) C V) :
                                Equations
                                • One or more equations did not get rendered due to their size.
                                Instances For

                                  Close the common pointer-conversion/dereference leaves of core intrinsics and atomic access, reusing precisely the same validity driver as ordinary MIR.

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