Next: Strings, Previous: Data-Blocks and Header-Word Format, Up: Object Format [Contents]
These are the other-immediate types. We specify them including all low eight
bits, including the other-immediate tag, so we can think of the type bits as
one type – not an other-immediate major type and a subtype. Also, fetching a
byte and comparing it against a constant is more efficient than wasting even a
small amount of time shifting out the other-immediate tag to compare against a
five bit constant. (The current values can be obtained from the
generated internals.h
file.)
HEX Number (< 36) bignum 10 0A ratio 14 0E single-float 18 12 double-float 22 16 double-double-float 26 1A complex 30 1E (complex single-float) 34 22 (complex double-float) 38 26 (complex double-double-float) 42 2A Array (<= 46 code 118) Simple-Array (<= 46 code 118) simple-array 46 2E Vector (<= 50 code 118) simple-string 50 32 simple-bit-vector 54 36 simple-vector 58 3A (simple-array (unsigned-byte 2) (*)) 62 3E (simple-array (unsigned-byte 4) (*)) 66 42 (simple-array (unsigned-byte 8) (*)) 70 46 (simple-array (unsigned-byte 16) (*)) 74 4A (simple-array (unsigned-byte 32) (*)) 78 4E (simple-array (signed-byte 8) (*)) 82 52 (simple-array (signed-byte 16) (*)) 86 56 (simple-array (signed-byte 30) (*)) 90 5A (simple-array (signed-byte 32) (*)) 94 5E (simple-array single-float (*)) 98 62 (simple-array double-float (*)) 102 66 (simple-array double-double-float (*)) 106 6A (simple-array (complex single-float) (*) 110 6E (simple-array (complex double-float) (*) 114 72 (simple-array (complex double-double) (*) 118 76 complex-string 122 7A complex-bit-vector 126 7E (array * (*)) -- general complex vector. 130 82 complex-array 134 86 code-header-type 138 8A function-header-type 142 8E closure-header-type 146 92 funcallable-instance-header-type 150 96 byte-code-function-header-type 154 9A byte-code-closure-header-type 158 9E closure-function-header-type 162 A2 return-pc-header-type (a.k.a LRA) 166 A6 value-cell-header-type 170 AA symbol-header-type 174 AE base-character-type 178 B2 system-area-pointer-type (header type) 182 B6 unbound-marker 186 BA weak-pointer-type 190 BE instance-header-type 194 C2 fdefn-type 198 C6 scavenger-hook-type 202 CA
Next: Strings, Previous: Data-Blocks and Header-Word Format, Up: Object Format [Contents]