Development of Kotlin / Native Intermediate Representation and Optimizations
https://doi.org/10.25205/1818-7900-2020-18-2-15-30
Abstract
Kotlin is a statically typed programming language that supports object-oriented and functional programming. It sup-ports JVM, JS and native platforms via LLVM (Kotlin / Native). The first two targets are backed with well-developed virtual machines that can perform advanced program optimizations at runtime. However, for native platforms, all optimizations must be performed at compile time. Currently Kotlin / Native lacks many optimizations, which is why the performance of the generated code is poor in many cases. This paper describes a way to solve this problem by introducing an additional SSA-based intermediate representation and implementing escape analysis using it. Experimental results have shown that this approach can significantly improve performance.
About the Author
S. S. Bogolepov
Новосибирский государственный университет
Russian Federation
Views:
85