JVM_IR: Generate more line numbers for intrinsic comparisons.

Otherwise, if complex expressions such as when expressions are
used in combination with the intrinsics we get incorrect stepping
behavior.

^KT-64341 Fixed
This commit is contained in:
Mads Ager
2023-12-13 12:43:05 +01:00
committed by Space Cloud
parent a441a82357
commit e41a1247e2
23 changed files with 723 additions and 54 deletions
@@ -681,16 +681,16 @@ public final class OptionalUser : java/lang/Object {
LDC ()
LDC ()
INVOKESPECIAL (User, <init>, (Ljava/lang/String;Ljava/lang/String;)V)
LABEL (L4)
LINENUMBER (9)
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, areEqual, (Ljava/lang/Object;Ljava/lang/Object;)Z)
IFNE (L4)
IFNE (L5)
ICONST_1
GOTO (L2)
LABEL (L4)
LABEL (L5)
ICONST_0
LABEL (L2)
IFEQ (L5)
LABEL (L6)
LINENUMBER (9)
IFEQ (L6)
ALOAD (1)
ALOAD (2)
ICONST_0
@@ -699,7 +699,7 @@ public final class OptionalUser : java/lang/Object {
ALOAD (0)
GETFIELD (OptionalUser, user, LUser;)
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeEncoder, encodeSerializableElement, (Lkotlinx/serialization/descriptors/SerialDescriptor;ILkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)V)
LABEL (L5)
LABEL (L6)
RETURN
LABEL (L7)
}