diff options
Diffstat (limited to 'test/passes/flatten_local-cse_all-features.wast')
-rw-r--r-- | test/passes/flatten_local-cse_all-features.wast | 51 |
1 files changed, 26 insertions, 25 deletions
diff --git a/test/passes/flatten_local-cse_all-features.wast b/test/passes/flatten_local-cse_all-features.wast index 1b4dc37c2..05fbcb2ac 100644 --- a/test/passes/flatten_local-cse_all-features.wast +++ b/test/passes/flatten_local-cse_all-features.wast @@ -288,29 +288,30 @@ ) ) -(module - ;; After --flatten, there will be a series of chain copies between multiple - ;; locals, but some of the locals will be nullref type and others funcref type. - ;; We cannot make locals of different types a common subexpression. - (func $subtype-test (result funcref) - (nop) - (loop $label$1 (result nullref) - (ref.null) - ) - ) +;; TODO (GC) +;; (module +;; ;; After --flatten, there will be a series of chain copies between multiple +;; ;; locals, but some of the locals will be funcref type and others anyref +;; ;; type. We cannot make locals of different types a common subexpression. +;; (func $subtype-test (result anyref) +;; (nop) +;; (loop $label$1 (result funcref) +;; (ref.null func) +;; ) +;; ) - (func $test - (local $0 externref) - (drop - (block $label$1 (result nullref) - (local.set $0 - (ref.null) - ) - ;; After --flatten, this will be assigned to a local of nullref type. After - ;; --local-cse, even if we set (ref.null) to local $0 above, this should not - ;; be replaced with $0, because it is of type externref. - (ref.null) - ) - ) - ) -) +;; (func $test +;; (local $0 anyref) +;; (drop +;; (block $label$1 (result funcref) +;; (local.set $0 +;; (ref.null func) +;; ) +;; ;; After --flatten, this will be assigned to a local of funcref type. After +;; ;; --local-cse, even if we set (ref.null) to local $0 above, this should not +;; ;; be replaced with $0, because it is of type anyref. +;; (ref.null func) +;; ) +;; ) +;; ) +;; ) |