[llvm-dev] Function with multi return path?

TONGARI J via llvm-dev llvm-dev at lists.llvm.org
Wed Jun 7 08:13:02 PDT 2017


2017-06-07 22:51 GMT+08:00 David Chisnall <David.Chisnall at cl.cam.ac.uk>:
>
> You could approximate this using the address-of-label extension and
> passing the address of the return basic block to the function then, in the
> abnormal return path, jumping to that.  Doing anything else is likely to be
> very complicated because the live registers at all of the potential landing
> points will need to agree and you’re likely to cost more in code complexity
> than you save.
>

I don't think blockaddress/indirectbr supports non-local jump. Does it?
Or do you mean something else?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20170607/b0d32031/attachment.html>


More information about the llvm-dev mailing list