FIR CFG: remove ordering from control flow through in-place lambdas

Old graph:

  arg -> lambda enter -> ... -> lambda exit -> lambda enter -> ... ->
   -> lambda exit -> call

New graph:

  arg -+-> lambda enter -> ... -> lambda exit -+-> call
       \-> lambda enter -> ... -> lambda exit -/
This commit is contained in:
pyos
2022-11-23 10:10:16 +01:00
committed by teamcity
parent 5dce772f0b
commit c4c05f5248
41 changed files with 515 additions and 555 deletions
@@ -216,10 +216,11 @@ digraph lambdaInWhenBranch_kt {
45 -> {46};
46 -> {47};
47 -> {48};
48 -> {82};
48 -> {49} [color=red];
48 -> {82 50};
48 -> {49} [style=dotted];
48 -> {82} [style=dashed];
49 -> {50};
49 -> {53} [color=red];
49 -> {50} [color=green];
50 -> {51};
51 -> {52};
52 -> {53};
@@ -255,7 +256,6 @@ digraph lambdaInWhenBranch_kt {
83 -> {84};
84 -> {85};
85 -> {86};
86 -> {53} [color=red];
86 -> {49} [color=green];
86 -> {49};
}