summaryrefslogtreecommitdiff
path: root/test/passes/O_all-features_ignore-implicit-traps.wast
blob: 028a1d691bfceb412e7532574f6ac9f71a4b3acb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
;; 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, but we
    ;; are ignoring implicit traps, so it has no side effects)
    (drop
      (struct.get $struct.A 0 (local.get $x))
    )
  )
)