We're updating the issue view to help you get more done. 

Yuasa-style return barrier

Description

Yuasa described a neat mechanism for placing a barrier on returns: hijack a return address with a jump (return) to a trampoline method (remembering the hijacked address). Barrier semantics can be performed from the trampoline before returning to the intended caller frame. The barrier may reestablish itself further down the stack. The nice property of this barrier is that it has no overhead except when the stack unwinds past it. By contrast, a naive return barrier would impose a cost on every return, which would most likely result in an unsustainable performance hit.

References:

Yuasa: http://www.yuasa.kuis.kyoto-u.ac.jp/~yuasa/ilc2002/index.html
Kumar et al: http://dx.doi.org/10.1145/2398857.2384639

Environment

None

Status

Assignee

Steve Blackburn

Reporter

Steve Blackburn

Labels

None

External issue ID

None

Fix versions

Affects versions

git tip

Priority

Low