File tree Expand file tree Collapse file tree 1 file changed +17
-6
lines changed Expand file tree Collapse file tree 1 file changed +17
-6
lines changed Original file line number Diff line number Diff line change @@ -28,12 +28,23 @@ const int vec_elt_alloc = 1;
28
28
const int vec_elt_fill = 2 ;
29
29
const int vec_elt_data = 3 ;
30
30
31
- const int calltup_elt_out_ptr = 0 ;
32
- const int calltup_elt_task_ptr = 1 ;
33
- const int calltup_elt_indirect_args = 2 ;
34
- const int calltup_elt_ty_params = 3 ;
35
- const int calltup_elt_args = 4 ;
36
- const int calltup_elt_iterator_args = 5 ;
31
+
32
+ /* Both obj and fn are two-word "bindings": One word points to some static
33
+ * dispatch information (vtbl, thunk, callee), and the other points to some
34
+ * box of bound data (object-body or closure).
35
+ */
36
+
37
+ const int binding_field_dispatch = 0 ;
38
+ const int binding_field_bound_data = 1 ;
39
+
40
+ const int obj_field_vtbl = binding_field_dispatch;
41
+ const int obj_field_box = binding_field_bound_data;
42
+
43
+ const int obj_body_elt_tydesc = 0 ;
44
+ const int obj_body_elt_fields = 1 ;
45
+
46
+ const int fn_field_code = binding_field_dispatch;
47
+ const int fn_field_box = binding_field_bound_data;
37
48
38
49
const int worst_case_glue_call_args = 7 ;
39
50
You can’t perform that action at this time.
0 commit comments