aboutsummaryrefslogtreecommitdiff
path: root/src/boot/be
diff options
context:
space:
mode:
authorRoy Frostig <[email protected]>2010-07-12 23:55:44 -0700
committerRoy Frostig <[email protected]>2010-07-15 12:30:46 -0700
commite21865a4407495a5724798a59276e4f276bc93f6 (patch)
treecd69733ab8b2f4bdb25edc4c820f6ef8e6def069 /src/boot/be
parentMake the call args referent type always have a closure word (non-optional, nu... (diff)
downloadrust-e21865a4407495a5724798a59276e4f276bc93f6.tar.xz
rust-e21865a4407495a5724798a59276e4f276bc93f6.zip
Begin moving closure-or-obj pointer out to front of call args by changing the order within the call-arg tup referent type. This breaks the world quite a bit, since it remains to fix custom call paths: glue, upcalls, natives.
Diffstat (limited to 'src/boot/be')
-rw-r--r--src/boot/be/abi.ml10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/boot/be/abi.ml b/src/boot/be/abi.ml
index 44f9761b..18c49460 100644
--- a/src/boot/be/abi.ml
+++ b/src/boot/be/abi.ml
@@ -68,17 +68,17 @@ let vec_elt_data = 3;;
let calltup_elt_out_ptr = 0;;
let calltup_elt_task_ptr = 1;;
-let calltup_elt_ty_params = 2;;
-let calltup_elt_args = 3;;
-let calltup_elt_iterator_args = 4;;
-let calltup_elt_indirect_args = 5;;
+let calltup_elt_indirect_args = 2;;
+let calltup_elt_ty_params = 3;;
+let calltup_elt_args = 4;;
+let calltup_elt_iterator_args = 5;;
let iterator_args_elt_block_fn = 0;;
let iterator_args_elt_outer_frame_ptr = 1;;
let indirect_args_elt_closure = 0;;
-(* ty_params, src, dst, tydesc, taskptr. *)
+(* dst, taskptr, closure-ptr, ty_params, src, src2=target_task *)
let worst_case_glue_call_args = 5;;
type abi =