Skip to content

Instantly share code, notes, and snippets.

@privet-kitty
Last active February 20, 2021 22:48
Show Gist options
  • Save privet-kitty/c61225a0375440fd6fc343d349e28d56 to your computer and use it in GitHub Desktop.
Save privet-kitty/c61225a0375440fd6fc343d349e28d56 to your computer and use it in GitHub Desktop.
primitive type (SBCL 2.0.1 x86-64)
Name Storage classes Type
t descriptor-reg t
positive-fixnum any-reg, signed-reg, unsigned-reg (unsigned-byte 62)
unsigned-byte-63 signed-reg, unsigned-reg, descriptor-reg (unsigned-byte 63)
unsigned-byte-64 unsigned-reg, descriptor-reg (unsigned-byte 64)
fixnum any-reg, signed-reg (signed-byte 63)
signed-byte-64 signed-reg, descriptor-reg (signed-byte 64)
character character-reg, any-reg character
function descriptor-reg function
list descriptor-reg list
instance descriptor-reg instance
funcallable-instance descriptor-reg funcallable-instance
integer descriptor-reg integer
bignum descriptor-reg bignum
ratio descriptor-reg ratio
complex descriptor-reg complex
single-float single-reg, descriptor-reg single-float
double-float double-reg, descriptor-reg double-float
complex-single-float complex-single-reg, descriptor-reg (complex single-float)
complex-double-float complex-double-reg, descriptor-reg (complex double-float)
simd-pack-single single-sse-reg, descriptor-reg (simd-pack single-float)
simd-pack-double double-sse-reg, descriptor-reg (simd-pack double-float)
simd-pack-int int-sse-reg, descriptor-reg (simd-pack integer)
simd-pack-256-single single-avx2-reg, descriptor-reg (simd-pack-256 single-float)
simd-pack-256-double double-avx2-reg, descriptor-reg (simd-pack-256 double-float)
simd-pack-256-int int-avx2-reg, descriptor-reg (simd-pack-256 integer)
simple-array-nil descriptor-reg (simple-array nil (*))
simple-base-string descriptor-reg (simple-array base-char (*))
simple-character-string descriptor-reg (simple-array character (*))
simple-array-single-float descriptor-reg (simple-array single-float (*))
simple-array-double-float descriptor-reg (simple-array double-float (*))
simple-bit-vector descriptor-reg (simple-array bit (*))
simple-array-unsigned-byte-2 descriptor-reg (simple-array (unsigned-byte 2) (*))
simple-array-unsigned-byte-4 descriptor-reg (simple-array (unsigned-byte 4) (*))
simple-array-unsigned-byte-7 descriptor-reg (simple-array (unsigned-byte 7) (*))
simple-array-unsigned-byte-8 descriptor-reg (simple-array (unsigned-byte 8) (*))
simple-array-unsigned-byte-15 descriptor-reg (simple-array (unsigned-byte 15) (*))
simple-array-unsigned-byte-16 descriptor-reg (simple-array (unsigned-byte 16) (*))
simple-array-unsigned-byte-31 descriptor-reg (simple-array (unsigned-byte 31) (*))
simple-array-unsigned-byte-32 descriptor-reg (simple-array (unsigned-byte 32) (*))
simple-array-unsigned-fixnum descriptor-reg (simple-array (unsigned-byte 62) (*))
simple-array-unsigned-byte-63 descriptor-reg (simple-array (unsigned-byte 63) (*))
simple-array-unsigned-byte-64 descriptor-reg (simple-array (unsigned-byte 64) (*))
simple-array-signed-byte-8 descriptor-reg (simple-array (signed-byte 8) (*))
simple-array-signed-byte-16 descriptor-reg (simple-array (signed-byte 16) (*))
simple-array-signed-byte-32 descriptor-reg (simple-array (signed-byte 32) (*))
simple-array-fixnum descriptor-reg (simple-array fixnum (*))
simple-array-signed-byte-64 descriptor-reg (simple-array (signed-byte 64) (*))
simple-array-complex-single-float descriptor-reg (simple-array (complex single-float) (*))
simple-array-complex-double-float descriptor-reg (simple-array (complex double-float) (*))
simple-vector descriptor-reg (simple-array t (*))
system-area-pointer sap-reg, descriptor-reg system-area-pointer
weak-pointer descriptor-reg weak-pointer
catch-block catch-block nil
unwind-block unwind-block nil
simd-pack-256 := simd-pack-256-single
| simd-pack-256-double
| simd-pack-256-int
simd-pack := simd-pack-single
| simd-pack-double
| simd-pack-int
untagged-num := fixnum
| positive-fixnum
| signed-byte-64
| unsigned-byte-63
| unsigned-byte-64
signed-num := signed-byte-64
| fixnum
| unsigned-byte-63
| positive-fixnum
unsigned-num := unsigned-byte-64
| unsigned-byte-63
| positive-fixnum
tagged-num := positive-fixnum
| fixnum
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment