summaryrefslogtreecommitdiffstats
path: root/arith.h
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2020-01-09 15:45:27 -0800
committerKaz Kylheku <kaz@kylheku.com>2020-01-09 15:45:27 -0800
commit7d5f0b7e3613f8e8be84ac0d541a7bbcb4782f1d (patch)
treeb76f4aa9c360724a432b5ebe6ced2dcd11e49858 /arith.h
parentfdf67dae2092e0d6fe460e16a939080493e00a3b (diff)
downloadtxr-7d5f0b7e3613f8e8be84ac0d541a7bbcb4782f1d.tar.gz
txr-7d5f0b7e3613f8e8be84ac0d541a7bbcb4782f1d.tar.bz2
txr-7d5f0b7e3613f8e8be84ac0d541a7bbcb4782f1d.zip
gc: obtain stack top using alloca.
This trick gets rid of the hack for aarch64. If we call alloca, the pointer we get should be below all frame information. Even if for the given target, the compiler-generated code happens to be saving callee-saved registers below the declared variables, any pointer we get from alloca must be below all of that still. * gc.c (STACK_TOP_EXTRA_WORDS): Macro removed. (mark): Don't subtract STACK_TOP_EXTRA_WORDS from gc_stack_top; take the top as-is. (gc): Don't allocate the machine context as an automatic variable; obtain the storage for it from alloca. That then also serves as the stack top.
Diffstat (limited to 'arith.h')
0 files changed, 0 insertions, 0 deletions