[Native] Drop IrSerializationUtil file
Most methods from there are unused
This commit is contained in:
+1
-2
@@ -22,7 +22,6 @@ import org.jetbrains.kotlin.backend.konan.llvm.objc.ObjCCodeGenerator
|
|||||||
import org.jetbrains.kotlin.backend.konan.llvm.objc.ObjCDataGenerator
|
import org.jetbrains.kotlin.backend.konan.llvm.objc.ObjCDataGenerator
|
||||||
import org.jetbrains.kotlin.backend.konan.lower.getObjectClassInstanceFunction
|
import org.jetbrains.kotlin.backend.konan.lower.getObjectClassInstanceFunction
|
||||||
import org.jetbrains.kotlin.backend.konan.objcexport.*
|
import org.jetbrains.kotlin.backend.konan.objcexport.*
|
||||||
import org.jetbrains.kotlin.backend.konan.serialization.resolveFakeOverrideMaybeAbstract
|
|
||||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||||
import org.jetbrains.kotlin.descriptors.Modality
|
import org.jetbrains.kotlin.descriptors.Modality
|
||||||
import org.jetbrains.kotlin.incremental.components.NoLookupLocation
|
import org.jetbrains.kotlin.incremental.components.NoLookupLocation
|
||||||
@@ -1535,7 +1534,7 @@ private fun ObjCExportCodeGenerator.itablePlace(irFunction: IrSimpleFunction): C
|
|||||||
assert(irFunction.isOverridable)
|
assert(irFunction.isOverridable)
|
||||||
val irClass = irFunction.parentAsClass
|
val irClass = irFunction.parentAsClass
|
||||||
return if (irClass.isInterface
|
return if (irClass.isInterface
|
||||||
&& (irFunction.isReal || irFunction.resolveFakeOverrideMaybeAbstract().parent != context.irBuiltIns.anyClass.owner)
|
&& (irFunction.isReal || irFunction.resolveFakeOverride(allowAbstract = true)?.parent != context.irBuiltIns.anyClass.owner)
|
||||||
) {
|
) {
|
||||||
context.getLayoutBuilder(irClass).itablePlace(irFunction)
|
context.getLayoutBuilder(irClass).itablePlace(irFunction)
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
+1
-2
@@ -18,7 +18,6 @@ import org.jetbrains.kotlin.backend.konan.descriptors.synthesizedName
|
|||||||
import org.jetbrains.kotlin.backend.konan.ir.*
|
import org.jetbrains.kotlin.backend.konan.ir.*
|
||||||
import org.jetbrains.kotlin.backend.konan.llvm.IntrinsicType
|
import org.jetbrains.kotlin.backend.konan.llvm.IntrinsicType
|
||||||
import org.jetbrains.kotlin.backend.konan.llvm.tryGetIntrinsicType
|
import org.jetbrains.kotlin.backend.konan.llvm.tryGetIntrinsicType
|
||||||
import org.jetbrains.kotlin.backend.konan.serialization.resolveFakeOverrideMaybeAbstract
|
|
||||||
import org.jetbrains.kotlin.descriptors.ClassDescriptor
|
import org.jetbrains.kotlin.descriptors.ClassDescriptor
|
||||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||||
@@ -1062,7 +1061,7 @@ private class InteropTransformer(
|
|||||||
builder.at(expression)
|
builder.at(expression)
|
||||||
val function = expression.symbol.owner
|
val function = expression.symbol.owner
|
||||||
|
|
||||||
if ((function as? IrSimpleFunction)?.resolveFakeOverrideMaybeAbstract()?.symbol
|
if ((function as? IrSimpleFunction)?.resolveFakeOverride(allowAbstract = true)?.symbol
|
||||||
== symbols.interopNativePointedRawPtrGetter) {
|
== symbols.interopNativePointedRawPtrGetter) {
|
||||||
|
|
||||||
// Replace by the intrinsic call to be handled by code generator:
|
// Replace by the intrinsic call to be handled by code generator:
|
||||||
|
|||||||
-55
@@ -1,55 +0,0 @@
|
|||||||
/*
|
|
||||||
* Copyright 2010-2017 JetBrains s.r.o.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.jetbrains.kotlin.backend.konan.serialization
|
|
||||||
|
|
||||||
import org.jetbrains.kotlin.backend.konan.descriptors.resolveFakeOverride
|
|
||||||
import org.jetbrains.kotlin.descriptors.*
|
|
||||||
import org.jetbrains.kotlin.ir.declarations.*
|
|
||||||
import org.jetbrains.kotlin.ir.util.resolveFakeOverride
|
|
||||||
import org.jetbrains.kotlin.resolve.OverridingUtil
|
|
||||||
|
|
||||||
// TODO: move me somewhere
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Implementation of given method.
|
|
||||||
*
|
|
||||||
* TODO: this method is actually a part of resolve and probably duplicates another one
|
|
||||||
*/
|
|
||||||
internal fun IrSimpleFunction.resolveFakeOverrideMaybeAbstract() = this.resolveFakeOverride(allowAbstract = true)!!
|
|
||||||
|
|
||||||
internal fun IrProperty.resolveFakeOverrideMaybeAbstract() =
|
|
||||||
this.getter!!.resolveFakeOverrideMaybeAbstract().correspondingPropertySymbol!!.owner
|
|
||||||
|
|
||||||
internal fun IrField.resolveFakeOverrideMaybeAbstract() =
|
|
||||||
this.correspondingPropertySymbol!!.owner.resolveFakeOverrideMaybeAbstract().backingField
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Implementation of given method.
|
|
||||||
*
|
|
||||||
* TODO: this method is actually a part of resolve and probably duplicates another one
|
|
||||||
*/
|
|
||||||
internal fun <T : CallableMemberDescriptor> T.resolveFakeOverrideMaybeAbstract(): Set<T> {
|
|
||||||
if (this.kind.isReal) {
|
|
||||||
return setOf(this)
|
|
||||||
} else {
|
|
||||||
val overridden = OverridingUtil.getOverriddenDeclarations(this)
|
|
||||||
val filtered = OverridingUtil.filterOutOverridden(overridden)
|
|
||||||
// TODO: is it correct to take first?
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
|
||||||
return filtered as Set<T>
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user