aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/boot/be/abi.ml4
-rw-r--r--src/boot/me/trans.ml6
2 files changed, 7 insertions, 3 deletions
diff --git a/src/boot/be/abi.ml b/src/boot/be/abi.ml
index bd71229d..f4c30e74 100644
--- a/src/boot/be/abi.ml
+++ b/src/boot/be/abi.ml
@@ -49,6 +49,10 @@ let binding_size = 2;;
let binding_field_item = 0;;
let binding_field_binding = 1;;
+let obj_elt_rc = 0;;
+let obj_elt_tydesc = 1;;
+let obj_elt_fields = 2;;
+
let general_code_alignment = 16;;
let tydesc_field_first_param = 0;;
diff --git a/src/boot/me/trans.ml b/src/boot/me/trans.ml
index 46329a10..b4761ff2 100644
--- a/src/boot/me/trans.ml
+++ b/src/boot/me/trans.ml
@@ -521,7 +521,7 @@ let trans_visitor
then
begin
let obj = get_obj_for_current_frame() in
- let tydesc = get_element_ptr obj 1 in
+ let tydesc = get_element_ptr obj Abi.obj_elt_tydesc in
let ty_params_ty = Ast.TY_tup (make_tydesc_tys n_ty_params) in
let ty_params_rty = referent_type abi ty_params_ty in
let ty_params =
@@ -2473,8 +2473,8 @@ let trans_visitor
let null_jmp = null_check binding in
let rc_jmp = drop_refcount_and_cmp binding in
let obj = deref binding in
- let tydesc = get_element_ptr obj 1 in
- let body = get_element_ptr obj 2 in
+ let tydesc = get_element_ptr obj Abi.obj_elt_tydesc in
+ let body = get_element_ptr obj Abi.obj_elt_fields in
let ty_params = get_tydesc_params ty_params tydesc in
let dtor =
get_element_ptr (deref tydesc) Abi.tydesc_field_obj_drop_glue