[JS IR] remove hacks from DCE

This commit is contained in:
Roman Artemev
2020-02-28 17:13:23 +03:00
committed by romanart
parent adc022fde8
commit 133f3d359f
@@ -153,15 +153,6 @@ fun usefulDeclarations(roots: Iterable<IrDeclaration>, context: JsIrBackendConte
(it.classifierOrNull as? IrClassSymbol)?.owner?.enqueue()
}
// Special hack for `IntrinsicsJs.kt` support
if (declaration.superTypes.any { it.isSuspendFunctionTypeOrSubtype() }) {
declaration.declarations.forEach {
if (it is IrSimpleFunction && it.name.asString().startsWith("invoke")) {
it.enqueue()
}
}
}
// TODO find out how `doResume` gets removed
if (declaration.symbol == context.ir.symbols.coroutineImpl) {
declaration.declarations.forEach {
@@ -298,16 +289,6 @@ fun usefulDeclarations(roots: Iterable<IrDeclaration>, context: JsIrBackendConte
}
}
// TODO deduplicate
// Special hack for `IntrinsicsJs.kt` support
if (klass.superTypes.any { it.isSuspendFunctionTypeOrSubtype() }) {
ArrayList(klass.declarations).forEach {
if (it is IrSimpleFunction && it.name.asString().startsWith("invoke")) {
it.enqueue()
}
}
}
// TODO find out how `doResume` gets removed
if (klass.symbol == context.ir.symbols.coroutineImpl) {
ArrayList(klass.declarations).forEach {