Remove workarounds for LLVM bug 33220
This commit is contained in:
committed by
SvyatoslavScherbina
parent
b51d029a33
commit
0279cee371
+1
-3
@@ -713,9 +713,7 @@ internal class FunctionGenerationContext(val function: LLVMValueRef,
|
|||||||
|
|
||||||
private val needSlots: Boolean
|
private val needSlots: Boolean
|
||||||
get() {
|
get() {
|
||||||
return slotCount > frameOverlaySlotCount || localAllocs > 0 ||
|
return slotCount > frameOverlaySlotCount || localAllocs > 0
|
||||||
// Prevent empty cleanup on mingw to workaround LLVM bug:
|
|
||||||
context.config.targetManager.target == KonanTarget.MINGW
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun releaseVars() {
|
private fun releaseVars() {
|
||||||
|
|||||||
@@ -170,12 +170,6 @@ void ThrowException(KRef exception) {
|
|||||||
PrintThrowable(exception);
|
PrintThrowable(exception);
|
||||||
RuntimeAssert(false, "Exceptions unsupported");
|
RuntimeAssert(false, "Exceptions unsupported");
|
||||||
#else
|
#else
|
||||||
#if (__MINGW32__ || __MINGW64__)
|
|
||||||
// Workaround for https://bugs.llvm.org/show_bug.cgi?id=33220
|
|
||||||
// This code forces the function to have at least one landingpad:
|
|
||||||
ObjHolder toBeDestructed(exception);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
throw ObjHolder(exception);
|
throw ObjHolder(exception);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user