[LLVMdev] Emit code for 'unreachable'

Vadim Chugunov vadimcn at gmail.com
Tue Apr 15 14:14:38 PDT 2014


I've looked through LLVM codegen code and found that
SelectionDAGBuilder::visitUnreachable() is basically a no-op.  So I don't
see how it could have generated anything...

What would be the right way to go about adding this functionality?    Right
now I am thinking to add 'EmitTargetCodeForUnreachable()' method to
TargetSelectionDAGInfo class, so that targets can emit code for
'unreachable', if they need that.   Does that sound right?

Vadim

On Mon, Apr 14, 2014 at 1:53 PM, Vadim <vadimcn at gmail.com> wrote:

> I am not seeing this happening, at least not for unreachables that
> follow calls to 'noreturn' functions.
>
> On Apr 14, 2014, at 3:48 AM, Anton Korobeynikov <anton at korobeynikov.info>
> wrote:
>
> > Hello
> >
> > x86 backend emits ud2 instruction in this case
> >
> > On Mon, Apr 14, 2014 at 1:46 PM, Vadim Chugunov <vadimcn at gmail.com>
> wrote:
> >> Hi,
> >> Is it somehow possible to have LLVM emit machine code for the
> 'unreachable'
> >> IR instruction, which would assert that it indeed never gets reached?
> >>
> >> Vadim
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140415/84533dfa/attachment.html>


More information about the llvm-dev mailing list