[Native] Add K2 version of LLDB tests

This commit is contained in:
Ivan Kylchik
2023-12-27 17:52:15 +01:00
committed by Space Team
parent 2ded62c53e
commit 69c83698fb
22 changed files with 205 additions and 24 deletions
@@ -1,5 +1,5 @@
// KIND: STANDALONE_LLDB
// FIR_IDENTICAL
fun main(args: Array<String>) {
val xs = intArrayOf(3, 5, 8)
return
+1 -1
View File
@@ -1,5 +1,5 @@
// KIND: STANDALONE_LLDB
// FIR_IDENTICAL
fun main(args: Array<String>) {
val xs = IntArray(3)
xs[0] = 1
@@ -1,5 +1,5 @@
// KIND: STANDALONE_LLDB
// FIR_IDENTICAL
fun main() {
try {
throw Exception("message 1")
+1 -1
View File
@@ -1,5 +1,5 @@
// KIND: STANDALONE_LLDB
// FIR_IDENTICAL
fun main(args: Array<String>) {
val point = Point(1, 2)
val person = Person()
+1 -1
View File
@@ -1,5 +1,5 @@
// KIND: STANDALONE_LLDB
// FIR_IDENTICAL
fun main(args: Array<String>) {
val a = "string literal"
val b = buildString {
@@ -1,5 +1,5 @@
// KIND: STANDALONE_LLDB
// FIR_IDENTICAL
fun main(args: Array<String>) {
var a: Byte = 1
var b: Int = 2
+1 -1
View File
@@ -1,5 +1,5 @@
// KIND: STANDALONE_LLDB
// FIR_IDENTICAL
fun main(args: Array<String>) {
var x = 1
var y = 2
+1 -1
View File
@@ -1,6 +1,6 @@
// KIND: STANDALONE_LLDB
// FREE_COMPILER_ARGS: -Xg-generate-debug-trampoline=enable
// FIR_IDENTICAL
// FILE: kt33055.kt
fun question(subject: String, names: Array<String> = emptyArray()): String {
return buildString { // breakpoint here
+1 -1
View File
@@ -1,6 +1,6 @@
// KIND: STANDALONE_LLDB
// FREE_COMPILER_ARGS: -Xg-generate-debug-trampoline=enable
// FIR_IDENTICAL
// FILE: kt33364.kt
fun main() {
val param = 3
+1 -1
View File
@@ -1,5 +1,5 @@
// KIND: STANDALONE_LLDB
// FIR_IDENTICAL
// FILE: kt42208-1.kt
fun main() {
foo()()
@@ -1,5 +1,8 @@
// KIND: STANDALONE_LLDB
// FREE_COMPILER_ARGS: -XXLanguage:+UnitConversionsOnArbitraryExpressions
// IGNORE_BACKEND_K2: NATIVE
// FIR_IDENTICAL
// Not really `FIR_IDENTICAL`, because we ignore thois test for FIR, but with this directive presented we don't need to create separate `fir.txt` file for dump.
// FILE: kt42208-1.kt
fun main() {
@@ -1,13 +1,13 @@
> b kt42208-2.kt:14
> b kt42208-2.kt:17
> r
> bt
* thread #1, [..] stop reason = breakpoint 1.1
* frame #0: [..]`kfun:[..]main$lambda$0[..] at kt42208-2.kt:14:5
frame #1: [..]`kfun:$main$lambda$0$FUNCTION_REFERENCE$0.[..]invoke[..](_this=[..])[..] at kt42208-2.kt:13:20
frame #2: [..]`kfun:$main$lambda$0$FUNCTION_REFERENCE$0.[..]$<bridge-BNN>invoke(_this=[..]){}kotlin.Boolean[..] at kt42208-2.kt:13:20
* frame #0: [..]`kfun:[..]main$lambda$0[..] at kt42208-2.kt:17:5
frame #1: [..]`kfun:$main$lambda$0$FUNCTION_REFERENCE$0.[..]invoke[..](_this=[..])[..] at kt42208-2.kt:16:20
frame #2: [..]`kfun:$main$lambda$0$FUNCTION_REFERENCE$0.[..]$<bridge-BNN>invoke(_this=[..]){}kotlin.Boolean[..] at kt42208-2.kt:16:20
frame #3: [..]`kfun:kotlin.Function0#invoke(){}1:0-trampoline at [K][Suspend]Functions:1:1
frame #4: [..]`kfun:#bar(v=[..]){} at kt42208-3.kt:18:5
frame #5: [..]`kfun:#main(){} at kt42208-1.kt:7:5
frame #4: [..]`kfun:#bar(v=[..]){} at kt42208-3.kt:21:5
frame #5: [..]`kfun:#main(){} at kt42208-1.kt:10:5
frame #6: [..]`Konan_start(args=[..]) at [..]
> c
> q
+1 -1
View File
@@ -1,5 +1,5 @@
// KIND: STANDALONE_LLDB
// FIR_IDENTICAL
// FILE: kt42208-1.kt
fun main() {
val a = foo()
+1 -1
View File
@@ -1,5 +1,5 @@
// KIND: STANDALONE_LLDB
// FIR_IDENTICAL
// FILE: kt47198.kt
fun foo(a:Int) = print("a: $a")
+1 -1
View File
@@ -1,5 +1,5 @@
// KIND: STANDALONE_LLDB
// FIR_IDENTICAL
// FILE: kt47198.kt
fun foo(a:Int){
print("a: ${'$'}a")
+24
View File
@@ -0,0 +1,24 @@
> b call_bar
> r
> s
> s
> bt
* thread #1, [..] stop reason = step in
* frame #0: [..]`kfun:Foo#bar(){}kotlin.String-trampoline at kt61131-2.kt:20:5
frame #1: [..]`kfun:#call_bar(foo=[..]){} at kt61131-1.kt:9:18
frame #2: [..]`kfun:#main(){} at kt61131-1.kt:15:5
frame #3: [..]`Konan_start(args=[..]) at [..]
frame #4: [..]
frame #5: [..]
> s
> bt
* thread #1, [..] stop reason = step in
* frame #0: [..]`kfun:FooImpl#bar(_this=[..]]){}kotlin.String at kt61131-1.kt:5:5
frame #1: [..]`kfun:Foo#bar(){}kotlin.String-trampoline at kt61131-2.kt:20:5
frame #2: [..]`kfun:#call_bar(foo=[..]){} at kt61131-1.kt:9:18
frame #3: [..]`kfun:#main(){} at kt61131-1.kt:15:5
frame #4: [..]`Konan_start(args=[..]) at [..]
frame #5: [..]
frame #6: [..]
> q
@@ -1,5 +1,5 @@
// KIND: STANDALONE_LLDB
// FIR_IDENTICAL
// FILE: main.kt
fun bar(x: Int): Int {
val res = foo(