[kotlin compiler][update] 1.2.70-dev-83
- Revert "Use local Kotlin jars built from 372e2c5c"
This commit is contained in:
@@ -129,27 +129,25 @@ configurations {
|
||||
}
|
||||
}
|
||||
|
||||
def localKotlinCompilerModule = project.files("libs/kotlin-compiler.jar")
|
||||
|
||||
dependencies {
|
||||
kotlin_compiler_jar localKotlinCompilerModule
|
||||
kotlin_stdlib_jar project.files("libs/kotlin-stdlib.jar")
|
||||
kotlin_reflect_jar project.files("libs/kotlin-reflect.jar")
|
||||
kotlin_script_runtime_jar project.files("libs/kotlin-script-runtime.jar")
|
||||
kotlin_compiler_jar "$kotlinCompilerModule@jar"
|
||||
kotlin_stdlib_jar "$kotlinStdLibModule@jar"
|
||||
kotlin_reflect_jar "$kotlinReflectModule@jar"
|
||||
kotlin_script_runtime_jar "$kotlinScriptRuntimeModule@jar"
|
||||
kotlin_common_stdlib_src kotlinCommonStdlibModule
|
||||
|
||||
compilerCompile "com.google.protobuf:protobuf-java:${protobufVersion}"
|
||||
|
||||
compilerCompile localKotlinCompilerModule
|
||||
compilerCompile kotlinCompilerModule
|
||||
compilerCompile kotlinNativeInterop['llvm'].configuration
|
||||
compilerCompile kotlinNativeInterop['hash'].configuration
|
||||
compilerCompile "org.jetbrains.kotlin:kotlin-native-shared:$konanVersion"
|
||||
|
||||
cli_bcCompile localKotlinCompilerModule
|
||||
cli_bcCompile kotlinCompilerModule
|
||||
cli_bcCompile "org.jetbrains.kotlin:kotlin-native-shared:$konanVersion"
|
||||
cli_bcCompile sourceSets.compiler.output
|
||||
|
||||
bc_frontendCompile localKotlinCompilerModule
|
||||
bc_frontendCompile kotlinCompilerModule
|
||||
|
||||
cli_bc sourceSets.cli_bc.output
|
||||
}
|
||||
|
||||
+1
-1
@@ -362,7 +362,7 @@ internal class KonanSymbols(context: Context, val symbolTable: SymbolTable): Sym
|
||||
override val coroutineSuspendedGetter = symbolTable.referenceSimpleFunction(
|
||||
coroutinesIntrinsicsPackage
|
||||
.getContributedVariables(COROUTINE_SUSPENDED_NAME, NoLookupLocation.FROM_BACKEND)
|
||||
.single().getter!!
|
||||
.filterNot { it.isExpect }.single().getter!!
|
||||
)
|
||||
|
||||
|
||||
|
||||
-51
@@ -138,57 +138,6 @@ class IrFileImpl(entry: SourceManager.FileEntry) : IrFile {
|
||||
|
||||
//-----------------------------------------------------------------------------//
|
||||
|
||||
interface IrSuspensionPoint : IrExpression {
|
||||
var suspensionPointIdParameter: IrVariable
|
||||
var result: IrExpression
|
||||
var resumeResult: IrExpression
|
||||
}
|
||||
|
||||
interface IrSuspendableExpression : IrExpression {
|
||||
var suspensionPointId: IrExpression
|
||||
var result: IrExpression
|
||||
}
|
||||
|
||||
class IrSuspensionPointImpl(startOffset: Int, endOffset: Int, type: IrType,
|
||||
override var suspensionPointIdParameter: IrVariable,
|
||||
override var result: IrExpression,
|
||||
override var resumeResult: IrExpression)
|
||||
: IrExpressionBase(startOffset, endOffset, type), IrSuspensionPoint {
|
||||
|
||||
override fun <R, D> accept(visitor: IrElementVisitor<R, D>, data: D): R =
|
||||
visitor.visitExpression(this, data)
|
||||
|
||||
override fun <D> acceptChildren(visitor: IrElementVisitor<Unit, D>, data: D) {
|
||||
suspensionPointIdParameter.accept(visitor, data)
|
||||
result.accept(visitor, data)
|
||||
resumeResult.accept(visitor, data)
|
||||
}
|
||||
|
||||
override fun <D> transformChildren(transformer: IrElementTransformer<D>, data: D) {
|
||||
suspensionPointIdParameter = suspensionPointIdParameter.transform(transformer, data) as IrVariable
|
||||
result = result.transform(transformer, data)
|
||||
resumeResult = resumeResult.transform(transformer, data)
|
||||
}
|
||||
}
|
||||
|
||||
class IrSuspendableExpressionImpl(startOffset: Int, endOffset: Int, type: IrType,
|
||||
override var suspensionPointId: IrExpression, override var result: IrExpression)
|
||||
: IrExpressionBase(startOffset, endOffset, type), IrSuspendableExpression {
|
||||
|
||||
override fun <R, D> accept(visitor: IrElementVisitor<R, D>, data: D): R =
|
||||
visitor.visitExpression(this, data)
|
||||
|
||||
override fun <D> acceptChildren(visitor: IrElementVisitor<Unit, D>, data: D) {
|
||||
suspensionPointId.accept(visitor, data)
|
||||
result.accept(visitor, data)
|
||||
}
|
||||
|
||||
override fun <D> transformChildren(transformer: IrElementTransformer<D>, data: D) {
|
||||
suspensionPointId = suspensionPointId.transform(transformer, data)
|
||||
result = result.transform(transformer, data)
|
||||
}
|
||||
}
|
||||
|
||||
internal interface IrPrivateFunctionCall : IrCall {
|
||||
val virtualCallee: IrCall?
|
||||
val dfgSymbol: DataFlowIR.FunctionSymbol.Declared
|
||||
|
||||
+11
-1
@@ -146,8 +146,18 @@ private class Inliner(val globalSubstituteMap: MutableMap<DeclarationDescriptor,
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------------//
|
||||
/**
|
||||
* TODO: JVM inliner crashed on attempt inline this function from transform.kt with:
|
||||
* j.l.IllegalStateException: Couldn't obtain compiled function body for
|
||||
* public inline fun <reified T : org.jetbrains.kotlin.ir.IrElement> kotlin.collections.MutableList<T>.transform...
|
||||
*/
|
||||
private inline fun <reified T : IrElement> MutableList<T>.transform(transformation: (T) -> IrElement) {
|
||||
forEachIndexed { i, item ->
|
||||
set(i, transformation(item) as T)
|
||||
}
|
||||
}
|
||||
|
||||
private fun inlineFunction(callee: IrCall, // Call to be substituted.
|
||||
private fun inlineFunction(callee: IrCall, // Call to be substituted.
|
||||
caller: IrFunction): IrReturnableBlockImpl { // Function to substitute.
|
||||
|
||||
val copyFunctionDeclaration = copyIrElement.copy( // Create copy of original function.
|
||||
|
||||
-3
@@ -22,9 +22,6 @@ import org.jetbrains.kotlin.backend.common.ir.createOverriddenDescriptor
|
||||
import org.jetbrains.kotlin.backend.common.lower.*
|
||||
import org.jetbrains.kotlin.backend.konan.Context
|
||||
import org.jetbrains.kotlin.backend.konan.descriptors.synthesizedName
|
||||
import org.jetbrains.kotlin.backend.konan.ir.IrSuspendableExpressionImpl
|
||||
import org.jetbrains.kotlin.backend.konan.ir.IrSuspensionPoint
|
||||
import org.jetbrains.kotlin.backend.konan.ir.IrSuspensionPointImpl
|
||||
import org.jetbrains.kotlin.backend.konan.irasdescriptors.typeWith
|
||||
import org.jetbrains.kotlin.descriptors.*
|
||||
import org.jetbrains.kotlin.descriptors.annotations.Annotations
|
||||
|
||||
-2
@@ -27,8 +27,6 @@ import org.jetbrains.kotlin.backend.konan.correspondingValueType
|
||||
import org.jetbrains.kotlin.backend.konan.descriptors.isInterface
|
||||
import org.jetbrains.kotlin.backend.konan.descriptors.target
|
||||
import org.jetbrains.kotlin.backend.konan.getTypeConversion
|
||||
import org.jetbrains.kotlin.backend.konan.ir.IrSuspendableExpression
|
||||
import org.jetbrains.kotlin.backend.konan.ir.IrSuspensionPoint
|
||||
import org.jetbrains.kotlin.backend.konan.ir.KonanIr
|
||||
import org.jetbrains.kotlin.backend.konan.irasdescriptors.*
|
||||
import org.jetbrains.kotlin.backend.konan.isValueType
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+2
-2
@@ -20,8 +20,8 @@ remoteRoot=konan_tests
|
||||
#kotlinCompilerModule=org.jetbrains.kotlin:kotlin-compiler:1.1-SNAPSHOT
|
||||
# Download artifacts of https://teamcity.jetbrains.com/viewType.html?buildTypeId=Kotlin_120_Compiler
|
||||
testDataVersion=1226829:id
|
||||
kotlinCompilerRepo=https://teamcity.jetbrains.com/guestAuth/app/rest/builds/buildType:(id:Kotlin_dev_CompilerAllPlugins),number:1.2.60-dev-794,tag:kotlin-native,pinned:true/artifacts/content/maven
|
||||
kotlinVersion=1.2.60-dev-794
|
||||
kotlinCompilerRepo=https://teamcity.jetbrains.com/guestAuth/app/rest/builds/buildType:(id:Kotlin_dev_CompilerAllPlugins),number:1.2.70-dev-83,tag:kotlin-native,pinned:true/artifacts/content/maven
|
||||
kotlinVersion=1.2.70-dev-83
|
||||
konanVersion=0.8
|
||||
org.gradle.jvmargs='-Dfile.encoding=UTF-8'
|
||||
|
||||
|
||||
@@ -111,3 +111,14 @@ public actual inline fun <R, T> (suspend R.() -> T).startCoroutineUninterceptedO
|
||||
receiver: R,
|
||||
completion: Continuation<T>
|
||||
): Any? = (this as Function2<R, Continuation<T>, Any?>).invoke(receiver, completion)
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* This value is used as a return value of [suspendCoroutineOrReturn] `block` argument to state that
|
||||
* the execution was suspended and will not return any result immediately.
|
||||
*/
|
||||
@SinceKotlin("1.1")
|
||||
public actual val COROUTINE_SUSPENDED: Any = CoroutineSuspendedMarker
|
||||
|
||||
private object CoroutineSuspendedMarker
|
||||
Reference in New Issue
Block a user