summary refs log tree commit diff
path: root/alias.c
diff options
context:
space:
mode:
authorQuentin Carbonneaux <quentin@c9x.me>2022-12-12 22:36:34 +0100
committerQuentin Carbonneaux <quentin@c9x.me>2022-12-12 22:36:34 +0100
commitc5ea06c1360a7bb93cf1a5303f804855a38a82ef (patch)
tree5529d66c7bb08c4e16c3ec09fba83dd1a0c4429b /alias.c
parentc0f25aeae3ef5d5f4b6bc5678f8d8ce40597d673 (diff)
downloadroux-c5ea06c1360a7bb93cf1a5303f804855a38a82ef.tar.gz
treat retc as non-escaping
We may well treat all rets as
non-escaping since stack slots
are destroyed upon funcion
return.
Diffstat (limited to 'alias.c')
-rw-r--r--alias.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/alias.c b/alias.c
index 6f082bc..50e659a 100644
--- a/alias.c
+++ b/alias.c
@@ -192,6 +192,7 @@ fillalias(Fn *fn)
 				}
 			}
 		}
-		esc(b->jmp.arg, fn);
+		if (b->jmp.type != Jretc)
+			esc(b->jmp.arg, fn);
 	}
 }