diff options
| author | Roy Frostig <[email protected]> | 2010-07-16 12:23:46 -0700 |
|---|---|---|
| committer | Roy Frostig <[email protected]> | 2010-07-16 12:23:46 -0700 |
| commit | 700e522dffae89feeeb430739f10c234c6f14703 (patch) | |
| tree | 6a14f2662acb417fc882be3b82bf1f719810a5f9 /src/boot/be | |
| parent | Clean up nomenclature in the Abi constants brigade. Purge magic GEP numbers ... (diff) | |
| download | rust-700e522dffae89feeeb430739f10c234c6f14703.tar.xz rust-700e522dffae89feeeb430739f10c234c6f14703.zip | |
More renaming of GEP offsets in abi/trans. This should settle it. Also, fix some overenthusiastic renaming in previous commit.
Diffstat (limited to 'src/boot/be')
| -rw-r--r-- | src/boot/be/abi.ml | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/src/boot/be/abi.ml b/src/boot/be/abi.ml index 3de553f2..3f97f0dd 100644 --- a/src/boot/be/abi.ml +++ b/src/boot/be/abi.ml @@ -45,15 +45,20 @@ let stk_field_valgrind_id = 0 + 1;; let stk_field_limit = stk_field_valgrind_id + 1;; let stk_field_data = stk_field_limit + 1;; -let obj_elt_vtbl = 0;; -let obj_elt_body_box = 1;; +(* Both obj and fn are two-word "bindings": One word points to some + * static dispatch information (vtbl or thunk), and the other points to + * some bag of bound data (object-body or closure). *) +let binding_field_dispatch = 0;; +let binding_field_bound_data = 1;; + +let obj_field_vtbl = binding_field_dispatch;; +let obj_field_body_box = binding_field_bound_data;; let obj_body_elt_tydesc = 0;; let obj_body_elt_fields = 1;; -let fn_elt_thunk = 0;; -let fn_elt_closure = 1;; - +let fn_field_thunk = binding_field_dispatch;; +let fn_field_closure = binding_field_bound_data;; let closure_elt_rc = 0;; let closure_elt_target = 1;; let closure_elt_bound_args = 2;; |