diff options
Diffstat (limited to 'test-suite/tests/cse.test')
-rw-r--r-- | test-suite/tests/cse.test | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/test-suite/tests/cse.test b/test-suite/tests/cse.test index d09dc53db..154cc0614 100644 --- a/test-suite/tests/cse.test +++ b/test-suite/tests/cse.test @@ -266,4 +266,19 @@ (let ((x (car y))) (cons x (car y))) (let (x) (_) ((primcall car (toplevel y))) - (primcall cons (lexical x _) (lexical x _))))) + (primcall cons (lexical x _) (lexical x _)))) + + ;; Dominating expressions only provide predicates when evaluated in + ;; test context. + (pass-if-cse + (let ((t (car x))) + (if (car x) + 'one + 'two)) + ;; Actually this one should reduce in other ways, but this is the + ;; current reduction: + (seq + (primcall car (toplevel x)) + (if (primcall car (toplevel x)) + (const one) + (const two))))) |