Do not mark fake inliner variables as alive
This prevents them from spilling. #KT-29317 Fixed
This commit is contained in:
committed by
Stanislav Erokhin
parent
7e4e1b9a4d
commit
e8c52e0a8f
+25
@@ -0,0 +1,25 @@
|
||||
// IGNORE_BACKEND: JVM_IR
|
||||
|
||||
interface ApplicationCall
|
||||
|
||||
interface AuthenticationService {
|
||||
suspend fun execute(request: Any): Any
|
||||
}
|
||||
|
||||
suspend fun dummy() = Any()
|
||||
|
||||
suspend inline fun <reified Type : Any> ApplicationCall.receiveJSON(): Type {
|
||||
return dummy() as Type
|
||||
}
|
||||
|
||||
suspend inline fun ApplicationCall.respond(message: Any) {
|
||||
}
|
||||
|
||||
suspend fun ApplicationCall.test(authenticationService: AuthenticationService) {
|
||||
respond(authenticationService.execute(receiveJSON()))
|
||||
}
|
||||
|
||||
// 2 ISTORE 5
|
||||
// 0 ILOAD 5
|
||||
// 1 \$i\$f\$receiveJSON I .* 5
|
||||
// 1 \$i\$f\$respond I .* 5
|
||||
Reference in New Issue
Block a user