Initial version of RangeContainsLowering, which optimizes calls to

contains() on ClosedRanges.
This commit is contained in:
Mark Punzalan
2020-08-04 23:44:04 -07:00
committed by Alexander Udalov
parent ca541337d1
commit 1c1b1b4b0f
36 changed files with 1194 additions and 57 deletions
@@ -1,5 +1,3 @@
// IGNORE_BACKEND: JVM_IR
// TODO KT-36829 Optimize 'in' expressions in JVM_IR
fun inInt(x: Long): Boolean {
return x in 1..2
}
@@ -17,7 +15,6 @@ fun inDouble(x: Float): Boolean {
}
// 2 I2L
// 3 F2D
// 0 INVOKESPECIAL
// 0 NEW
// 0 rangeTo
@@ -25,3 +22,10 @@ fun inDouble(x: Float): Boolean {
// 0 intRangeContains
// 0 doubleRangeContains
// 0 floatRangeContains
// 0 contains
// JVM_TEMPLATES
// 3 F2D
// JVM_IR_TEMPLATES
// 2 F2D