blob: 9b42aad6b4f1ce652818742f694f641dbdbef173 [file] [edit]
;; NOTE: Assertions have been generated by update_lit_checks.py --all-items and should not be edited.
;; RUN: wasm-opt %s -all -S -o - | filecheck %s
(module
;; CHECK: (type $sig1 (func (param i32) (result i32)))
(type $sig1 (func (param i32) (result i32)))
;; Compact Encoding 1: per-item import descriptions
(import "env"
(item $f1 "f1" (func (type $sig1)))
(item $f2 "f2" (func (exact (param i32) (result i32))))
(item $g1 "g1" (global i32))
(item $t1 "t1" (table 1 10 funcref))
(item $m1 "m1" (memory 1 2))
(item "no-id" (func))
)
;; Compact Encoding 2: shared import description
(import "math"
(item $sin "sin")
(item $cos "cos")
(item $tan "tan")
(item "no-id")
(func (param i32) (result i32))
)
;; Same, but with an exact function type.
(import "math"
(item $sinh "sinh")
(item $cosh "cosh")
(item $tanh "tanh")
(item "no-id-2")
(func (exact (param i32) (result i32)))
)
;; Compact Encoding 2: shared global import description
(import "constants"
(item $pi "pi")
(item $e "e")
(item "other")
(global f64)
)
;; CHECK: (type $1 (func))
;; CHECK: (type $2 (func (result i32)))
;; CHECK: (import "env" "m1" (memory $m1 1 2))
;; CHECK: (import "env" "t1" (table $t1 1 10 funcref))
;; CHECK: (import "env" "g1" (global $g1 i32))
;; CHECK: (import "constants" "pi" (global $pi f64))
;; CHECK: (import "constants" "e" (global $e f64))
;; CHECK: (import "constants" "other" (global $gimport$0 f64))
;; CHECK: (import "env" "f1" (func $f1 (type $sig1) (param i32) (result i32)))
;; CHECK: (import "env" "f2" (func $f2 (exact (type $sig1) (param i32) (result i32))))
;; CHECK: (import "env" "no-id" (func $fimport$0 (type $1)))
;; CHECK: (import "math" "sin" (func $sin (type $sig1) (param i32) (result i32)))
;; CHECK: (import "math" "cos" (func $cos (type $sig1) (param i32) (result i32)))
;; CHECK: (import "math" "tan" (func $tan (type $sig1) (param i32) (result i32)))
;; CHECK: (import "math" "no-id" (func $fimport$1 (type $sig1) (param i32) (result i32)))
;; CHECK: (import "math" "sinh" (func $sinh (exact (type $sig1) (param i32) (result i32))))
;; CHECK: (import "math" "cosh" (func $cosh (exact (type $sig1) (param i32) (result i32))))
;; CHECK: (import "math" "tanh" (func $tanh (exact (type $sig1) (param i32) (result i32))))
;; CHECK: (import "math" "no-id-2" (func $fimport$2 (exact (type $sig1) (param i32) (result i32))))
;; CHECK: (func $main (type $2) (result i32)
;; CHECK-NEXT: (call $f1
;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
;; CHECK-NEXT: )
(func $main (result i32)
(call $f1 (i32.const 1))
)
)