Merge pull request #7141 from hvitved/ruby/synthesis-realnode-recursion

Ruby: Eliminate unnecessary recursion through `RealNode`
This commit is contained in:
Tom Hvitved
2021-11-17 09:03:30 +01:00
committed by GitHub
4 changed files with 100 additions and 38 deletions

View File

@@ -41,8 +41,8 @@ break_ensure.rb:
#-----| -> do ...
# 3| ... > ...
#-----| raise -> for ... in ...
#-----| true -> break
#-----| raise -> for ... in ...
#-----| false -> if ...
# 3| element
@@ -580,12 +580,12 @@ cfg.html.erb:
# 12| self
#-----| -> call to a
# 12| Pair
#-----| -> call to link_to
# 12| :id
#-----| -> "a"
# 12| Pair
#-----| -> call to link_to
# 12| "a"
#-----| -> Pair
@@ -813,12 +813,12 @@ cfg.rb:
# 23| 1
#-----| -> ... + ...
# 25| 2
#-----| -> { ... }
# 25| call to times
#-----| -> self
# 25| 2
#-----| -> { ... }
# 25| enter { ... }
#-----| -> x
@@ -1493,12 +1493,12 @@ cfg.rb:
# 97| "d"
#-----| -> Pair
# 97| Pair
#-----| -> {...}
# 97| :e
#-----| -> "f"
# 97| Pair
#-----| -> {...}
# 97| "f"
#-----| -> Pair
@@ -1619,12 +1619,12 @@ cfg.rb:
# 110| type
#-----| -> #{...}
# 113| ... if ...
#-----| -> C
# 113| call to puts
#-----| -> ... if ...
# 113| ... if ...
#-----| -> C
# 113| self
#-----| -> "hi"
@@ -1826,9 +1826,6 @@ cfg.rb:
# 134| EmptyModule
#-----| -> ... rescue ...
# 136| ... rescue ...
#-----| -> 1
# 136| ... / ...
#-----| raise -> self
#-----| -> __synth__0
@@ -1836,6 +1833,9 @@ cfg.rb:
# 136| 1
#-----| -> 0
# 136| ... rescue ...
#-----| -> 1
# 136| 0
#-----| -> ... / ...
@@ -2708,12 +2708,12 @@ desugar.rb:
# 18| __synth__2
#-----| -> __synth__3
# 18| ... + ...
#-----| -> ... = ...
# 18| call to baz
#-----| -> 3
# 18| ... + ...
#-----| -> ... = ...
# 18| x
#-----| -> call to baz
@@ -5076,12 +5076,12 @@ raise.rb:
# 155| elem
#-----| -> element
# 155| ... if ...
#-----| -> exit { ... } (normal)
# 155| call to raise
#-----| raise -> exit { ... } (abnormal)
# 155| ... if ...
#-----| -> exit { ... } (normal)
# 155| self
#-----| -> ""