summaryrefslogtreecommitdiff
path: root/test/passes/O_all-features.wast
blob: a8723b523655eb658bbb453e428db66768c0093e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
;; Test that we can run GC types through the optimizer
(module
  (type $struct.A (struct i32))

  (func "foo" (param $x (ref null $struct.A))
    ;; get a struct reference
    (drop
      (local.get $x)
    )
    ;; get a struct field value
    ;; (note that since this is a nullable reference, it may trap)
    (drop
      (struct.get $struct.A 0 (local.get $x))
    )
  )
)