[PATCH] Exception handling docs: Clarify how the llvm.eh.* intrinsics are used
Jim Grosbach
grosbach at apple.com
Tue Mar 18 10:51:42 PDT 2014
On Mar 7, 2014, at 4:19 PM, Mark Seaborn <mseaborn at chromium.org> wrote:
> Hi void,
>
> Exception handling docs: Clarify how the llvm.eh.* intrinsics are used
>
> The non-SJLJ and SJLJ intrinsics are generated by the frontend and
> backend respectively.
>
>
> http://llvm-reviews.chandlerc.com/D3010
>
> Files:
> docs/ExceptionHandling.rst
>
> Index: docs/ExceptionHandling.rst
> ===================================================================
> --- docs/ExceptionHandling.rst
> +++ docs/ExceptionHandling.rst
> @@ -327,10 +327,18 @@
> function. This value can be used to compare against the result of
> ``landingpad`` instruction. The single argument is a reference to a type info.
>
> +Uses of this intrinsic are generated by the C++ front-end.
> +
> +SJLJ Intrinsics
> +---------------
> +
> +The ``llvm.eh.sjlj`` intrinsics are used internally within ``llc``. Uses of
> +them are generated by ``llc``'s ``SjLjEHPrepare`` pass.
> +
This isn’t correct phrasing. ‘llc’ is orthogonal to the question here. The intrinsics are introduced by the same pass in the backend when using clang, too.
> .. _llvm.eh.sjlj.setjmp:
>
> ``llvm.eh.sjlj.setjmp``
> ------------------------
> +~~~~~~~~~~~~~~~~~~~~~~~
>
> .. code-block:: llvm
>
> @@ -352,7 +360,7 @@
> .. _llvm.eh.sjlj.longjmp:
>
> ``llvm.eh.sjlj.longjmp``
> -------------------------
> +~~~~~~~~~~~~~~~~~~~~~~~~
>
> .. code-block:: llvm
>
> @@ -365,7 +373,7 @@
> destination address.
>
> ``llvm.eh.sjlj.lsda``
> ----------------------
> +~~~~~~~~~~~~~~~~~~~~~
>
> .. code-block:: llvm
>
> @@ -377,7 +385,7 @@
> function context for use by the runtime.
>
> ``llvm.eh.sjlj.callsite``
> --------------------------
> +~~~~~~~~~~~~~~~~~~~~~~~~~
>
> .. code-block:: llvm
> <D3010.1.patch>_______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
More information about the llvm-commits
mailing list