std::sort must be called with a strict weak ordering.

Found by a debug enabled stl.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@237906 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Manuel Klimek 2015-05-21 15:38:25 +00:00
parent 86425451e5
commit 2267264ceb

View File

@ -731,10 +731,10 @@ bool WinEHPrepare::prepareExceptionHandlers(
// to a block within another outlined catch handler that would otherwise
// be unreachable, we need to outline the nested landing pad before we
// outline the landing pad which encloses it.
if (!isAsynchronousEHPersonality(Personality))
std::sort(LPads.begin(), LPads.end(),
[this](LandingPadInst* const &L, LandingPadInst* const &R) {
return DT->dominates(R->getParent(), L->getParent());
if (!isAsynchronousEHPersonality(Personality))
std::sort(LPads.begin(), LPads.end(),
[this](LandingPadInst *const &L, LandingPadInst *const &R) {
return DT->properlyDominates(R->getParent(), L->getParent());
});
// This container stores the llvm.eh.recover and IndirectBr instructions