Avoid creating SimpleType instances for default type

This commit is contained in:
Denis Zharkov
2017-05-24 13:54:31 +03:00
parent 8576054788
commit 59f2ba98a6
8 changed files with 95 additions and 81 deletions
+10 -10
View File
@@ -20,16 +20,16 @@ constructor() {
x = 1
}
---------------------
<v0>: * NEW: call(, <init>) -> <v0>
1 <v1>: OR{*, *} NEW: r(1) -> <v1>
1 <v2>: * NEW: r(1) -> <v2>
1 == 1 <v3>: Boolean NEW: call(1 == 1, equals|<v1>, <v2>) -> <v3>
<v0>: * NEW: call(, <init>) -> <v0>
1 <v1>: * NEW: r(1) -> <v1>
1 <v2>: * NEW: r(1) -> <v2>
1 == 1 <v3>: Boolean NEW: call(1 == 1, equals|<v1>, <v2>) -> <v3>
return !<v4>: *
{ return } !<v4>: * COPY
null <v5>: * NEW: r(null) -> <v5>
null!! <v6>: * NEW: magic[NOT_NULL_ASSERTION](null!!|<v5>) -> <v6>
if (1 == 1) { return } else null!! <v7>: * NEW: merge(if (1 == 1) { return } else null!!|!<v4>, <v6>) -> <v7>
1 <v9>: Int NEW: r(1) -> <v9>
{ return } !<v4>: * COPY
null <v5>: * NEW: r(null) -> <v5>
null!! <v6>: * NEW: magic[NOT_NULL_ASSERTION](null!!|<v5>) -> <v6>
if (1 == 1) { return } else null!! <v7>: * NEW: merge(if (1 == 1) { return } else null!!|!<v4>, <v6>) -> <v7>
1 <v9>: Int NEW: r(1) -> <v9>
x = 1 !<v10>: *
{ if (1 == 1) { return } else null!! x = 1 } !<v10>: * COPY
{ if (1 == 1) { return } else null!! x = 1 } !<v10>: * COPY
=====================