aboutsummaryrefslogtreecommitdiff
path: root/tests/tests2/79_vla_continue.expect
diff options
context:
space:
mode:
authorPhilip <pipcet@gmail.com>2015-04-28 09:23:29 +0000
committerPhilip <pipcet@gmail.com>2015-04-28 09:23:29 +0000
commit44c330d647c3e1a17e7169f5aa5abb322166fdae (patch)
tree156d320df5b092f03fb22035722eca749cb31f68 /tests/tests2/79_vla_continue.expect
parentd2dd6fdbfb491c87138eb8d7590fbb28f471ec8d (diff)
downloadtinycc-44c330d647c3e1a17e7169f5aa5abb322166fdae.tar.gz
tinycc-44c330d647c3e1a17e7169f5aa5abb322166fdae.tar.bz2
VLA fix: save stack pointer right after modification
This patch disables the optimization of saving stack pointers lazily, which didn't fully take into account that control flow might not reach the stack-saving instructions. I've decided to leave in the extra calls to vla_sp_save() in case anyone wants to restore this optimization. Tests added and enabled. There are two remaining bugs: VLA variables can be modified, and jumping into the scope of a declared VLA will cause a segfault rather than a compiler error. Both of these do not affect correct C code, but should be fixed at some point. Once VLA variables have been made properly immutable, we can share them with the saved stack pointer and save stack and instructions.
Diffstat (limited to 'tests/tests2/79_vla_continue.expect')
-rw-r--r--tests/tests2/79_vla_continue.expect1
1 files changed, 1 insertions, 0 deletions
diff --git a/tests/tests2/79_vla_continue.expect b/tests/tests2/79_vla_continue.expect
index b462a5a..21da4d2 100644
--- a/tests/tests2/79_vla_continue.expect
+++ b/tests/tests2/79_vla_continue.expect
@@ -2,3 +2,4 @@ OK
OK
OK
OK
+OK