[llvm] r235223 - [WinEH] Reusing HandlerType entries leads to small CatchHigh values
David Majnemer
david.majnemer at gmail.com
Fri Apr 17 13:12:09 PDT 2015
Author: majnemer
Date: Fri Apr 17 15:12:09 2015
New Revision: 235223
URL: http://llvm.org/viewvc/llvm-project?rev=235223&view=rev
Log:
[WinEH] Reusing HandlerType entries leads to small CatchHigh values
CatchHigh may be smaller than TryHigh if we reuse an outlined catch
handler for two different invokes with different EH states. We have no
evidence which shows that CatchHigh must be greater than TryHigh or
TryLow. We can revisit this if we turn out to be wrong.
Modified:
llvm/trunk/lib/CodeGen/AsmPrinter/Win64Exception.cpp
Modified: llvm/trunk/lib/CodeGen/AsmPrinter/Win64Exception.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/AsmPrinter/Win64Exception.cpp?rev=235223&r1=235222&r2=235223&view=diff
==============================================================================
--- llvm/trunk/lib/CodeGen/AsmPrinter/Win64Exception.cpp (original)
+++ llvm/trunk/lib/CodeGen/AsmPrinter/Win64Exception.cpp Fri Apr 17 15:12:09 2015
@@ -437,7 +437,6 @@ void Win64Exception::emitCXXFrameHandler
std::max(CatchHigh, FuncInfo.CatchHandlerMaxState[HT.Handler]);
assert(TBME.TryLow <= TBME.TryHigh);
- assert(CatchHigh >= TBME.TryHigh);
OS.EmitIntValue(TBME.TryLow, 4); // TryLow
OS.EmitIntValue(TBME.TryHigh, 4); // TryHigh
OS.EmitIntValue(CatchHigh, 4); // CatchHigh
More information about the llvm-commits
mailing list