[LLVMbugs] [Bug 24185] LICM incorrectly hoists load because Instruction::mayThrow does not correctly handle invokes

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Mon Jul 20 00:20:35 PDT 2015


https://llvm.org/bugs/show_bug.cgi?id=24185

Sanjoy Das <sanjoy at playingwithpointers.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |INVALID

--- Comment #2 from Sanjoy Das <sanjoy at playingwithpointers.com> ---
(In reply to comment #1)
> I think that all `mayThrow` ensures is that the specific instruction doesn't
> immediately unwind.  That `invoke` transfers control to instructions which
> may throw isn't conceptually different from a `br` which does the same, no?

I was under the impression that an invoke does not always unwind to its
landingpad, but may "skip" frames if the catch clause does not match the type
of the thrown exception.  Given that that isn't the case, and invokes always
unwind to their landingpad if an exception is thrown, this isn't a bug.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20150720/34a10440/attachment.html>


More information about the llvm-bugs mailing list