Skip to content

Commit 1c96aed

Browse files
committed
Remove EMBEDDED shape_id flags
1 parent 2de67d4 commit 1c96aed

File tree

1 file changed

+3
-5
lines changed

1 file changed

+3
-5
lines changed

shape.h

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,18 +16,17 @@ STATIC_ASSERT(shape_id_num_bits, SHAPE_ID_NUM_BITS == sizeof(shape_id_t) * CHAR_
1616
#define SHAPE_ID_FL_FROZEN (SHAPE_FL_FROZEN << SHAPE_ID_OFFSET_NUM_BITS)
1717
#define SHAPE_ID_FL_HAS_OBJECT_ID (SHAPE_FL_HAS_OBJECT_ID << SHAPE_ID_OFFSET_NUM_BITS)
1818
#define SHAPE_ID_FL_TOO_COMPLEX (SHAPE_FL_TOO_COMPLEX << SHAPE_ID_OFFSET_NUM_BITS)
19-
#define SHAPE_ID_FL_EMBEDDED (SHAPE_FL_EMBEDDED << SHAPE_ID_OFFSET_NUM_BITS)
2019
#define SHAPE_ID_FL_NON_CANONICAL_MASK (SHAPE_FL_NON_CANONICAL_MASK << SHAPE_ID_OFFSET_NUM_BITS)
2120

2221
#define SHAPE_ID_HEAP_INDEX_BITS 3
2322
#define SHAPE_ID_HEAP_INDEX_OFFSET (SHAPE_ID_NUM_BITS - SHAPE_ID_HEAP_INDEX_BITS - 1) // FIXME: -1 to avoid crashing YJIT
2423
#define SHAPE_ID_HEAP_INDEX_MAX ((1 << SHAPE_ID_HEAP_INDEX_BITS) - 1)
2524
#define SHAPE_ID_HEAP_INDEX_MASK (SHAPE_ID_HEAP_INDEX_MAX << SHAPE_ID_HEAP_INDEX_OFFSET)
2625

27-
// The interpreter doesn't care about embeded or frozen status when reading ivars.
26+
// The interpreter doesn't care about frozen status or slot size when reading ivars.
2827
// So we normalize shape_id by clearing these bits to improve cache hits.
2928
// JITs however might care about it.
30-
#define SHAPE_ID_READ_ONLY_MASK (~(SHAPE_ID_FL_FROZEN | SHAPE_ID_FL_EMBEDDED | SHAPE_ID_HEAP_INDEX_MASK))
29+
#define SHAPE_ID_READ_ONLY_MASK (~(SHAPE_ID_FL_FROZEN | SHAPE_ID_HEAP_INDEX_MASK))
3130

3231
typedef uint32_t redblack_id_t;
3332

@@ -82,7 +81,6 @@ enum shape_flags {
8281
SHAPE_FL_FROZEN = 1 << 0,
8382
SHAPE_FL_HAS_OBJECT_ID = 1 << 1,
8483
SHAPE_FL_TOO_COMPLEX = 1 << 2,
85-
SHAPE_FL_EMBEDDED = 1 << 3,
8684

8785
SHAPE_FL_NON_CANONICAL_MASK = SHAPE_FL_FROZEN | SHAPE_FL_HAS_OBJECT_ID,
8886
};
@@ -212,7 +210,7 @@ rb_shape_root(size_t heap_id)
212210
shape_id_t heap_index = (shape_id_t)heap_id;
213211

214212
shape_id_t shape_id = (heap_index + FIRST_T_OBJECT_SHAPE_ID);
215-
return shape_id | ((heap_index + 1) << SHAPE_ID_HEAP_INDEX_OFFSET) | SHAPE_ID_FL_EMBEDDED;
213+
return shape_id | ((heap_index + 1) << SHAPE_ID_HEAP_INDEX_OFFSET);
216214
}
217215

218216
static inline bool

0 commit comments

Comments
 (0)