Described in a comment on #3098. Worth making a perf test about. Requires adding two runtime calls for ref-ing and deref-ing task pointers.