Source/Packages

Compiler.MachineX86Native

packages/compiler/src/Compiler/MachineX86Native.alpha

1,314 lines242 declarations56.6 KiBSHA-256 b3ccf0f17d32

def · lines 795–816

x86NativeMemoryInstruction32Bytes

Full file
795def x86NativeMemoryInstruction32Bytes :
796  (pi unrestricted opcode : Bytes .
797    (pi unrestricted register : (family X86NativeRegister64) .
798      (pi unrestricted base : (family X86NativeRegister64) .
799        (pi unrestricted displacement : (family X86NativeDisplacement32) . Bytes)))) =
800  (lambda unrestricted opcode : Bytes .
801    (lambda unrestricted register : (family X86NativeRegister64) .
802      (lambda unrestricted base : (family X86NativeRegister64) .
803        (lambda unrestricted displacement : (family X86NativeDisplacement32) .
804          (bytes-builder-build
805            (bytes-builder-append
806              (bytes-builder-chunk (x86NativeRexRegisterPair register base))
807              (bytes-builder-append
808                (bytes-builder-chunk opcode)
809                (bytes-builder-append
810                  (bytes-builder-chunk
811                    (x86NativeModRMMemory
812                      (x86NativeRegisterLow3 register)
813                      (x86NativeRegisterLow3 base)))
814                  (bytes-builder-append
815                    (bytes-builder-chunk (x86NativeMemorySIB (x86NativeRegisterLow3 base)))
816                    (bytes-builder-chunk (x86NativeDisplacement32Bytes displacement)))))))))))

The compiler supplied declaration spans and resolved links from this source snapshot. This page does not assert that this file belongs to a checked closure.