Add JVM ABI K1/K2 consistency tests

This commit is contained in:
vladislav.grechko
2023-12-26 10:18:19 +00:00
committed by Space Team
parent 5a1fb78fcd
commit 34bac48541
1104 changed files with 88413 additions and 66 deletions
@@ -0,0 +1,19 @@
MODULE main
CLASS Fir2IrClassifierStorage.class
CLASS METADATA
K1
---
K2
classifierStorage
K1
getClassifierStorage()LFir2IrClassifierStorage;
K2
---
K1
getSession()LFirSession;
K2
---
K1
---
K2
session
@@ -1,4 +1,5 @@
// TARGET_BACKEND: JVM
// JVM_ABI_K1_K2_DIFF: KT-63828
class FirSession(val name: String)
@@ -0,0 +1,11 @@
MODULE main
CLASS JKDeclaration.class
CLASS METADATA
K1
getPsi()Ljava/lang/String;
K2
---
K1
---
K2
psi
+1
View File
@@ -1,5 +1,6 @@
// TARGET_BACKEND: JVM_IR
// WITH_STDLIB
// JVM_ABI_K1_K2_DIFF: KT-63828
interface PsiOwner {
var psi: String?
@@ -0,0 +1,9 @@
MODULE main
CLASS ConeClassLikeLookupTagImpl.class
CLASS METADATA
PROPERTY getStatus()Ljava/lang/String;
Property: class.metadata.property.setterValueParameter
K1
<set-?>: kotlin/String
K2
value: kotlin/String
+1
View File
@@ -1,4 +1,5 @@
// TARGET_BACKEND: JVM
// JVM_ABI_K1_K2_DIFF: KT-63984
abstract class ConeClassLikeLookupTag {
abstract val status: String
+9
View File
@@ -0,0 +1,9 @@
MODULE main
CLASS TestKt$inOrder$1.class
CLASS METADATA
FUNCTION verify(Ljava/lang/Object;)Ljava/lang/Object;
Property: class.metadata.function.typeParameters
K1
<T#0 /* T */>
K2
<T#0 /* T */ : kotlin/Any?>
+1
View File
@@ -2,6 +2,7 @@
// TARGET_BACKEND: JVM
// WITH_STDLIB
// IGNORE_INLINER: IR
// JVM_ABI_K1_K2_DIFF: KT-63855
// FILE: InOrder.java
@@ -0,0 +1,14 @@
MODULE lib
CLASS NameHighlighter.class
CLASS METADATA
PROPERTY getNamesHighlightingEnabled()Z
Property: class.metadata.property.setterModifiers
K1
public final /* non-default */
K2
public final
Property: class.metadata.property.setterValueParameter
K1
<set-?>: kotlin/Boolean
K2
---
+2
View File
@@ -1,4 +1,6 @@
// TARGET_BACKEND: JVM
// JVM_ABI_K1_K2_DIFF: KT-63853, KT-63854
// MODULE: lib
// FILE: NameHighlighter.kt
@@ -0,0 +1,13 @@
MODULE main
CLASS Retry$withExponentialBackoff$1.class
Property: class.signature
K1
Lkotlin/jvm/internal/FunctionReferenceImpl;Lkotlin/jvm/functions/Function1<Lkotlin/coroutines/Continuation<-TW;>;Ljava/lang/Object;>;Lkotlin/coroutines/jvm/internal/SuspendFunction;
K2
Lkotlin/jvm/internal/FunctionReferenceImpl;Lkotlin/jvm/functions/Function1<Lkotlin/coroutines/Continuation<-TB;>;Ljava/lang/Object;>;Lkotlin/coroutines/jvm/internal/SuspendFunction;
METHOD invoke(Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
Property: method.signature
K1
(Lkotlin/coroutines/Continuation<-TW;>;)Ljava/lang/Object;
K2
(Lkotlin/coroutines/Continuation<-TB;>;)Ljava/lang/Object;
@@ -3,6 +3,8 @@
// TARGET_BACKEND: JVM_IR
// ISSUE: KT-58008
// JVM_ABI_K1_K2_DIFF: KT-62793
import kotlin.coroutines.*
fun <T> runBlocking(c: suspend () -> T): T {
@@ -0,0 +1,13 @@
MODULE main
CLASS Owner$withExponentialBackoff$1.class
Property: class.signature
K1
Lkotlin/jvm/internal/FunctionReferenceImpl;Lkotlin/jvm/functions/Function1<Lkotlin/coroutines/Continuation<-TW;>;Ljava/lang/Object;>;Lkotlin/coroutines/jvm/internal/SuspendFunction;
K2
Lkotlin/jvm/internal/FunctionReferenceImpl;Lkotlin/jvm/functions/Function1<Lkotlin/coroutines/Continuation<-TB;>;Ljava/lang/Object;>;Lkotlin/coroutines/jvm/internal/SuspendFunction;
METHOD invoke(Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
Property: method.signature
K1
(Lkotlin/coroutines/Continuation<-TW;>;)Ljava/lang/Object;
K2
(Lkotlin/coroutines/Continuation<-TB;>;)Ljava/lang/Object;
@@ -3,6 +3,8 @@
// TARGET_BACKEND: JVM_IR
// ISSUE: KT-58008
// JVM_ABI_K1_K2_DIFF: KT-62793
import kotlin.coroutines.*
fun <T> runBlocking(c: suspend () -> T): T {
@@ -0,0 +1,9 @@
MODULE m1
CLASS O.class
CLASS METADATA
PROPERTY getProp()Ljava/lang/String;
Property: class.metadata.property.setterValueParameter
K1
<set-?>: kotlin/String
K2
value: kotlin/String
@@ -1,4 +1,5 @@
// TARGET_BACKEND: JVM_IR
// JVM_ABI_K1_K2_DIFF: KT-63984
// MODULE: m1
// FILE: f1.kt
@@ -0,0 +1,17 @@
MODULE main
CLASS StarProjectionLambdaNullReturnKt$foo$1.class
Property: class.signature
K1
NULL
K2
Lkotlin/jvm/internal/Lambda;Lkotlin/jvm/functions/Function0<Ljava/lang/Object;>;
K1
invoke()Ljava/lang/Void; [public, final]
K2
---
METHOD invoke()Ljava/lang/Object;
Property: method.access
K1
1000001000001 [public, bridge, synthetic]
K2
10001 [public, final]
@@ -1,5 +1,6 @@
// ISSUE: KT-64261
// DUMP_IR
// JVM_ABI_K1_K2_DIFF: KT-62855, KT-62550
interface I<T : Any> {
fun foo(func: () -> T?)
}