Skip to content

Commit

Permalink
disable gcframe rooting on return path of jlcall wrapper
Browse files Browse the repository at this point in the history
  • Loading branch information
vtjnash committed Jun 30, 2016
1 parent c4be174 commit d2646e1
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion src/codegen.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3945,7 +3945,7 @@ static Function *gen_jlcall_wrapper(jl_lambda_info_t *lam, Function *f, bool sre
bool retboxed;
(void)julia_type_to_llvm(jlretty, &retboxed);
if (sret) { assert(!retboxed); }
jl_cgval_t retval = sret ? mark_julia_slot(result, jlretty, tbaa_stack) : mark_julia_type(call, retboxed, jlretty, &ctx);
jl_cgval_t retval = sret ? mark_julia_slot(result, jlretty, tbaa_stack) : mark_julia_type(call, retboxed, jlretty, &ctx, /*needsroot*/false);
builder.CreateRet(boxed(retval, &ctx, false)); // no gcroot needed since this on the return path

return w;
Expand Down

0 comments on commit d2646e1

Please sign in to comment.