blob: 2843873d16b1462e6638968da2b0c0c0fe237640 [file]
(lldb) target create <path to executable>
Current executable set to <path to executable>.
(lldb) settings set stop-disassembly-display never
(lldb) command script import <path to lldb script>
(lldb) b main.kt:11
Breakpoint 1: where = lldb_stdlibRelativePathsWithCache.kexe`kfun:#main(){} + <breakpoint offset> at main.kt:11:5, address = <memory address>
(lldb) r
Process <process id> launched: <path to executable>
Process <process id> stopped
* thread #<thread id>, stop reason = breakpoint 1.1
frame #0: <frame pc> lldb_stdlibRelativePathsWithCache.kexe`kfun:#main(){} at main.kt:11:5
8 // Also, this test doesn't check that lldb can display the actual stdlib sources,
9 // because it requires additional configuration to make lldb find those sources.
10 // All these improvements are tracked in KT-83757.
-> 11 Throwable()
^
12
13 // Here we test the synthetic file "[K][Suspend]Functions" -- it is the only file in stdlib that has relative path with one segment.
14 val lambda = {}
(lldb) s
Process <process id> stopped
* thread #<thread id>, stop reason = step in
frame #0: <frame pc> lldb_stdlibRelativePathsWithCache.kexe`kfun:kotlin.Throwable#<init>(_this=kotlin.Throwable){} at Throwable.kt:34:19
(lldb) source info
Lines found in module `lldb_stdlibRelativePathsWithCache.kexe
[<memory address>-<memory address>): kotlin-native/runtime/src/main/kotlin/kotlin/Throwable.kt:34:19
(lldb) b [K][Suspend]Functions:1
Breakpoint 2: 35 locations.
(lldb) c
Process <process id> resuming
Process <process id> stopped
* thread #<thread id>, stop reason = breakpoint 2.1
frame #0: <frame pc> lldb_stdlibRelativePathsWithCache.kexe`kfun:kotlin.Function0#invoke(){}1:0 at [K][Suspend]Functions:1:1
(lldb) source info
Lines found in module `lldb_stdlibRelativePathsWithCache.kexe
[<memory address>-<memory address>): [K][Suspend]Functions:1:1
(lldb) q