diff options
Diffstat (limited to 'test-suite/standalone/sassy/tests/prims/begin5.scm')
-rw-r--r-- | test-suite/standalone/sassy/tests/prims/begin5.scm | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/test-suite/standalone/sassy/tests/prims/begin5.scm b/test-suite/standalone/sassy/tests/prims/begin5.scm new file mode 100644 index 000000000..72a8c0922 --- /dev/null +++ b/test-suite/standalone/sassy/tests/prims/begin5.scm @@ -0,0 +1,18 @@ +(text + (begin (nop) + (inv (alt z! + l! + a!)) + (nop))) + +;The arguments to a begin always take as their win and lose the +;following arg in the sequence, except for the last, which takes +;begin's win and lose. Since the assertions only generate jcc's, they +;would all be jcc's to the last (nop). But it happens that the last +;(nop) is the instruction following the a! assertion. But a jmp to the +;next instruction is really doing nothing at all, so it may be +;eliminated. But then the l! assertion is in the same circumstance, +;and so on. Hence: + +; 00000000 90 nop +; 00000001 90 nop |